21:01:21 <timburke> #startmeeting swift
21:01:21 <opendevmeet> 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 <opendevmeet> Useful Commands: #action #agreed #help #info #idea #link #topic #startvote.
21:01:21 <opendevmeet> The meeting name has been set to 'swift'
21:01:26 <timburke> who's here for hte swift meeting?
21:01:41 <zaitcev> And then...
21:03:36 <mattoliver> o/
21:03:45 <timburke> i neglected to update the agenda, but there have been a few bodies of work moving forward
21:03:48 <zaitcev> Oh, hey.
21:04:16 <timburke> #topic labeled metrics
21:04:49 <mattoliver> zaitcev: congrats on getting cinder core too!
21:05:13 <timburke> oh, nice! i hadn't been following -- congrats!
21:05:15 <zaitcev> mattoliver: thanks!
21:05:39 <timburke> shreeya and yan have continued trying to untangle our statsd client from our logger
21:05:51 <zaitcev> 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 <timburke> first in the chain is to break out configuration
21:06:40 <timburke> #link https://review.opendev.org/c/openstack/swift/+/919444
21:06:41 <patch-bot> patch 919444 - swift - Move StatsdClient config parsing from get_logger t... - 3 patch sets
21:08:30 <timburke> 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 <timburke> #link https://review.opendev.org/c/openstack/swift/+/915483
21:08:33 <patch-bot> patch 915483 - swift - HybridMultiObjectDispatcher - 11 patch sets
21:09:35 <timburke> while continuing to have utils.get_logger return a weird frankenstein object that lets you call both log and stat methods
21:11:27 <timburke> 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 <mattoliver> lol, but the plan is the franlentein monster will go sometime in the future when we have a "better" metrics client?
21:12:56 <timburke> not sure -- it seems likely to break 3rd party middlewares and the like. maybe eventually with appropriate deprecations, though?
21:13:49 <timburke> 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 <mattoliver> yeah, I guess we would need a migration plan to move forward on that.
21:16:45 <timburke> 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 <mattoliver> kk
21:19:03 <timburke> 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 <timburke> next up
21:19:46 <timburke> #topic backend ratelimiting
21:20:21 <timburke> we landed some patches in the last couple weeks
21:20:33 <timburke> #link https://review.opendev.org/c/openstack/swift/+/840531
21:20:33 <patch-bot> patch 840531 - swift - backend ratelimit: support reloadable config file (MERGED) - 10 patch sets
21:20:40 <timburke> #link https://review.opendev.org/c/openstack/swift/+/840542
21:20:41 <patch-bot> patch 840542 - swift - backend ratelimit: support per-method rate limits (MERGED) - 9 patch sets
21:22:18 <timburke> 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 <timburke> which i believe also prompted mattoliver to write up
21:22:50 <timburke> #link https://review.opendev.org/c/openstack/swift/+/919667
21:22:51 <patch-bot> patch 919667 - swift - obj: skip to async_pending when root is busy - 4 patch sets
21:22:59 <mattoliver> Yeah, and I think they're great tools for ops to have in their back pocket.
21:23:13 <mattoliver> yup!
21:24:23 <mattoliver> 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 <mattoliver> rather the join in the DDOS fun :P
21:27:34 <timburke> 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 <timburke> next up:
21:29:40 <timburke> #topic aws-chunked support
21:30:18 <timburke> i finally got around to writing my own s3 signer/client to explore some error conditions
21:30:34 <timburke> first target was fixing up some sha256-mismatch errors
21:30:47 <timburke> #link https://review.opendev.org/c/openstack/swift/+/918694
21:30:47 <patch-bot> patch 918694 - swift - cors: Add ability to allow requests with credentials - 3 patch sets
21:31:24 <mattoliver> woah, nice one man
21:31:25 <timburke> but i plan on using it more as i explore the additional checksum support and aws-chunked protocol
21:31:49 <timburke> bah! that wasn't the link i meant...
21:32:00 <timburke> #link https://review.opendev.org/c/openstack/swift/+/920206
21:32:01 <patch-bot> patch 920206 - swift - s3api: Clean up some sha256 validation/mismatch er... - 1 patch set
21:32:21 <mattoliver> that looks better :)
21:33:47 <timburke> still working on restacking the other patches, but something to look forward to
21:34:02 <timburke> #topic python 3.13
21:34:29 <timburke> the first beta was released a couple weeks ago! and a fresh beta is due out next week!
21:34:40 <mattoliver> nice work pushing it forward Tim!
21:35:04 <timburke> 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 <timburke> the only trouble i already know of is the removal of cgi
21:35:49 <timburke> #link https://review.opendev.org/c/openstack/swift/+/887908
21:35:49 <mattoliver> nice, and be on the front foot for once. Thanks for all your hard work getting swift modern python ready.
21:35:49 <patch-bot> patch 887908 - swift - Stop using cgi.parse_header - 3 patch sets
21:36:00 <timburke> ...which it looks like is due for a rebase
21:36:03 <opendevreview> Merged openstack/swift master: docs: Update further-reading URL for cross-domain policies  https://review.opendev.org/c/openstack/swift/+/919748
21:37:03 <timburke> that's all i've got for this week
21:37:09 <timburke> #topic open discussion
21:37:18 <timburke> anything else we should bring up?
21:38:11 <mattoliver> 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 <mattoliver> but haven't had much of a chance to push them forward much. Maybe I'll have news next meeting.
21:38:44 <mattoliver> So I'm good
21:39:16 <timburke> oh yeah -- i should take another look at the vacuum patch
21:39:53 <mattoliver> 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 <mattoliver> 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 <mattoliver> 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 <mattoliver> They seem like a good bunch.
21:42:05 <timburke> oh good! thanks again for working with them -- how's the timezone difference?
21:42:47 <mattoliver> not too bad. We meet on my Monday late arvo, which is like 9am their time. So far working well
21:43:02 <mattoliver> I hope once they get better access here, we can be alot more async
21:45:03 <timburke> nice
21:45:22 <timburke> all right, i think i'll call it
21:45:32 <timburke> thank you all for coming, and thank you for working on swift!
21:45:35 <timburke> #endmeeting