Page MenuHomePhabricator

[openstack object storage] deleted files still occupying space
Closed, ResolvedPublic

Description

the object storage container harborstorage in the diagram below is empty (all files and folders have been deleted), but the space they occupy have not been freed (size is still listed as 8GB even when the container is empty)

Screenshot 2024-10-07 at 11.38.14 PM.png (1×2 px, 198 KB)

After a brief discussion and debugging, David suggested that this might be because the garbage collection process in radosgw might not be working as expected

Event Timeline

This might be due to the rados gw nodes (cloudcontrols) running ceph v16, while the manager nodes (cloudcephmon) run ceph v15, so the garbar collecting process (that runs on the mrg) fails to list the newer buckets, similar upstream bug:

https://github.com/rook/rook/issues/10538#issuecomment-1397793407

For reference, some commands on how to get info from ceph and openstack:

# on the openstack side, you have containers and objects
root@cloudcontrol2005-dev:~# OS_PROJECT_ID=testlabs openstack container show harbor_tests
...
root@cloudcontrol2005-dev:~# OS_PROJECT_ID=testlabs openstack object list harbor_tests
# Note that this runs also on the cloudcontrol, as the cloudcephmons have the old version and will fail to get info of new buckets
# for radosgw-admin, we have buckets (matches the containers) and the objects (matches the objects in openstack)
root@cloudcontrol1005:~# radosgw-admin bucket list --bucket toolsbeta/harborstorage
... long json


root@cloudcontrol1005:~# radosgw-admin bucket stats  | jq '.[] | select(.bucket == "harborstorage")'
... another json
fnegri triaged this task as High priority.Oct 30 2024, 4:09 PM
fnegri changed the status of subtask T306820: [ceph] Upgrade to v16 from Open to In Progress.Jul 15 2025, 1:42 PM
dcaro claimed this task.

The space has been freed :), the radosgw-admin command work on the mons again, so this can be closed.

image.png (953×1 px, 191 KB)