21:01:21 #startmeeting swift 21:01:21 Meeting started Wed May 22 21:01:21 2024 UTC and is due to finish in 60 minutes. The chair is timburke. Information about MeetBot at http://wiki.debian.org/MeetBot. 21:01:21 Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 21:01:21 The meeting name has been set to 'swift' 21:01:26 who's here for hte swift meeting? 21:01:41 And then... 21:03:36 o/ 21:03:45 i neglected to update the agenda, but there have been a few bodies of work moving forward 21:03:48 Oh, hey. 21:04:16 #topic labeled metrics 21:04:49 zaitcev: congrats on getting cinder core too! 21:05:13 oh, nice! i hadn't been following -- congrats! 21:05:15 mattoliver: thanks! 21:05:39 shreeya and yan have continued trying to untangle our statsd client from our logger 21:05:51 I know even less about Cinder than I do about Swift, but they have such a pile of reviews that here we are. 21:06:38 first in the chain is to break out configuration 21:06:40 #link https://review.opendev.org/c/openstack/swift/+/919444 21:06:41 patch 919444 - swift - Move StatsdClient config parsing from get_logger t... - 3 patch sets 21:08:30 and i don't think it's quite there yet, but i think the next patch is going to try to get the statsd references out of logs.py 21:08:32 #link https://review.opendev.org/c/openstack/swift/+/915483 21:08:33 patch 915483 - swift - HybridMultiObjectDispatcher - 11 patch sets 21:09:35 while continuing to have utils.get_logger return a weird frankenstein object that lets you call both log and stat methods 21:11:27 i know they started to get a little lost in some details like the logger thread locals (which we use to add transaction id and client ip to server log lines) 21:11:54 lol, but the plan is the franlentein monster will go sometime in the future when we have a "better" metrics client? 21:12:56 not sure -- it seems likely to break 3rd party middlewares and the like. maybe eventually with appropriate deprecations, though? 21:13:49 i think there's some alignment, though: it's enough of a win for us to just get the stats stuff out of the logger, we don't have to try to fix all the weird/bad things we don't like about our loggers right now 21:14:09 yeah, I guess we would need a migration plan to move forward on that. 21:16:45 i.e., logger thread locals can stay on the logger; the frankenlogger will get a __setattr__ in addition to the __getattr__ (or do something more explicit with a bunch of @property methods); and we're just going to try to carve out a pure statsd client 21:18:27 kk 21:19:03 i'm still a little nervous about the refactor distracting from the actual desired improvement, but at the same time, it's always been a little weird that stats and logs were lumped together the way they are 21:19:40 next up 21:19:46 #topic backend ratelimiting 21:20:21 we landed some patches in the last couple weeks 21:20:33 #link https://review.opendev.org/c/openstack/swift/+/840531 21:20:33 patch 840531 - swift - backend ratelimit: support reloadable config file (MERGED) - 10 patch sets 21:20:40 #link https://review.opendev.org/c/openstack/swift/+/840542 21:20:41 patch 840542 - swift - backend ratelimit: support per-method rate limits (MERGED) - 9 patch sets 21:22:18 these are things we've been using with our clusters for a while now, and got to see some recent active use while trying to keep container servers from getting overloaded 21:22:48 which i believe also prompted mattoliver to write up 21:22:50 #link https://review.opendev.org/c/openstack/swift/+/919667 21:22:51 patch 919667 - swift - obj: skip to async_pending when root is busy - 4 patch sets 21:22:59 Yeah, and I think they're great tools for ops to have in their back pocket. 21:23:13 yup! 21:24:23 Bascially bypasses sending the container-update if the root container is crazy busy and go straight to async_pending to give the container more breathing space. 21:24:40 rather the join in the DDOS fun :P 21:27:34 i still wonder a little if it would be better for the proxy to 503 the PUT, and avoid the pile-up that way. or at least have an option for it or something? 21:29:22 next up: 21:29:40 #topic aws-chunked support 21:30:18 i finally got around to writing my own s3 signer/client to explore some error conditions 21:30:34 first target was fixing up some sha256-mismatch errors 21:30:47 #link https://review.opendev.org/c/openstack/swift/+/918694 21:30:47 patch 918694 - swift - cors: Add ability to allow requests with credentials - 3 patch sets 21:31:24 woah, nice one man 21:31:25 but i plan on using it more as i explore the additional checksum support and aws-chunked protocol 21:31:49 bah! that wasn't the link i meant... 21:32:00 #link https://review.opendev.org/c/openstack/swift/+/920206 21:32:01 patch 920206 - swift - s3api: Clean up some sha256 validation/mismatch er... - 1 patch set 21:32:21 that looks better :) 21:33:47 still working on restacking the other patches, but something to look forward to 21:34:02 #topic python 3.13 21:34:29 the first beta was released a couple weeks ago! and a fresh beta is due out next week! 21:34:40 nice work pushing it forward Tim! 21:35:04 i haven't gotten to trying it out yet, but i'd like to soon, so we can identify any issues early 21:35:31 the only trouble i already know of is the removal of cgi 21:35:49 #link https://review.opendev.org/c/openstack/swift/+/887908 21:35:49 nice, and be on the front foot for once. Thanks for all your hard work getting swift modern python ready. 21:35:49 patch 887908 - swift - Stop using cgi.parse_header - 3 patch sets 21:36:00 ...which it looks like is due for a rebase 21:36:03 Merged openstack/swift master: docs: Update further-reading URL for cross-domain policies https://review.opendev.org/c/openstack/swift/+/919748 21:37:03 that's all i've got for this week 21:37:09 #topic open discussion 21:37:18 anything else we should bring up? 21:38:11 We've already mentioned the skip to async pending. The only other things I'm poking at is the db vacuum and leader election algorithm stuff 21:38:32 but haven't had much of a chance to push them forward much. Maybe I'll have news next meeting. 21:38:44 So I'm good 21:39:16 oh yeah -- i should take another look at the vacuum patch 21:39:53 Oh and I've meet with the Qatar students twice. They're onboarding. Building SAIOs and you might see them pop in and out here as they get their dev envs set up :) 21:41:11 I've walked through what swift is, topology and we've walked through my SAIO and poked at things. So hopefully they feel comfortable building and breaking their own SAIOs. 21:41:47 next meeting with them I plan to go through swift code locations and maybe point them in the right place to get started. 21:41:52 They seem like a good bunch. 21:42:05 oh good! thanks again for working with them -- how's the timezone difference? 21:42:47 not too bad. We meet on my Monday late arvo, which is like 9am their time. So far working well 21:43:02 I hope once they get better access here, we can be alot more async 21:45:03 nice 21:45:22 all right, i think i'll call it 21:45:32 thank you all for coming, and thank you for working on swift! 21:45:35 #endmeeting