Wednesday, 2023-03-08

opendevreviewMerged openstack/python-swiftclient master: Retry with fresh socket on 499  https://review.opendev.org/c/openstack/python-swiftclient/+/87403200:28
opendevreviewMerged openstack/python-swiftclient master: Update master for stable/2023.1  https://review.opendev.org/c/openstack/python-swiftclient/+/87509001:28
opendevreviewMatthew Oliver proposed openstack/swift master: updater: add memcache shard update lookup support  https://review.opendev.org/c/openstack/swift/+/87472101:35
opendevreviewMatthew Oliver proposed openstack/swift master: refactor: get_cache_key for getting memcache keys  https://review.opendev.org/c/openstack/swift/+/87681001:35
opendevreviewMatthew Oliver proposed openstack/swift master: Pass db_state to container-update and async_pending  https://review.opendev.org/c/openstack/swift/+/87681101:35
mattoliverJust split the patch up into smaller peices ^^01:35
mattoliverfrom here I plan to now also add antoher patch towards the start of the chain to refactor the get_shard_ranges interface. 01:36
opendevreviewMatthew Oliver proposed openstack/swift master: quotas: Move global account quotas to own metadata namespace  https://review.opendev.org/c/openstack/swift/+/87682106:06
opendevreviewMerged openstack/swift master: quotas: Move account-level handling to a separate function  https://review.opendev.org/c/openstack/swift/+/86148708:04
kotamorning, but sorry, i'm tired today so i'm going to be offline at the meeting20:59
* kota will check the meeting log later20:59
mattoliverkk21:00
timburkeoh, right!21:04
timburke#startmeeting swift21:04
opendevmeetMeeting started Wed Mar  8 21:04:31 2023 UTC and is due to finish in 60 minutes.  The chair is timburke. Information about MeetBot at http://wiki.debian.org/MeetBot.21:04
opendevmeetUseful Commands: #action #agreed #help #info #idea #link #topic #startvote.21:04
opendevmeetThe meeting name has been set to 'swift'21:04
timburkewho's here for the swift team meeting?21:04
mattolivero/21:04
acoleso/ sorry I'm late21:06
timburkequickly going over old business...21:07
timburke#topic recovering expired objects21:07
timburkelooks like indianwhocodes has been getting some reviews from acoles -- i think we're planning on trying this out with our prod cluster soon21:08
timburke#topic ssync, timestamp offsets, and .metas21:09
mattoliveroh my21:09
timburkewe recently rolled that out to prod; has it resolved the problem we were seeing?21:10
mattoliverthats a good question, Al any idea? I haven't heard anything, which could be a good thing :) 21:11
acolesAFAICT the problem got resolved21:11
acolesI'm hunting down firm evidence21:12
timburkewell, we'll keep looking -- once we know either way, let's leave a comment on the review -- assuming it resolved it, i think we're good to merge21:15
timburke#topic http keepalive timeout21:16
timburkei still need to respin the patch to leverage eventlet's new option21:16
timburke#link https://review.opendev.org/c/openstack/swift/+/87374421:16
timburke#topic per policy quotas21:17
timburkethe pre-reqs have merged, and mattoliver's taken a look at the main patch21:17
timburke#link https://review.opendev.org/c/openstack/swift/+/86128221:17
mattoliveryup, it looks good. Will have a play with it in my VSAIO today then I should be able to +2 it I think21:18
timburkehe's also pushed up a follow-up to get the account-wide limit out of user meta and into sysmeta21:18
timburke#link https://review.opendev.org/c/openstack/swift/+/87682121:18
timburkethanks, mattoliver!21:18
mattolivernps, or at least make it so we use the same metadata namespace for all account quotas, so it's not a mismash of user meta and sysmeta but not really user meta. 21:19
acoles+121:21
timburkethat's it for items from last week21:21
timburkenew business21:21
timburke#topic sysmeta updates and container Last-Modified21:21
timburkeacoles had some users notice that we were updating a container's last modified due to internal POSTs to sysmeta; this was breaking some workflow that seemed to rely on clients doing container-level PUTs/POSTs as part of uploads so they could cheaply watch for changes21:23
timburkewe're thinking about how to avoid that, and also how to better expose and define some container-level timestamps for clients21:24
timburke#link https://review.opendev.org/c/openstack/swift/+/87598221:24
acolesyeah. So there's a few places where we use sysmeta to manage internal state, but so far in upstream swift I think we only ever modify it directly on the DB21:25
acolesIn our use case we POST sysmeta to the container server, and the server updates the put_timestamp as a side-effect. Given that this sysmeta is not user-visible, it's not necessary or appropriate, and the user would prefer the last-modified time to not be changed21:26
mattoliveryeah interesting. Because on one hand the db has been changed.. on the other the user can't see the change. 21:27
timburkefwiw, it seems to me that there are at least three timestamps clients would likely be interested in: when a container was created, when a client last changed some container metadata (regardless of whether it was stored in user or sysmeta), and when the last write into the container occurred (regardless of whether it was an object PUT, POST, or DELETE)21:28
acolesPUT with shard ranges already bypasses the put_timestamp update21:28
timburkeour user was put out because we changed (2) despite no client action, but it sounds like what they really want is (3)21:29
acolesand the sharder write sysmeta (like sharding contexts) but without modifying put_timestamp21:29
mattoliverahh prior art.. that makes me feel better (or bad for not updating the ts :P )21:30
mattoliverkk21:30
acolesmattoliver: don't feel bad, I'm not sure there is a reason to update it for internal state changes (and actually, good reasons to not update it)21:32
timburkedon't think there's too much to bring up here for now, but interested parties should follow the review21:32
mattolivercool. Well I'll take a look at the patch21:33
timburke#topic wsgi manager-process cpu usage21:33
mattoliverAhh I have this patch open in a tab right now. This is pretty cool. 21:34
timburkei brought up a vsaio recently and was noticing that virtualbox seemed fairly busy despite not actually doing much21:34
mattoliver#link https://review.opendev.org/c/openstack/swift/+/87666221:35
timburkedigging into it a bit, i saw that each of the 14 wsgi-manager processes were consuming 1-2% cpu21:35
timburkewhich seemed to be because of a busy-loop in eventlet.green.os.wait21:35
timburkei'm pretty sure the only reason we're touching eventlet there is to be able to do that wait with a timeout -- there are no other greenthreads running in that process21:37
timburkeso i took a stab at removing that use of eventlet by using signaled alarms21:37
timburkenot sure how much it affects a "real" system, but if you're ever cpu-bound, i'd imagine the proposed patch ought to help a bit21:38
timburkeall right, i think that's all i've got21:40
mattoliverit's really interesting stuff. How'd it effect your VSAIO?21:40
timburke#topic open discussion21:40
timburkeoh, it was great! from my host, virtualbox went from like 30% cpu to 3-5%21:41
timburkeanything else we should bring up this week?21:41
mattoliverI'm playing with object-updater + memcache updates, but still needs more work, we can talk about it next week or at the PTG :) 21:42
mattoliverI've broken it up in to some refactors first, chain starts:21:43
mattoliveror rather ends: https://review.opendev.org/c/openstack/swift/+/8747221:44
mattoliver#link https://review.opendev.org/c/openstack/swift/+/8747221:44
mattoliverjust in case anyone is insterested. That's all I can think of for now21:45
timburkeall right, i think i'll call it then21:46
timburkethank you all for coming, and thank you for working on swift!21:46
timburke#endmeeting21:46
opendevmeetMeeting ended Wed Mar  8 21:46:54 2023 UTC.  Information about MeetBot at http://wiki.debian.org/MeetBot . (v 0.1.4)21:46
opendevmeetMinutes:        https://meetings.opendev.org/meetings/swift/2023/swift.2023-03-08-21.04.html21:46
opendevmeetMinutes (text): https://meetings.opendev.org/meetings/swift/2023/swift.2023-03-08-21.04.txt21:46
opendevmeetLog:            https://meetings.opendev.org/meetings/swift/2023/swift.2023-03-08-21.04.log.html21:46

Generated by irclog2html.py 2.17.3 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!