Ask Your Question
1

Swift Object Expirer never deletes items only sends 404

asked 2013-10-20 20:11:10 -0500

LIV2 gravatar image

updated 2013-12-04 23:17:24 -0500

I'm running Grizzly with Swift and Keystone, I've been trying to get object-expiry to work but whatever I do it never deletes any of the items I give an expiry to, they just stay in the container and 404 if I try to retrieve them after their expiry date.

Here's the config

[DEFAULT]

[object-expirer]
auto_create_account_prefix = .

[pipeline:main]
pipeline = recon catch_errors cache proxy-server

[app:proxy-server]
use = egg:swift#proxy

[filter:recon]
use = egg:swift#recon
recon_cache_path = /var/cache/swift


[filter:cache]
use = egg:swift#memcache
memcache_servers = 127.0.0.1:11211

[filter:catch_errors]
use = egg:swift#catch_errors

Logs:

Oct 21 03:45:23 proxy01 object-expirer Pass beginning; 0 possible containers; 0 possible objects
Oct 21 03:45:24 proxy01 object-expirer Pass completed in 0s; 0 objects expired

I've now managed to get it to recognize that there are objects that should be deleted, but it doesn't seem to actually do it

    object-expirer Run begin
swift - - 05/Dec/2013/04/32/35 HEAD /v1/.expiring_objects HTTP/1.0 204 - Swift%20Object%20Expirer - - - - txa11124b9ca47482bb2e1d9e3588e0b6a - 0.0052 -
object-expirer Pass beginning; 1 possible containers; 1 possible objects
swift - - 05/Dec/2013/04/32/35 GET /v1/.expiring_objects%3Fformat%3Djson%26marker%3D%26end_marker%3D HTTP/1.0 200 - Swift%20Object%20Expirer - - 48 - tx76a4e5e78ed64dac83c352c18eedc35b - 0.0052 -
swift - - 05/Dec/2013/04/32/35 GET /v1/.expiring_objects/1377129600%3Fformat%3Djson%26marker%3D%26end_marker%3D HTTP/1.0 404 - Swift%20Object%20Expirer - - 52 - tx5aeb5c9b31344cbb9f6d890c11070767 - 0.0050 -
swift - - 05/Dec/2013/04/32/35 DELETE /v1/.expiring_objects/1377129600 HTTP/1.0 404 - Swift%20Object%20Expirer - - 52 - tx8fadcf449f9d454591b70e56ad0a8411 - 0.0034 -
swift - - 05/Dec/2013/04/32/35 GET /v1/.expiring_objects%3Fformat%3Djson%26marker%3D1377129600%26end_marker%3D HTTP/1.0 200 - Swift%20Object%20Expirer - - 2 - tx51a0d50a138b488a813ed9d83a368fbc - 0.0051 -
object-expirer Run end (txn: tx51a0d50a138b488a813ed9d83a368fbc)
object-expirer Pass completed in 0s; 0 objects expired
object-expirer Exited
edit retag flag offensive close merge delete

1 answer

Sort by ยป oldest newest most voted
0

answered 2013-11-13 11:55:55 -0500

clayg gravatar image

i think the top level expirer account won't get created until you run the container updater.

so make sure those have run/are running.

edit flag offensive delete link more

Comments

I've got that configured and running, how can I check if the account has indeed been created?

LIV2 gravatar imageLIV2 ( 2013-12-04 18:46:59 -0500 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Get to know Ask OpenStack

Resources for moderators

Question Tools

1 follower

Stats

Asked: 2013-10-20 20:11:10 -0500

Seen: 540 times

Last updated: Dec 04 '13