openstackgerrit | Matthew Oliver proposed openstack/swift master: Relinker: Log the number of child workers started https://review.opendev.org/c/openstack/swift/+/787908 | 00:15 |
---|---|---|
openstackgerrit | Matthew Oliver proposed openstack/swift master: Relinker: Log the number of child workers started https://review.opendev.org/c/openstack/swift/+/787908 | 00:30 |
*** evrardjp has quit IRC | 02:33 | |
*** evrardjp has joined #openstack-swift | 02:33 | |
openstackgerrit | Matthew Oliver proposed openstack/swift master: relinker: Add /recon/relinker endpoint and drop progress stats https://review.opendev.org/c/openstack/swift/+/779655 | 03:24 |
*** m75abrams has joined #openstack-swift | 04:01 | |
openstackgerrit | Matthew Oliver proposed openstack/swift master: relinker: Add /recon/relinker endpoint and drop progress stats https://review.opendev.org/c/openstack/swift/+/779655 | 04:25 |
*** DHE has quit IRC | 04:38 | |
*** DHE has joined #openstack-swift | 04:38 | |
*** timburke has joined #openstack-swift | 05:06 | |
*** ChanServ sets mode: +v timburke | 05:06 | |
*** m75abrams has quit IRC | 05:09 | |
*** m75abrams has joined #openstack-swift | 05:18 | |
openstackgerrit | Merged openstack/swift master: auditors: Log and dump recon *before* sleeping https://review.opendev.org/c/openstack/swift/+/787868 | 05:50 |
*** timburke has quit IRC | 06:32 | |
*** rpittau|afk is now known as rpittau | 07:12 | |
*** openstack has joined #openstack-swift | 07:52 | |
*** ChanServ sets mode: +o openstack | 07:52 | |
*** openstackgerrit has quit IRC | 08:11 | |
*** dviroel has quit IRC | 08:24 | |
*** dviroel has joined #openstack-swift | 08:30 | |
*** dsariel has joined #openstack-swift | 10:24 | |
*** dsariel has quit IRC | 10:24 | |
*** dsariel has joined #openstack-swift | 10:31 | |
*** openstackgerrit has joined #openstack-swift | 11:23 | |
openstackgerrit | Alistair Coles proposed openstack/swift master: Add more detail to ECFragGetter logging https://review.opendev.org/c/openstack/swift/+/787435 | 11:23 |
*** openstackgerrit has quit IRC | 14:23 | |
*** dsariel has quit IRC | 14:35 | |
*** dsariel has joined #openstack-swift | 14:36 | |
*** m75abrams has quit IRC | 14:50 | |
*** dviroel is now known as dviroel|lunch | 15:07 | |
*** openstackgerrit has joined #openstack-swift | 15:32 | |
openstackgerrit | Alistair Coles proposed openstack/swift master: Quarantine stale EC fragments https://review.opendev.org/c/openstack/swift/+/786084 | 15:32 |
*** TiagoPrimini has quit IRC | 15:44 | |
*** TiagoPrimini has joined #openstack-swift | 15:45 | |
*** rpittau is now known as rpittau|afk | 15:55 | |
*** gyee has joined #openstack-swift | 15:55 | |
*** timburke has joined #openstack-swift | 15:57 | |
*** ChanServ sets mode: +v timburke | 15:57 | |
*** nicolasbock has joined #openstack-swift | 16:09 | |
*** dsariel has quit IRC | 16:18 | |
*** dviroel|lunch is now known as dviroel | 16:24 | |
*** timburke has quit IRC | 16:41 | |
*** timburke has joined #openstack-swift | 17:25 | |
*** ChanServ sets mode: +v timburke | 17:25 | |
*** binwiederhier has joined #openstack-swift | 17:56 | |
binwiederhier | Hello hello, quick question to you Swift pros: Assume I delete an object via 'curl -XPOST -H"X-Delete-At: XYZ" ...' and the deletion time XYZ has passed, but the swift-object-expirer has not run yet, how do I undelete the object and leave Swift in a consistent state? I've had success just deleting the .meta file on all object nodes, but I was wondering if there is other state that I need to adjust? | 17:58 |
binwiederhier | Also: Rather than deleting the .meta file, what's the best way to update/remove an xattr value? | 17:59 |
*** lifeless has joined #openstack-swift | 17:59 | |
timburke | binwiederhier, is there any other metadata that was included with the POST? content-type, user-defined metadata? i'd expect that scrubbing the .metas should work pretty well -- just make sure you got all replicas (including non-primary locations, if necessary) before letting the expirer run | 18:05 |
timburke | otherwise, the .meta will get replicated out again and the expirer will be able to delete it | 18:05 |
binwiederhier | timburke: as of today we don't use any other metadata, which is why i think we can just straight up delete the .meta file instead of editing the xattrs. | 18:06 |
timburke | there will be some stale entries kicking around in the expirer queue, but they shouldn't cause much trouble | 18:06 |
binwiederhier | i do see other stuff in there, mostly X-Timestamp and Content-Type I think | 18:06 |
binwiederhier | but there is nothing in the container sqlite dbs and such that i need to look at or toggle, right? | 18:07 |
timburke | the last-modified date in the container listing will still have the POST timestamp, but i don't expect that to cause you any trouble | 18:09 |
binwiederhier | timburke: awesome thank you | 18:10 |
timburke | as long as you're ok with the content-type reverting to what's stored on the .data, deleting the .meta should be fine. if you need to do this for a large number of objects, you'll likely want to turn off replication for a bit, do the cleanup on all nodes, then turn replication back on | 18:10 |
binwiederhier | it is weird that there are attributes in there that have clearly not changed: | 18:11 |
binwiederhier | getfattr -d --only-values *.meta | /root/swift-meta.py | 18:11 |
binwiederhier | {'X-Delete-At': '1619695221', 'Content-Type': 'none/none', 'X-Timestamp': '1616930421.13160', 'name': '/AUTH_c203007_n1/pec43_n1/gsi5sppzraobnxulrmbweyy4fn5rmcsr', 'Content-Type-Timestamp': '1616930421.13160'} | 18:11 |
binwiederhier | our POST only adds the X-Delete-At. | 18:11 |
binwiederhier | timburke: so why do i need to turn replication off. maybe i'm misunderstanding... | 18:12 |
timburke | some of that is internal book-keeping -- name and X-Timestamp in particular. the Content-Type is a little surprising, but there are worse things | 18:13 |
timburke | so any time we go deleting things off disk, we're going to be fighting the consistency engine a bit. there's going to be a window from when we start deleting .metas to when every node has deleted its .meta where replication on one of the not-yet-deleted nodes could push a fresh copy out to nodes that already did the delete | 18:17 |
timburke | (there are some other caveats around suffix invalidation and whatnot that work in your favor, but that race is the central issue) | 18:18 |
binwiederhier | got it thank you. so basically just disabling the object-replicator and the object-reconstructor then would be enough? | 18:29 |
openstackgerrit | Merged openstack/swift master: relinker: Add start/end logs to parallel_process https://review.opendev.org/c/openstack/swift/+/785936 | 18:32 |
*** stand has joined #openstack-swift | 18:42 | |
*** dviroel is now known as dviroel|brb | 18:43 | |
*** dviroel|brb is now known as dviroel | 19:10 | |
openstackgerrit | Merged openstack/swift master: Include sharding cycle time in recon https://review.opendev.org/c/openstack/swift/+/787831 | 19:13 |
openstackgerrit | Tim Burke proposed openstack/swift master: Recommend setting recon_cache_path in [DEFAULT] section https://review.opendev.org/c/openstack/swift/+/788067 | 19:33 |
*** dviroel is now known as dviroel|afk | 20:00 | |
*** TiagoPrimini has quit IRC | 20:02 | |
*** dviroel|afk is now known as dviroel | 21:21 | |
openstackgerrit | Tim Burke proposed openstack/swift master: docs: Get rid of useless page https://review.opendev.org/c/openstack/swift/+/788086 | 21:24 |
openstackgerrit | Tim Burke proposed openstack/swift master: relinker: Only mark partitions "done" if there were no (new) errors https://review.opendev.org/c/openstack/swift/+/788089 | 21:49 |
*** timburke_ has joined #openstack-swift | 22:17 | |
*** ChanServ sets mode: +v timburke_ | 22:17 | |
*** timburke has quit IRC | 22:19 | |
openstackgerrit | Tim Burke proposed openstack/swift master: relinker: Rehash the parts actually touched when relinking https://review.opendev.org/c/openstack/swift/+/783731 | 22:21 |
*** rcernin has joined #openstack-swift | 23:09 |
Generated by irclog2html.py 2.17.2 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!