Container databases not being deleted

Asked by Michael Santos on 2013-08-30

Hi, i seem to have found a "problem". When we create a container, swift will create a database for that container, and replicate it accordingly. But when i delete the container, the database for that container remains in the system. Even after i delete the account that created that container. Is this normal? Or i'm i missing some service configuration? Thank you for you're help!


Question information

English Edit question
OpenStack Object Storage (swift) Edit question
No assignee Edit question
Last query:
Last reply:
Samuel Merritt (torgomatic) said : #1

When you delete a container, it just flags it as deleted at that particular time. This way the deletion can get replicated too.

There's a time period after which it'll get reclaimed, but only when there's activity in the same partition. If you've got an active cluster, it'll get cleaned up eventually. OTOH, if nobody's using the cluster, then the db file will hang out forever, but if nobody's using it, who cares? ;)

Thank you for your answer! Just to be sure, the only way it will ever be deleted, is if i need that "space"?

And another question :P what are the odds of it being "cleaned up"? Is it not possible to fill the system with old container databases? I mean, for an old database to be replaced, i assume there would have to be a collision when hashing the url, correct?

Samuel Merritt (torgomatic) said : #4

Well, I think I was wrong about needing activity in the same partition; that's only for objects. Sorry about that.

Looks like after $reclaim_age seconds, the next pass of the container replicator will clean things up.

Can you help with this problem?

Provide an answer of your own, or ask Michael Santos for more information if necessary.

To post a message you must log in.