apache / apache/cloudstack

Bucket usage continues even after the bucket is deleted.

Open
#13,057 7 comments 0 reactions 0 assignees View on GitHub
component:object-storage no-issue-activity
Dominant language
Java
Stars
3.1k
Forks
1.4k
Avg merge
6d 19h
Merged PRs (30d)
32

Description

### problem

Good afternoon everyone,

I've identified a potential bug in the CloudStack usage section. After deleting a bucket, I noticed that the `cloudstack.listUsageRecords` API call was still reporting usage of the deleted buckets for the accounts.

I started exploring the code and how this bucket usage system works, and I found that it all depends on the `bucket_statistics` table.

From what I understand and replicate in my tests, when a bucket is removed, the `bucket_statistics` table retains the used size value. In my understanding, the correct approach would be to reset this value or delete the record for that bucket in this table. I corrected this in the accounts by resetting the size value, thus stopping the generation of new records in the `cloud_usage` table.

If you have any further questions, feel free to ask and I'll provide more details.

Thank you.

### versions

Cloudstack 4.22

### The steps to reproduce the bug

1. Create a bucket
2. Add data to the bucket
3. Wait a few days for cloud_usage records to be generated
4. Remove the data from the bucket
5. Then remove the bucket from Cloudstack
6. Verify in the listUsageRecords API calls that usage records are still being generated for the bucket.

### What to do about it?

When removing a bucket, the bucket_statistics table retains the used size value; in my understanding, the correct approach would be to reset this value or delete the record for that bucket in this table.

Contributor guide

Open the contributing guide

Research direction

Start by tracing bucket deletion and the bucket_statistics record, then follow how cloudstack.listUsageRecords reads that retained size into cloud_usage records. Reproduce the listed sequence on CloudStack 4.22 and verify that deleting a bucket no longer generates usage records for it.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
api, cloud, databases
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
66/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.