Question

Say I create a container on swift storage node with following command.

curl -v -X PUT -H 'X-Auth-Token: AUTH_tkf0685272b8f64c80a97727141a64a7ca' http://www.tempwebsite.com:8080/v1/AUTH_test/tempcontainer

If I check in my file system where swift nodes are created, one new container gets created under containers folder.

I am also able to see this container now through GET call as below:

curl -v -H 'X-Auth-Token: AUTH_tkf0685272b8f64c80a97727141a64a7ca' http://www.tempwebsite.com:8080/v1/AUTH_test/

Now when I delete this container through DELETE call as follows

curl -v -X DELETE -H "X-Auth-Token: AUTH_tkf0685272b8f64c80a97727141a64a7ca" http://www.tempwebsite.com:8080/v1/AUTH_test/tempcontainer

it appears to be deleted because when I make a GET call after deleting, container is not there and I get 404 not found repsonse

However, the container which is there in file-system still remains as it is also in case of objects data files get converted into tombstone files but not these tombstone files are also not deleted. (Swift documentation says that they will be removed eventually by reapers, however please note that I have waited for more than 4 days but objects and containers are still there.)

Please suggest.

Was it helpful?

Solution

The tombstone is for ensure all replicas were empty by the .ts. And the reclaim_age can be set in configuration file e.g. https://github.com/openstack/swift/blob/master/etc/container-server.conf-sample#L106 . The default value is 7 days.

Hope it helps.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top