Monday, 2025-08-25

abongalegood morning ironic o/08:23
FreemanBoss[m]good morning ironic12:39
cardoeJayF: naming is hard13:07
TheJuliagood morning13:09
dtantsurHi folks. Does anyone know the CI situation? It looks like we have quite a few of DIB failures, maybe more.13:15
TheJuliaI've not looked yet this morning, is it errors reading a qcow image to extract it?13:15
dtantsurI think so13:16
TheJuliapresently a known issue, I'll check the ticket once I'm logged into jira13:16
TheJuliahmm, last update from the 21st noting vagrant-virtualbox, and ec2 images are similarly impacted13:18
TheJuliahttps://issues.redhat.com/browse/CS-298313:21
TheJuliaBut most jobs on friday worked13:22
cardoeTheJulia: so I'm trying to do what you suggested with the notify_controller to kick off the continue_inspection from inspect_hardware. Wondering if I should drop the node lock in inspect_hardware so that continue_inspection can grab it or if I should use after_spawn13:39
* dtantsur is very scared13:40
cardoeAnd no rush on answering. Just wanted to throw this out there.13:40
TheJuliaThat seems a bit excessive13:40
cardoedtantsur: well the goal was that redfish inspection now behaves identical to agent inspection13:40
TheJuliayour scaring the owlet ;)13:40
TheJulia... or am I?!?13:41
* TheJulia is worried now13:41
dtantsurcardoe: the problem with all these notify_* calls is that if they fail, nothing will ever retry them.13:41
dtantsurfor the agent inspection, IPA will13:41
dtantsurif you use it from Ironic code.. well.. it's on you somehow13:41
* dtantsur expands the feathers to look bigger13:42
TheJuliaheh13:42
cardoedtantsur: well unfortunately a lot of behavior of inspection that should likely be common in now embedded in the rpc side of the conductor in the continue_inspection call.13:43
cardoeI can pull that out to something common if that's more preferred.13:43
dtantsurI vote for refactoring, yeah13:43
cardoeI've got a pile of refactors then so help me by merging some cause they're all very boring mechanical moving ones.13:44
cardoeSo like here's one that I think is more correct testing wise... but then again maybe not? https://review.opendev.org/c/openstack/ironic/+/95837013:45
cardoeI noticed agent inspection has a bug in some of the tests that check things of the task.node object but manipulations are made after the last node.save() and therefore the test case isn't what's actually written to the DB.13:45
cardoeSo that patch attempts to avoid that condition in redfish.13:46
cardoeI've got another one where I add _get_$THING_info() for each $THING in the redfish.13:47
cardoeI think Julia suggested that one.13:47
cardoeMy last big scary one is that I refactored the whole inspector folder and renamed a bunch of stuff.13:47
cardoeinspector/interface.py -> inspector/base.py since we import it as common and base everywhere. I made base just have the abstract class and added a bunch of tests.13:48
dtantsurRename all the things \o/13:48
cardoeIn that refactor I moved the property validation to be a common operation so that all inspection interfaces must comply with the ESSENTIAL_PROPERTIES check.13:48
cardoeWhich removed code out of all the other inspectors except agent inspector since it didn't validate them.13:49
cardoeBut Julia said we probably don't need to validate properties anymore.13:49
cardoeBut the behavior on agent was different than the other inspectors because it didn't ensure properties got set.13:49
cardoeAnyway, just need an idea of which direction to go.13:49
cardoeI wanna get as much of this upstream and out of our downstream as possible.13:50
cardoeWe're gonna be adding out-of-band inspection as a service step as well.13:51
dtantsurInspection is a service step is a neat idea, although I'm curious what you're going to do with ports14:01
* TheJulia looses he rbrain14:02
TheJuliabrain14:02
opendevreviewcid proposed openstack/ironic master: Fix improper HTTP status code usage (RFC 7231)  https://review.opendev.org/c/openstack/ironic/+/95845414:05
cardoedtantsur: so we want to have two different types of inspections... one which creates ports and updates them for an "initial discovery" type inspection and then another that's the "service step inspection"14:05
iurygregoryI've updated the report for the bug triage, I probably wont be able to join the upstream meeting (I have a conflict with a downstream meeting)14:06
cardoeThe idea is someone in the DC might have just touched the box or maybe we periodically do it just cause. And we just make sure that things are still the same.14:06
cardoeiurygregory: the IPE patch that I wanna see land too is held up because of CentOS 9 stuff.14:06
iurygregorycardoe, hey o/14:11
dtantsurcardoe: yeah, I get requests for updating inspection data too14:11
iurygregoryI will update a few things on it today14:11
iurygregoryto re-use redfish part a bit more14:12
opendevreviewMerged openstack/ironic master: Add request logging middleware for API requests  https://review.opendev.org/c/openstack/ironic/+/95810314:18
opendevreviewMerged openstack/ironic bugfix/30.0: Memoize calls to bcrypt.checkpw  https://review.opendev.org/c/openstack/ironic/+/95831514:18
opendevreviewMerged openstack/ironic master: Orphaned accelerators after devices removed  https://review.opendev.org/c/openstack/ironic/+/95606014:19
opendevreviewMerged openstack/ironic master: redfish: mechanical moves of inspection tests  https://review.opendev.org/c/openstack/ironic/+/95837014:19
cardoeoh hey that merged. Thanks all. :-D14:25
cardoeIf ya want another super simple one https://review.opendev.org/c/openstack/ironic/+/958371 that'll make my use of mypy across the inspection code happy.14:26
* TheJulia blinks14:32
opendevreviewClif Houck proposed openstack/ironic master: Add a new 'physical_network' field to the Portgroup object  https://review.opendev.org/c/openstack/ironic/+/95562514:58
opendevreviewClif Houck proposed openstack/ironic master: Add a new 'category' field to the Portgroup object  https://review.opendev.org/c/openstack/ironic/+/95571315:00
TheJuliahmm15:03
TheJulia#startmeeting ironic15:03
opendevmeetMeeting started Mon Aug 25 15:03:46 2025 UTC and is due to finish in 60 minutes.  The chair is TheJulia. Information about MeetBot at http://wiki.debian.org/MeetBot.15:03
opendevmeetUseful Commands: #action #agreed #help #info #idea #link #topic #startvote.15:03
opendevmeetThe meeting name has been set to 'ironic'15:03
TheJuliao/15:03
clifo/15:03
kubajjo/15:04
cardoeo/15:05
TheJuliaSo who is going to chair our meeting this week? Or are we all going to need to have more coffeeeeee?15:05
mostephao/15:05
TheJulia\o15:05
TheJuliaI guess I'm chairing today15:05
TheJuliaWelcome to this week's Ironic meeting!15:06
TheJuliaOur agenda can be found on the wiki!15:06
TheJulia#link https://wiki.openstack.org/wiki/Meetings/Ironic#Agenda_for_August_25.2C_202515:06
cido/15:06
JayFo/15:06
TheJuliaAs for our standard reminder, please review priority items labled with the hashtag ironic-week-prio. A dashboard link is available for this purpose.15:06
TheJulia#link https://review.opendev.org/q/hashtag:%22ironic-week-prio%22+(status:open)15:06
TheJuliaThis week is R-5 on the release schedule.15:07
TheJulia#link https://releases.openstack.org/flamingo/schedule.html15:07
TheJuliaAs a reminder! This week other projects freeze. Final release for client libraries occur, requirements also freeze, and well, yeah. You can see the full list on the schedule15:08
TheJuliaNext week! Cycle highlights are due, so we should also consider composing our prelude for this release15:08
TheJuliaBased upon my experience over the years, we're likely going to have to release in 2 weeks.15:09
JayFI'll take a look at cycle highlights15:09
JayF#action JayF to do cycle highlights15:09
TheJulia#chair jayf15:09
opendevmeetCurrent chairs: TheJulia jayf15:09
JayF#action JayF to do cycle highlights15:09
TheJuliaDoes anyone else have anything to remind us of or announce this week?15:09
TheJuliaI guess not, onward!15:10
TheJulia#topic Working Group Updates15:10
TheJuliaOur first update I'll be proxying for the Standalone networking working group.15:10
TheJuliaalegacy messaged me with a scheduled message and let me know that he made progress but feels he will need to revise the spec. Basically they realized a chicken/egg issue that we're already aware of in ironic, but I suspect we never clearly documented. tl;dr how do you get the data automatically.15:12
TheJuliaIn terms of Eventlet removal!15:12
JayFI move that we rename the Eventlet WG the Eventlet is dead partytime group15:13
JayF;)15:13
TheJuliaIt feels like we're in final clean-up stage, where we may be partying and forgetting any final clean-ups.15:13
TheJuliaFor any final cleanups, lets go ahead and get them tracked and raise awareness if we're aware of any.15:13
JayFrequest logging fix landed this morning, there's a couple of dev environment cleanups I have up that (I think?) have not yet landed15:13
TheJuliaThat matches my awareness15:14
JayFhttps://review.opendev.org/c/openstack/ironic/+/95824915:14
TheJuliaI think we were also going to pull the wsgi entry point?15:14
JayFAh, that's a good one too15:14
TheJuliaor am I incorrectly presenting that one?15:14
TheJulia(why? I don't know?!)15:14
JayFI think that's aaccurate, but I don't think it's tied with eventlet directly15:14
JayFso much as tied with "remove old crap" :) 15:15
TheJuliaYeah15:15
TheJuliaOkay, anything else regarding working group updates?15:15
JayFFor eventlet WG15:15
JayFwe should mention we are encouraging contributors to set aside some meaningful time15:15
JayFto perform basic testing locally, if you have hardware test against it15:16
JayFthe weirder the use case tested the better :) 15:16
TheJuliaI concur15:16
JayFalso 👏 to our CNCF counterparts for helping us find the first (only?) major regression15:16
TheJulia#agreed Contributors should try to take time to exercise the "weirder" use cases to observe if they have found any regressions.15:17
TheJulia++15:17
TheJuliaFWIW, I did sit down and just verify the vnc console stuff was working still last week and I was able to confirm it was happy as a single process.15:17
JayFI would *really* like testing against ilo driver15:18
JayFbut I don't personally have access to that hardware so :/15:18
TheJuliaUnfortunately, I have no ilo gear15:18
TheJuliaI *suspect* we may have another issue brewing, of sorts, with the redfish cache, but I've not sat down to explore or inspect logs15:19
TheJulia(session cache)15:19
kubajjTheJulia: I recently figured out that we do have some ilo nodes we could test stuff on15:20
TheJuliaAnyhow, it looks like have no discussion topics today, so we can proceed to the Bug Deputy updates if there are nothing else15:20
JayFit might be a good idea to chat about portgroup.physical_network; but that can wait until open discussion15:21
TheJuliaYeah, it would :)15:21
TheJuliakubajj: if y'all can, that would be much appreciated.15:21
* TheJulia waits for a moment to see if there is anything eventlet/testing related before we proceed15:21
kubajjTheJulia: although I am not 100% familiar with the potential issues that could arise 15:22
TheJuliakubajj: largely the removal of eventlet changes the threading model to use... actual threads. It increases memory usage may expose issues in drivers doing anything odd. Because threads will basically become blocking, the aspects eventlet monkeypatches, largely around socket/thread interactions can appear as pain points15:23
kubajjTheJulia: I assume this involves both ironic and the IPA?15:24
TheJuliakubajj: Eventlet was removed from both, IPA is less multi-threaded and is much simpler in many ways. Ironic at it's core is *really* where it is at.15:25
JayFIt's hard to me to imagine we have any edges in IPA that haven't been tested15:26
kubajjTheJulia: ok, we will try to build Ironic and IPA from master and see what fails15:26
JayFWe made a point to test image streaming + failures when building that feature which I think is the edgiest case there15:26
JayFbut IMBW :)15:26
TheJuliakind of yeah, and also there is an easy fallback path for IPA, load a slightly older image up and roll forward while we work a bug ;)15:26
TheJulia#topic Bug Deputy Updates15:27
TheJuliaiurygregory: you're up if your around15:27
iurygregoryquick updates15:27
iurygregory3 new bugs during the week15:27
iurygregoryall have patches up =)15:27
TheJuliaI think 2 are actually "resolved" for now15:27
iurygregorysome are even merged15:27
iurygregoryyeah15:27
TheJuliacool cool15:27
TheJuliaAnything else? Would anyone like to be our bug deputy for this week?15:29
clifI'll volunteer15:29
clifassuming no one else is in line already15:30
TheJulia#action clif to be our bug deputy for this week!15:30
clif\o/15:30
TheJuliaWell, since we have no RFEs to review this week!15:31
TheJulia#topic Open Discussion15:31
kubajjanybody knows what's up with IPA CI?15:31
TheJuliakubajj: is it blowing up a lot in dib's extract-image logic ?15:32
JayF#note CI for anything that needs a CentOS image, including IPA CI and 4k test jobs in Ironic, are failing due to upstream CentOS issues.15:32
JayFTheJulia: yes15:32
TheJuliayeah, that!15:32
JayFI noticed it last week when 4k job was busted15:32
JayFfigured no need to pile on and be too loud about it15:32
TheJuliaThey already have multiple groups of folks being loud on the ticket15:32
TheJulia#link https://issues.redhat.com/browse/CS-298315:33
clifI'm a bit perturbed it hasn't been addressed yet15:33
kubajjI am not sure if it is that, but could be https://zuul.opendev.org/t/openstack/build/5a5e32685bb14ace847a3b9f8fa0d07a15:33
TheJuliaSo, as for that physical_network topic!15:33
TheJuliaclif: as am I....15:33
JayFlooking at https://docs.openstack.org/ironic/latest/admin/networking.html#terminology15:33
JayFplus the fact that we can loosen things up later, but it's not as easy to tighten them up later15:34
JayFI think it makes sense to make portgroup.physical_network either be inherited or be limited to values present on their underlying ports15:34
JayFthe part that makes this hairy is that I suspect it's possible to have portgroup X containing ports A and B, and having ports A and B have different physical networks15:35
JayFeven though that config wouldn't make sense, if the data exists we'd have to handle it15:35
JayFdoes that match cardoe and TheJulia concerns/thoughts?15:35
* JayF tried to catch up this morning :D 15:35
TheJuliaI think having a portgroup spanning to physically different portgroups is *really* a bad idea... but its sort of kind of valid modeling wise15:37
TheJuliabecause you *could* sort of say the portgroup exists on *both*15:37
TheJuliaI mean... not ideal, likely model breaking overall, but sort of possible.15:37
TheJuliaAnd even then, odds are you *really* wouldn't have a proper LACP config in such a case15:38
JayFmy question is15:38
JayFis there ever a case where that ^^ makes sense15:38
JayFthat doesn't involve "operator physically moves the cable from X fabric to Y"15:38
JayFI can't find one.15:38
JayFand if the physical world changes, asking people to update the API isn't just OK; it's the most sensible thing15:38
TheJuliaI think if someone came with a case where they said it makes sense, I'd challenge them to explain why. I mean, I guess I can see a sort of meta question to this argument, I'm viewing it as a shorthand, but there are other fields in this model they could also use15:39
TheJuliaI'm thinking inherant and enforce, and maybe we put a config option around the validation15:39
JayFI'd say just lock down by default15:39
TheJuliaand if someone does something like that blow up/detonate/scream/etc15:39
TheJuliaand re-iterate in the docs15:39
TheJuliacardoe: thoughts^15:39
JayFif you wanna set portgroup.physical_network, it needs to be one that's on port.physical_network15:39
TheJuliaI'm good with that, personally15:39
JayFif there's ever a mismatch when we go to do things, go boom15:39
TheJuliayeah15:40
JayF*then if later needed* add the toggle switch and implement the other case15:40
JayFI'd rather be able to make assumptions about the data is the use case isn't obvious15:40
TheJuliafair15:41
TheJuliaclif: seems like you'd need to add more validation logic (if you haven't already)15:41
TheJulia(It occurs to me cardoe has a meeting overlap around now on mondays as well...(15:42
TheJulia)15:42
cardoeSorry I had to step away and getting caught up.15:42
JayFTheJulia: clif: should we also add enforcement the other way: if someone updates port.physical_network to a different value than it's portgroup, is that OK? Should that blank the portgroup value? 15:42
cardoeYes. I've got the show slide decks to senior leadership about project status call right now.15:42
JayFOr is this just a safeguard on the way in15:42
clifcan a port belong to more than one portgroup?15:43
clifand once a port is in a portgroup what do we currently do if the port changes somehow?15:43
cardoeJayF: you summed it up well.15:43
TheJuliaclif: no, it can't belong to more than one afaik15:44
cardoeyeah it needs to be removed afaik15:44
TheJuliaso there is more guardrail logic needed on the port, but I think that could also be added separately15:44
TheJuliaas long as we don't forget it.15:44
cardoeI'd like if 2 ports are part of the same PortGroup and someone tried to update the physical_network on 1 Port to differ from the other Port that they get an error. That's actually be a real jira I've got here.15:45
TheJuliaActually, that... could make a lot of sense, use the portgroup as the aggregate to reset the ports15:46
clifso if physical network is something derived/inherited from member ports, is category as well?15:46
TheJuliasince... changing them is sort of a PITA separately.15:46
cardoeTheJulia: That would be good with me.15:46
TheJuliacategory is for humans, not the code ;)15:46
TheJuliaat least, I think it is for humans15:46
JayFmy real concern about this suggestion15:47
JayFis that we don't have an easy way in the client to do that update atomically, do we?15:47
JayFI guess you can't update portgroup/port atomically in our API at all15:47
TheJuliaGoing back to the other open discussion topic, I've politely asked for an ETR as to when they expect to have the mirrors resolved15:47
* TheJulia is tempted to also increase the issue's priority15:47
JayFso it'd have to be a side-effect of updating portgroup.physical_network to update ports[].physical_network ... which seems OK?15:47
JayFas long as we document it loudly :)15:48
TheJuliaI think it would be a super logical side-effect15:48
cardoeJayF: yeah if we said to update physical_network on Ports in a PortGroup, you must update the PortGroup.15:48
TheJuliaAnd doing that is also way more user friendly, really15:48
TheJuliaJust, needs to be documented, very loudly.15:48
JayFwould we allow port.physical_network to be manually updated if on the relevant microversion?15:48
JayFMy feeling is NO 15:48
JayFbecause that could cause inconsistency15:49
cardoeI'm a no as well.15:49
TheJuliaAlso likely with a "expect to wait for a little bit for the ironic-neutron-agent to pickup the change15:49
JayFbut we /could/ permanently break some (weird and maybe unrealistic, as noted above) workflows that might need ports on different physnets in a group15:49
TheJuliaPortgroups are a bit of a weird edge case, so I think its a "if set on the port but not portgroup, its okay to reset/change"15:50
TheJuliabut the moment its set it would need to be set the same across all ports15:50
TheJuliaand if your changing one, you need to change them all15:50
JayFTo summarize:15:50
JayF- When we update portgroup.physical_network, update member ports.physical_network15:50
JayF- On that same microversion boundry, disallow update of port.physical_network when a member of a portgroup (with a friendly directive error IMO)15:50
JayF- Document the hell out of this behavior change in release notes and anywhere we mention physical_network15:50
TheJulia*unless* you remove the port from the portgroup15:50
JayFso there's one case left that I'm unsure about15:51
TheJuliaI believe that sums it up, aside from possibly permitting in the case of if portgroup.physical_network is not already set15:51
TheJuliaThey are not in a great state, but it just means they aren't using the portgroup.physical_network field at all15:52
TheJulia(That is less likely to be breaking to anyone as well)15:52
JayFif I have a preexisting db with portgroup X containing A and B ports, and they are *already on* different physical_networks .... it's just okay?15:52
opendevreviewJakub Jelinek proposed openstack/ironic-python-agent master: Fix skip block devices for RAID arrays  https://review.opendev.org/c/openstack/ironic-python-agent/+/93734215:52
JayFsounds like based on what you said, we allow that15:52
TheJuliaJayF: I'll file under "not great"15:52
clifso are we saying that portgroup.phsyical_network is it's own attribute/member but it's value(s) are logically limited to it's members15:52
clif?15:52
JayFwell you want to enable not-great as long as portgroup.physical_network is null (which makes sense and is less breaky)15:52
TheJuliayeah, its "not great" and if they try to use this feature then we need to break... err... I mean guide them15:52
JayFclif: so think about physical network as actually reflecting a switch (fabric) in the real world15:53
JayFthere is *never* a case we can figure out where two ports would be bonded (portgrouped) without being on the same switch fabric15:53
JayFbut we cannot assume there's not some downstream somewhere abusing that field for something else, or using it in a patch, etc, so we're try to be as not-heavy-handed as possible15:53
JayFupdate of this item: - On that same microversion boundry, disallow update of port.physical_network when a member of a portgroup that has portgroup.physical_network set (with a friendly directive error IMO)15:54
cardoeAgreed.15:54
JayFcardoe might be that downstream /s 15:54
JayFlol15:54
TheJuliatime check, 5 minutes15:54
JayFclif: did that help? 15:55
clifI think so15:55
JayFin a perfect world modelled like we expect ports[].physical_network to never be different but we're used to people abusing our fields for other things15:55
JayFSGTM. If you'll update that patch we can have a look.15:56
JayFI think this issue is at an end, and probably the whole meeting?15:56
JayFAnything else on this topic or open discussion in general?15:56
TheJuliaI *suspect* we're good....15:56
* TheJulia expects someone to do the typical new topic right as we end the meeting ;)15:57
JayFOh, one more thing!15:57
cid:D15:57
JayF#endmeeting15:57
JayF#endmeeting ironic15:57
JayFI thought I was chair?15:57
TheJuliaohh, interesting15:57
TheJuliaI think because it is case matching15:57
TheJuliadoh!15:57
TheJulia#endmeeting15:57
opendevmeetMeeting ended Mon Aug 25 15:57:52 2025 UTC.  Information about MeetBot at http://wiki.debian.org/MeetBot . (v 0.1.4)15:57
opendevmeetMinutes:        https://meetings.opendev.org/meetings/ironic/2025/ironic.2025-08-25-15.03.html15:57
opendevmeetMinutes (text): https://meetings.opendev.org/meetings/ironic/2025/ironic.2025-08-25-15.03.txt15:57
opendevmeetLog:            https://meetings.opendev.org/meetings/ironic/2025/ironic.2025-08-25-15.03.log.html15:57
TheJuliaits all good15:58
JayFoh wow lol15:58
TheJuliaIt recorded your stuffs in the notes so \o/15:58
JayFhttps://review.opendev.org/c/openstack/ironic/+/958249 cores please land these? Trivial review...16:13
TheJuliadone16:24
JayFthe second patch in that stack is a regression fix, too16:25
TheJuliaJayF: why are you giving 2M to each thread?16:25
TheJuliais your machine *really* needing 2M per thread to launch?!16:26
JayFI took the number and made it bigger 16:26
JayFthat's as far as I went to pick the right number16:26
* TheJulia blinks16:26
TheJuliawow16:26
TheJuliaThat is a bit frightening16:27
TheJuliabut its just for local testing16:27
JayFI assure you for non-janky-tox-dev-environment I pay more attention16:27
TheJuliafolks can scream if we need to increase the default16:27
JayFalso I assumed that was in bytes16:27
TheJuliayeah, it is16:27
TheJuliasso, 2.5-ish16:28
JayF39 times the default, yeah, that was an off-by-order-of-magnitude error and not intentional16:29
JayFand 2x does the trick, updating the patch16:29
TheJuliaok16:30
JayFI was so flippant because I had a memory of doing like, 4x or something, then I did the math and realized it was ridic16:30
opendevreviewJay Faulkner proposed openstack/ironic master: Fix local-ironic-dev by setting stack size  https://review.opendev.org/c/openstack/ironic/+/95825016:31
JayFyep, two off-by-one errors: 65535*4 + add a zero on the end = the number that we have. So I did 4x the wrong number (off by one) and added a digit (off by another one)16:33
TheJuliaheh16:34
TheJuliaokay16:34
TheJuliaI *know* kernels can greatly impact thread stack starting size16:34
JayFI'm using gentoo-kernel-bin16:35
JayFwhich uses a very lightly modified fedora config16:35
TheJuliaI had what as functionlly a single threaded database which would launch the engine in it's own thread but then mutex across the client connections and it was super sensitive to that 16:35
TheJuliamy debian machine seems to be fine with it, but my fedora machine does seem to want it to be slightly higher16:36
TheJuliabut... it worked on my fedora machine without issues previously16:36
JayFI wonder if that is an indication we should bump the default overall.16:36
TheJuliaI'm wondering the same16:36
JayFThat's basically "the smallest possible memory footprint of a distinct thread", yea?16:37
JayFI don't think it's silly to pay 64k*300 threads (19.2MB) RAM to make it work by default in more places16:37
TheJuliasort of, its the default starting amount16:38
TheJuliawhich then gets allocated and not necessarilly used16:38
JayFso as I said, in default thread count, it's ~20MB of ram additional16:38
TheJuliaSo, its 64k now, afaik16:38
JayFyeah, so 19.2MB of ram in stack sizes for all 300 threads if we are at max16:38
TheJuliaso, doubling it seems reasonable to me, fwiw16:38
JayFand 2x that (an extra 19.2M) beyond that is worth it16:39
JayFack I'll abandon the local-ironic-dev change and push that update now()16:39
TheJuliak16:39
opendevreviewJay Faulkner proposed openstack/ironic master: Raise default IRONIC_DEFAULT_THREAD_SIZE  https://review.opendev.org/c/openstack/ironic/+/95846116:42
*** melwitt_ is now known as jgwentworth16:43
*** jgwentworth is now known as melwitt16:44
* dtantsur just out of a reboot and with little scrollback because bloody computers16:48
JayFit's okay, we just got done agreeing to rewrite in ruby on rails16:48
JayFotherwise you missed nothing important16:48
JayF;) 16:48
TheJuliaJayF: you forgot the best part, the explicit mandate to not have any single way to do addition.16:53
JayFthanks for discussion.add(that comment)16:54
JayFThe first "real" programming language I dabbled in was ruby: I said they had "optimistic driven design" meaning if you imagine a .whatever() exists on an object, it does.16:54
JayFlol16:54
dtantsurHallucinated things into existence before it become mainstream, right?16:59
JayFlol17:01
JayFI will say: I think `unless` is great17:01
* dtantsur nods17:01
dtantsurTheJulia: I'm looking at this logging snippet from the Ironic start-up and having a nagging feeling that even local calls now go through RPC: https://paste.opendev.org/raw/b08Twv3p9IZtL67Ge6YO/17:06
dtantsurPlease prove me wrong :)17:06
dtantsurWell, I cannot be wrong, can I? It's a singleprocess Ironic, there is no way to distinguish between API and conductor.17:07
dtantsurSo, anything that does objects.BlahBlah.blah_blah goes through RPC. Even the conductor start-up code that checks allocations and stuff.17:07
* dtantsur still hopes TheJulia proves him wrong somehow17:08
TheJuliayour not wrong17:08
dtantsurdamn17:08
TheJuliaAnd that is exactly what is happening because you cannot distingish between the two, really17:09
TheJuliaThere is a catch in the request handling logic for this, but yeah17:09
TheJuliaThe entire model technically allows *remote* conductors as well, but that is something we've never really done any thinking about aside from crazy idea pondering back in ?2023?17:09
dtantsurOkay, so I guess my idea with local RPC was pretty bad in the end, even if it let us progress quickly. I'll find a way to reap it out.17:10
TheJuliahonestly...17:10
dtantsurI don't think remote conductors will work in practice: our hash ring code also relies on database/objects, and hash ring is required for RPC :)17:10
dtantsurChecken->JSON->Egg17:10
TheJuliaI'd update the conductor launch process to reset the indirection flag on the primary object in the conductor start service17:11
dtantsurI'll do this if I don't find a way to get rid of all this mess :)17:11
opendevreviewDmitry Tantsur proposed openstack/ironic master: Reduce the number of RPC calls to traits API  https://review.opendev.org/c/openstack/ironic/+/95822617:12
TheJuliaeffectively undo https://github.com/openstack/ironic/blob/master/ironic/command/singleprocess.py#L63-L64 around https://github.com/openstack/ironic/blob/master/ironic/conductor/base_manager.py#L9017:12
TheJuliaSet it to None, and the objects shouldn't really be loaded yet in the conductor service process17:12
TheJuliabut was there *for* the launch of the api surface17:13
opendevreviewMerged openstack/ironic master: Fix setting IRONIC_THREAD_STACK_SIZE  https://review.opendev.org/c/openstack/ironic/+/95824917:13
dtantsurMakes sense. But if I can stop doing network calls on every sneeze, I'll go down that path.17:13
TheJuliait just turns off the indirection17:13
TheJuliaand thats fine for the conductor, its the cost to pay for the API17:13
TheJuliaI can put up a patch a little later, I'm working on a backport right now17:17
dtantsurTheJulia: please wait, I don't think we should go down this path at all17:17
opendevreviewDmitry Tantsur proposed openstack/ironic master: PoC: launch API in the same process as conductor  https://review.opendev.org/c/openstack/ironic/+/95846217:18
dtantsurLet's see what this ^^ shows17:18
dtantsurHeh, it seems to actually work. This is promising. I'll develop this idea further tomorrow.18:03
TheJuliaok18:03
opendevreviewMerged openstack/networking-generic-switch master: Document advanced Netmiko parameters  https://review.opendev.org/c/openstack/networking-generic-switch/+/95808019:53
iurygregoryTheJulia, can you W -1 https://review.opendev.org/c/openstack/ironic-prometheus-exporter/+/954870 ?19:56
TheJuliadone19:56
iurygregoryI'm updating to re-use most of the redfish part19:56
iurygregorytks :D19:57
TheJuliak19:57
TheJuliacid: are you planning on picking up 951055 this week ?20:00
* cid goes looking20:00
cidSo that is both a valid LP and a changeset, I guess you mean the change20:02
TheJuliaI guess it feels weird since because it is only changing the base config nothing else actually runs20:02
TheJuliayeah, the change, sorry20:02
cidSo, JayF, wanted to take over that change if I'm not mistaken20:03
JayFyeah I offered to take it over20:05
JayFdid some work on it to not a lot of success20:05
JayFI know what the path forward is, writing it on my todo list so I get around to it20:06
TheJuliaokay20:06
cid++20:10
cidDepending on how much you have on your plate, if you happen to only go as far as having the path forward as a comment on the change, I can also get it in.20:10
JayFthe problem is the path forward basically involves deleting and rewriting all our wsgi docs20:17
opendevreviewMerged openstack/ironic master: inspection: fix None case for inventory data  https://review.opendev.org/c/openstack/ironic/+/95837120:27
TheJuliayeah20:31
opendevreviewMerged openstack/ironic master: Raise default IRONIC_DEFAULT_THREAD_SIZE  https://review.opendev.org/c/openstack/ironic/+/95846120:32
JayF(this also is #ironic-week-prio) RFR https://review.opendev.org/c/openstack/releases/+/958489 [ironic] Cycle highlights for Flamingo/2025.220:52
TheJuliaI wonder if we can get steve's ngs work landed soon :)20:53
TheJulia(to mention, becuase he is really moving the needle there, overall)20:54
JayFI had the same thought when I saw it wasn't ready for highlights20:54
TheJuliaI think its more review starvations ince.. its ngs20:55
JayFyep20:56
JayFI've taken a look, I don't even remember if I +2'd because I was on the edge of my knowledge the whole time20:56
TheJuliaYeah, I saw, thanks!20:56
TheJuliaI need a "don't forget our networking stuffs" sign20:56
opendevreviewVerification of a change to openstack/ironic-tempest-plugin master failed: Replace deprecated assertItemsEqual  https://review.opendev.org/c/openstack/ironic-tempest-plugin/+/95358921:13
opendevreviewMerged openstack/ironic master: Direct return of vmedia action during in power failure  https://review.opendev.org/c/openstack/ironic/+/95814721:22
opendevreviewDoug Goldstein proposed openstack/ironic master: redfish: process inspection rules during inspection  https://review.opendev.org/c/openstack/ironic/+/95760923:17
cardoeuhh I think that delta got really small like that now.23:21

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