Friday, 2025-06-06

*** bauzas7 is now known as bauzas00:49
opendevreviewFriedrich Hiekel proposed openstack/nova master: Fix nova-scheduler placement error  https://review.opendev.org/c/openstack/nova/+/95193608:00
stephenfinsean-k-mooney: Could you add this follow-up to your review queue? https://review.opendev.org/c/openstack/nova/+/951640/09:42
sean-k-mooneyim still going though my emilas this morning so i can review it now09:43
sean-k-mooneyok so its a followup to api: Stop using wsgi.Controller.api_version to switch between API versions09:43
stephenfinyup09:44
stephenfinper gmaan's comments on same09:45
sean-k-mooneycool done09:47
sean-k-mooneyassumign the parent pass ci this time it should be mergable when ever it gets to that point09:47
opendevreviewStephen Finucane proposed openstack/nova master: api: Address issues with hypervisors APIs  https://review.opendev.org/c/openstack/nova/+/95086710:39
opendevreviewStephen Finucane proposed openstack/nova master: api: Address issues with instance actions API  https://review.opendev.org/c/openstack/nova/+/95194110:45
opendevreviewBalazs Gibizer proposed openstack/nova master: Remove unused config options  https://review.opendev.org/c/openstack/nova/+/95194511:31
gibisean-k-mooney: stephenfin: a follow up for WSGIServer removal ^^11:32
sean-k-mooneydidnt you propose that before i tough i reveied it11:33
stephenfinI love deleting code11:33
stephenfindone11:33
gibithanks11:33
sean-k-mooneyoh there are more cases we missed.11:34
gibiyepp, I just detected them when I started looking at the deeventletification of nova-api11:34
sean-k-mooneyok that going to conflcit with my pre-commit updates but ill approve and i cna update the last patch for bandit11:36
sean-k-mooneystephenfin: since your about mind looking at https://review.opendev.org/q/topic:%22update-precommit%2211:36
stephenfindone to11:39
stephenfin*too11:39
sean-k-mooneythanks, ill need to rebase the bandit one later but ill do that after the other changes have merged11:40
stephenfingmaan: sean-k-mooney: gibi: If any of you have the time/inclination, I could do with some thoughts on how to approach https://github.com/stephenfin/nova/commit/2d14a58f6310861b426359d71fba085e924e0538 (not pushed yet to avoid overwhelming Gerrit more than I have already)11:56
stephenfinthe tl;dr: is that our use of the "soft" additionalProperties validator doesn't work when oneOf is used11:56
sean-k-mooney... 4/6 just for servers. better then all in one but that going to be fun to review...11:57
stephenfinThat validator deletes unrecognised ("additional") keys from the input data. That's all fine and dandy normally, but when you're using 'oneOf' with 2 or more subschemas with non-overlapping keys, then keys that are invalid for an earlier schema but which are valid for a later schema will end up getting deleted11:58
sean-k-mooneystephenfin: so it nice an short but is there a specic point you want input on11:58
stephenfinyeah: how on earth do we work around this? 😅11:59
sean-k-mooneyjsut reading now11:59
sean-k-mooneyso ok were are you using onof there11:59
sean-k-mooneyah12:00
sean-k-mooneyso either we get teh reservation_id12:00
sean-k-mooneyor the fulll server responce?12:00
stephenfinyup12:01
sean-k-mooneycan we set addtionalProperties true in the reservation_id path12:01
gibistephenfin: I'm a bit low on context. Why does the validator delete keys based on earlier schemas?12:01
stephenfinI didn't know that was a thing until I'd to write the schema for it12:01
stephenfingibi: sean-k-mooney: Here's a much smaller example https://paste.opendev.org/show/bpifVj7I2TTaQtFwVj4T/12:01
sean-k-mooneystephenfin: reservation id is only used in multi create12:02
stephenfingibi: https://github.com/openstack/nova/blob/master/nova/api/validation/validators.py#L18212:02
stephenfinfirst added here https://github.com/openstack/nova/commit/4fefd25c807c087694a0e66f4d91fe0e64ef3f1812:02
sean-k-mooneylet me try something locally for one sec12:03
stephenfingibi: the idea behind that appears to be to allow users to specify provide additional properties in requests when using the legacy v2 API, but to strip them out and ignore them so that e.g. they can't accidentally trigger code paths for newer API versions12:03
stephenfins/specify provide/provide/12:04
stephenfinbut if you apply that to that minimal reproducer I just shared, and make a request that satisfies the second subschema (e.g. {"bar": "hello, world"}) but not the first, we attempt to match against the first one and strip out properties that are not permitted by that12:05
gibistephenfin: I see so this is only for the legacy v2 compatible mode12:05
stephenfinyes12:05
gibiso the rule would be to strip out only those properties that are not in the oneOf branch that eventually matched. But I guess this is not easy to impelement in that context12:06
stephenfinI've been sitting on this for a few months, and now that things are merging rapidly (thanks sean-k-mooney, gmaan), it's properly time to figure out a solution 😅12:06
stephenfinno, unfortunately not12:07
stephenfinjsonschema iterates through the oneOf entries and processes each subschema separately, so we have no visibility into anything "above" the subschema, if that makes senes12:08
stephenfin*sense12:08
gibithen the best we can do is that for those schemas that has oneOf we relax the current rule and always preserve additional properties12:09
stephenfinYeah, that's where I'm thinking we'll end up too. I just don't know the consequences of same12:10
gibithis is a compatibility layer that should not really used any more12:11
stephenfinI was thinking I could move this "delete additional properties" logic into the various affected methods themselves, but that's a big list and I don't know if there's any way to know we're handling a v2 request vs. a v2.1+ request12:11
gibiI would inclined to simply deprecate it as we cannot maintain it any more12:11
stephenfinyeah, that's the other option: delete v212:11
sean-k-mooneyis something like this valid https://paste.opendev.org/show/bkS797jQUZZoSNXnhlvO/12:12
* stephenfin tries12:12
sean-k-mooneyand if so is oneOF valid as the value of required12:12
sean-k-mooneyalso have you asked gemini :)12:12
sean-k-mooneyok it has a idea12:14
sean-k-mooneyhttps://paste.opendev.org/show/bMERk0Vt08kwAdUW6tLi/12:14
sean-k-mooneylet me ask it with the full example12:14
gibihm does the validator in the _soft_validate_additional_properties sees the whole big schema? or has some kind of memory when the validation descends the tree? Could we use that validator object to stop applying the rule in the subtree of all oneOfs dinamically?12:14
stephenfinsean-k-mooney: ah, no that won't work (and I actually recall trying it before): you can't combine additionalProperties with oneOf https://github.com/python-jsonschema/jsonschema/issues/19312:15
stephenfinhttps://ajv.js.org/faq.html#additional-properties-inside-compound-keywords-anyof-oneof-etc12:16
stephenfingibi: it does not, at least not with oneOf. It gets handed the subschemas individually12:17
stephenfinand the issue is that e.g. if I'm given a body like {'server': {...}, 'invalidkey': 'stuff'} then I probably want to strip out 'invalidkey' (a made up example but you get my point)12:18
sean-k-mooneyhttps://paste.opendev.org/show/828072/12:20
sean-k-mooneystephenfin: ^ still readign that but that what gemini thinks about the problem12:20
stephenfinNot a fan of approach 1. I really don't want to encode logic in our schemas. They're already complex enough12:22
sean-k-mooneyfor this specific case i tought that was possibel ok if it was only this one case we neede to handel for 2.0 validation12:23
stephenfinHmm, actually: maybe I can just disable response schema validation entirely for v2.0...12:23
sean-k-mooneythat was gong to be my other question12:23
sean-k-mooneyv2.0 is technially unversioned12:23
stephenfinIt doesn't fix the problem but it does side-step it12:23
sean-k-mooneyso it cant really ahve a schema12:23
sean-k-mooneyby the way this coudl also be a bug12:24
sean-k-mooneylike 2.0 and 2.1 are ment to be identical12:24
sean-k-mooneythe only delta is the micoverion endpoint12:24
sean-k-mooneybut servers should not change12:25
stephenfinthey're mostly identical: look at I4c066075165f69d355a74979808fa0ad8d6546ab for example12:26
stephenfin(commit 4a29486f4cf15720d09ed0ed86c47cd07f5cd14a)12:26
sean-k-mooneywell schduler hint need addtional properteies true alwasy12:27
sean-k-mooneyeven in 2.10012:27
sean-k-mooneythat is not a 2.1 vs 2.0 compatiablity thing12:27
stephenfinyou're right, good point12:28
sean-k-mooneyschduelr hint are alwasy exstenible becuase tehy are one of the ways we provie to oeprator writing there own schduler filter12:28
sean-k-mooneythey are however like extra specs12:28
sean-k-mooneyin that we can have diffintions for the standard ones12:29
sean-k-mooneystephenfin: if we only have two examples to choose between i dont think the if,then,else is much more complx the oneOF12:31
sean-k-mooneyso i woudl go with that for now12:31
sean-k-mooneyboth are conditionals its just the if is more explcit12:31
sean-k-mooneyif you need multiple hten i woudl vote for not validaing repocnes for 2.0 at all 12:32
sean-k-mooneybut we shoudl see what  others think12:32
sean-k-mooneystephenfin: we do not have an exmaple of this for 2.1+ right?12:33
stephenfinNo, it's not an issue for v2.1 since the soft additional properties stuff only applies to v2.012:34
sean-k-mooneystephenfin: actully i asked gemini for some ohter variation that aovid the repition let me link them12:35
sean-k-mooneyhttps://paste.opendev.org/show/b7wJJXIE4edOqlCZ3Ijj/12:37
sean-k-mooneycan we use unevaluatedProperties?12:40
sean-k-mooneyif so option 3 is an option, 1 and 2 are mostly the same it jsut comes down to an if or switch semantic to select the correct one12:41
sean-k-mooneyi would go with 3>2>1 in that order12:42
opendevreviewStephen Finucane proposed openstack/nova-specs master: Remove v2.0 API  https://review.opendev.org/c/openstack/nova-specs/+/95194912:44
stephenfinsean-k-mooney: gibi: gmaan: Would be interested in hearing if there's a solid reason not to do ^12:44
sean-k-mooneyhum that also an approch if we do that can we add v3 as a perfect copy of 2.100 :)12:44
sean-k-mooneystephenfin: please look at the previsou paste if you didnt see that howevre12:45
stephenfinI suggested that before. dansmith said no12:45
sean-k-mooneyhow about v412:46
sean-k-mooneythat woudl be at least new12:46
gibistephenfin: in general I'm OK to remove v2.0 it is old as hell and right now it poses problems for us. I'm also OK to just sidestep the problem and disable response validaton in 2.012:49
sean-k-mooneymy personal prefence woudl be to add v3 in 2026.1 and remove v2.0 while keeping all of 2.1-2.100 until 2028.1+12:49
sean-k-mooneyand in 2028.1 we woudl see if enough peopel had moved to v3 do deprection 2.1+ or not and set a deadlien for that but basiclly feature freeze that code next cycle.12:51
sean-k-mooneyby feature feeze i just mean no more 2.x microverions12:51
sean-k-mooneynot duplicate teh code12:52
gibiwhere does the v3 and v4 idea coming from? Could we just have 2.1, remove 2.0 and that is it?12:54
sean-k-mooneygibi: that was me just saying removing v2.0 specificly i think is good12:55
sean-k-mooneygibi: but as i have argued for years i think its time for a v312:55
sean-k-mooneyor to raise our min version12:55
sean-k-mooneyi know dan dose not want to od that12:55
sean-k-mooneyand i dont thnk we will have time to even consider a v3 this cycle12:55
sean-k-mooneyim just frustrated that we wont even consider doing it again12:56
sean-k-mooneyi think it activly makes our rest api wrose12:56
gibiahh the raising of the min version.12:56
sean-k-mooneyya so if we remove 2.0 we efectivly faise ti to 2.112:56
gibiyeah here we don't need it but yes if it helps deleting code then we can consider raising the min version12:56
sean-k-mooneywhich ithink is fine since they should be identical12:56
sean-k-mooneyi am supprtive of stephenfin proposal to do the minium possible min_virsion in crease form 2.0 to 2.112:57
sean-k-mooneyby removeing 2.012:58
sean-k-mooneybut once we are done with eventlet removal and the open api schema work12:58
sean-k-mooneyand service/manager policy work12:58
sean-k-mooneythen i think we shoudl revisit v3 or raisgin the min version to somewhere in the 2.77 ish range12:59
sean-k-mooneyim not pusshign for tha tnow but i thik we shoudl at least discuss how this woudl work in the next 18 months12:59
gibiyeah I think it make sense to discuss it and collect a list of things we would gain out of such a change13:00
sean-k-mooneystephenfin: you still have not responded on the other schema permutaions https://paste.opendev.org/show/b7wJJXIE4edOqlCZ3Ijj/ do any of those look reasonabel to you as i said my prefernce there would be 3>2>113:02
sean-k-mooneyunevaluatedProperties if viable seam clean and consise13:02
gibion a totally independent topic. I just learned today that `openstack server list` triggers two independent full scatter-gather calls one for getting the instances (obviously needed) and one for getting the bdms for the instances (not so obvious). 1) https://github.com/openstack/nova/blob/68c2341b765a22b9b81894d2ff3b21fd5f8632ec/nova/api/openstack/compute/servers.py#L326 13:02
gibi2)https://github.com/openstack/nova/blob/68c2341b765a22b9b81894d2ff3b21fd5f8632ec/nova/api/openstack/compute/servers.py#L342 and https://github.com/openstack/nova/blob/68c2341b765a22b9b81894d2ff3b21fd5f8632ec/nova/api/openstack/compute/views/servers.py#L49713:02
stephenfinsean-k-mooney: sorry, I'd just assumed we were going to skip validation for response bodies and be done with it13:03
sean-k-mooneygibi: hum thats unfortunet13:03
sean-k-mooneygibi: i assume we cant pass an arge to do the join egerly13:04
elodilleshi folks, i know thay you are busy with other things, but there is a small "tool" change i'd appreciate you would review and merge if possible (yeah, it's a small fix for backport validator, related to unmaintained branches :/): https://review.opendev.org/c/openstack/nova/+/94962813:05
elodilless/thay/that/13:05
gibielodilles: +213:06
sean-k-mooneylooks fine to me i guess13:06
sean-k-mooneyit is one of the first times we have had to skip eols13:06
gibisean-k-mooney: we might, but the server/view code is entered from different places so we should only conditionally do the join if we know it will be used13:06
stephenfingibi: sean-k-mooney: thanks for the help https://github.com/stephenfin/nova/commit/2630daf37c8adf4b443c80e66139ea6285c04eae13:07
stephenfinwill push all those once the bulk of what's already up on gerrit has merged13:07
elodillesthanks gibi sean-k-mooney o/13:08
sean-k-mooneygibi: im on a call but we have someting like "expected_filds" or something like that to contole which filed are lazy loaded on the instance object13:35
sean-k-mooneyi dont knwo if we can use that in soem way13:35
sean-k-mooneyi was thinkig of https://github.com/openstack/nova/blob/master/nova/objects/instance.py#L77C5-L10113:37
opendevreviewBalazs Gibizer proposed openstack/nova master: Run nova-api and -metadata in threaded mode  https://review.opendev.org/c/openstack/nova/+/95195713:46
gibisean-k-mooney: yeah we can ask for the join, the problem is that there are multiple ways reaching that calls and some will use the bdms later some won't. Also the way how this is built up make is pretty hard to untangle them. It is not impossible to refactor this but I decided not to try it now13:48
gibibtw if https://review.opendev.org/c/openstack/nova/+/951957 works then that is a nice surprise and an easy win 13:48
gibilocally it works for me but I need the full tempest run from nova-next to believe in it13:49
sean-k-mooneygibi: well i had workign versions last cycel so it really wont take much14:00
sean-k-mooneygibi: as in the api was the one of the first thigns i thied to move so with the infra you have added im expict that to not be supper complx to get working14:01
sean-k-mooneygibi: and yes scater gatther is the only use of eventlet spwan in them14:02
sean-k-mooneythat why i suggested starting with the api14:02
sean-k-mooneygibi: i know i need to go back adn review the most recent version but i think schduler api and metadta are doabel by m214:03
gibiyeah now that I see api working locally I believe that it is doable for m214:05
sean-k-mooneyit might be worth askign clark to look at https://review.opendev.org/c/openstack/devstack/+/948436 again14:06
sean-k-mooneyalthough it will be a few days in any case before we get that far in the series14:07
gibigood point. I pinged clark in the review now and I can ping him on IRC next week14:09
*** haleyb is now known as haleyb|out14:17
opendevreviewMerged openstack/nova master: [tool] Fix backport validator for non-SLURP  https://review.opendev.org/c/openstack/nova/+/94962815:58
opendevreviewElod Illes proposed openstack/nova stable/2025.1: [tool] Fix backport validator for non-SLURP  https://review.opendev.org/c/openstack/nova/+/95196816:03
opendevreviewElod Illes proposed openstack/nova stable/2024.2: [tool] Fix backport validator for non-SLURP  https://review.opendev.org/c/openstack/nova/+/95196916:04
opendevreviewElod Illes proposed openstack/nova stable/2024.1: [tool] Fix backport validator for non-SLURP  https://review.opendev.org/c/openstack/nova/+/95197016:05
noonedeadpunkI'm trying here to setup hugepages for one of my computes, but instance gets filtered out at NUMATopologyFilter with no good candidates https://github.com/openstack/nova/blob/master/nova/scheduler/filters/numa_topology_filter.py#L115-L12116:29
noonedeadpunkcompute object seems to be having mempages https://paste.openstack.org/show/bRHPMmumA43t0KHk186K/16:31
noonedeadpunkI wonder if that's might be also due to PCI Passthrough attempt, as that's I guess what might not work with numa placement nicely?16:33
noonedeadpunkflavor defined as `hw:cpu_policy='dedicated', hw:mem_page_size='2MB', hw:vif_multiqueue_enabled='true', trait:CUSTOM_GPU='required', pci_passthrough:alias='A10_FULL:1'`16:34
noonedeadpunkand obviously once I unset hw:mem_page_size - scheduling passing nicely16:35
opendevreviewsean mooney proposed openstack/nova master: [DNM] testing py3.13 eventlet bug workaround  https://review.opendev.org/c/openstack/nova/+/95174916:35
sean-k-mooneyyou can have both enabled16:57
sean-k-mooneyhowever if you have a numa vm by default we require the pci device request by the guest to come form the same numa node as the guest cpus/memory16:58
sean-k-mooneynoonedeadpunk: you can diabel that  in your pci config16:58
sean-k-mooneynoonedeadpunk: in your pci alias you can set https://docs.openstack.org/nova/latest/configuration/config.html#pci.alias numa_policy=preferred17:00
sean-k-mooneynoonedeadpunk: you can also set that in the flavor which is generally simpler17:00
sean-k-mooneyi would recomend setting hw:pci_numa_affinity_policy=preferred or hw:pci_numa_affinity_policy=socket17:02
sean-k-mooneypreferred is the most relaxed policy 17:02
sean-k-mooneyi woudl also suggest using hw:mem_page_size=large17:02
noonedeadpunklarge is 1G?17:05
noonedeadpunklet me try setting policies then...17:06
noonedeadpunkas I tried couple of options, like hw:numa_nodes=117:06
noonedeadpunknah, didn't fly somehow... I guess best thing to do for me now - go for a weekend and check on that with fresh eyes after it :)17:12
gmaanabout 2.0 removal. I am not sure what is benefits if we keep v2.1 as min version. 2.0 is just a endpoint without any change from v2.1 so no overhead of maintenance. This will just break user using 2.0 endpoint without giving any gain 17:12
sean-k-mooneynoonedeadpunk: large is anything that isnt small i.e. anything other then 4k default pagesize17:21
noonedeadpunkaha, ok17:22
sean-k-mooneynoonedeadpunk: if you have not turned on debug yet do that on monday in the schduler 17:22
sean-k-mooneyyou will need that to discover why 17:22
noonedeadpunkI did that on scheduler17:22
sean-k-mooneyack17:22
noonedeadpunkthat's where I grabbed cpu capabilities17:23
noonedeadpunk*compute 17:23
sean-k-mooneyso your flavor was askign for pinned cpus and hugepages17:23
noonedeadpunkyeah17:23
sean-k-mooneydid you actully configure cpu_dedicated_set ?17:23
noonedeadpunkand PCI device17:23
sean-k-mooneyin the comptue section of the nova.conf17:24
sean-k-mooneyon the compute node17:24
noonedeadpunknope, I did not, I just set reserved_host_cpus = 2 and that's it17:24
noonedeadpunkbut it has no VMs running, as is in the isolated aggregate17:24
sean-k-mooneyok well that probaly the issue17:24
sean-k-mooneywhat release are you testing with17:24
noonedeadpunkCaracal17:25
noonedeadpunkwhen I drop hugepages from properties - it does allocate pinned cpus though17:25
sean-k-mooneydo you have https://docs.openstack.org/nova/2024.1/configuration/config.html#workarounds.disable_fallback_pcpu_query defiend17:26
noonedeadpunkor you saying that without hugepages it does not go through the numa filter...17:26
noonedeadpunknope17:26
sean-k-mooneyok so its falling abck17:26
sean-k-mooneyso any of hugpeages, pinning or an explcit numa topolgoy will result in the schduelr usign the numa filter to validate the host17:27
sean-k-mooneyhow much hugepages did you allocate on the host? and how much ram are you asking for in the vm17:27
noonedeadpunkok, here where the problem can actually be....17:28
noonedeadpunkas I kind of took example from docs for now for some POC17:28
noonedeadpunkso it's 1024*2MB17:28
noonedeadpunkand I'm asking for *really* big instance of 200Gb RAM17:28
noonedeadpunkSo what I should be doing - is to split available ram into blocks and that num_pages * page_size == ram?17:29
sean-k-mooneywould you mind pasting the output of virsh cabalities17:30
sean-k-mooneyi can advise based on the size of the host with that17:30
noonedeadpunkhttps://paste.openstack.org/show/bYi3OvxXJbP6Grx275O7/17:31
noonedeadpunkbut we plan to run there like... 4 VMs max?17:31
sean-k-mooneyok so you have 2 numa nodes17:32
noonedeadpunkyup17:33
noonedeadpunkno HT17:33
sean-k-mooneyand you allcoate 2 GB of 2MB hugepages per numa node17:33
sean-k-mooney<pages unit='KiB' size='2048'>1024</pages>17:34
noonedeadpunkRight... And I guess that's where the problem is17:34
sean-k-mooneynoonedeadpunk: try creating a 1G vm that asks for 1 cpu with hw:mem_page_size=large17:34
sean-k-mooneyif that works all you need ot do is decied how you want to partion the host ram17:34
sean-k-mooneyi.e. how much to reserve exclusivly for hugepages17:34
noonedeadpunkso just to double check where I was wrong. When I set `hw:mem_page_size='2MB'` in flavor - what needs to happen is that flavor ram / hw:mem_page_size = amount of available on compute hugepages?17:36
sean-k-mooneylooks like you have 512GB total which 500 is usable17:36
noonedeadpunkyeah, sounds about right17:36
noonedeadpunkso 256 on single numa node17:36
sean-k-mooneyya i woudl start conservity ly and allocage 480GB of hugepages on that system total17:37
noonedeadpunkbut actually seeing virsh capabiltities I'm really understanding where my logic went off now17:37
noonedeadpunk++17:37
sean-k-mooneythat leave 32GB for the host17:38
sean-k-mooneywhcih with only 4 vms total of 120GB each  should be plent17:38
sean-k-mooneyyou can obvioulsy slice that up and run more or less vms17:39
noonedeadpunkthere's a limit on pci deviuces... but also it's a poc more or less17:39
sean-k-mooneyso you need to allcoate 245760 2MB hugepages i think17:39
sean-k-mooneyhugepagesz=2M hugepages=24576017:40
sean-k-mooneywith that said the server is large enough that you might consider using 1G pages just to have faster boot times17:41
sean-k-mooneyin which case the kernel command line would be `hugepagesz=1G hugepages=480`17:41
sean-k-mooneyyou can allcoate these at runtim too but its recommend to do it at boot17:41
sean-k-mooneydoign it at runtime is best effort17:41
noonedeadpunkoh, how can I allocate at runtime?17:42
noonedeadpunkas that's part for osa I'm missing now :)17:42
noonedeadpunkand I don't want to reboot hardware on grub changes there17:42
sean-k-mooneyyou echo a value in sys fs17:42
noonedeadpunkaha17:42
noonedeadpunkright17:42
sean-k-mooneylet me get you an example17:42
sean-k-mooneyyou can do it with systemd or udev rules too17:43
noonedeadpunkI'm changing dev-hugepages.mount as well17:43
sean-k-mooneyecho 1024 | sudo tee /sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages17:44
sean-k-mooneynova and libvirt have caches so you need to restart nova-compute and libvirt to make sure they see the change17:44
sean-k-mooneyso you echo the desired ammount17:45
sean-k-mooneycat that value and you can see how many are there17:45
sean-k-mooneywehn you write to it it will block until its done i think17:45
noonedeadpunkok, trying that17:47
sean-k-mooneyallocating 1G pages at runtim normally does nto work because there often isnt enouch free contigous 1G adress spaces17:47
noonedeadpunkfriday evening - perfect time :)17:47
sean-k-mooneynoonedeadpunk: well we can pick it back up on monday too. i was just leaving anyway17:48
noonedeadpunkI think I will try to go with 2MB still, as I can recall also your advice about live migrations17:48
sean-k-mooneybut ya i think nova was workign fine you just asked for more resocues then were aviable17:48
noonedeadpunkthat qemu would operate on page size for migration17:48
noonedeadpunkso I'm not sure I wanna do it that big17:49
sean-k-mooneyya it jsut tends to work betterr for vms in general17:49
noonedeadpunkYeah, I think this what was the issue17:49
noonedeadpunkfwiw, I also got nowhere with migrations crashing on qemu, when more then 80% of memory is used by stress...17:49
sean-k-mooneyoh anything interssting17:50
sean-k-mooneyon you said no where17:50
sean-k-mooneyok17:50
noonedeadpunknot really.. except that 20GB for stress out of 32GB VM is working, but 14GB stress out of 16GB VM crashing17:50
noonedeadpunkso it's not amout of memory or intensity - it's somehow percentage of VM memory which matters17:51
noonedeadpunkwhich makes no sense to me at least17:51
sean-k-mooneyya that supper odd to me too17:51
noonedeadpunkI also tried post copy with no difference17:51
sean-k-mooneyand it was qemu that was rashing not the guest kernel OOMing right17:51
noonedeadpunkyeah17:52
noonedeadpunkmigration failed, reason=crashed in qemu logs17:52
sean-k-mooneyya i havnt seen that or herd other reports17:52
sean-k-mooneythat to me say qemu bug17:53
noonedeadpunkand tried on different generations of intels17:53
sean-k-mooneybut i dont knwo what it could be17:53
noonedeadpunkwas very easy to reproduce - get 16gb VM on hypervisor with ubuntu 22.04 or 24.04, on VM run `screen stress-ng --vm 4 --vm-bytes 14G --vm-keep`; live migrate -> profit17:55
noonedeadpunkalmost 100% reproduction rate for me17:56
noonedeadpunkmaybe 98... not sure17:56
noonedeadpunkyeah, once I incvreazed amount of pages, instance expectedly spawning18:04
noonedeadpunkso thanks a ton for help!18:06
noonedeadpunkthese just somehow did not add up for me18:06
gmaanstephenfin: stephenfin gibi I replied on the v2.0 removal spec. It will break users as v2.1 is not same as v2.0 from user perspective - https://review.opendev.org/c/openstack/nova-specs/+/95194918:08
gmaanif somehow we can know no one use v2.0 then I will be happy to remove18:08
gmaanand my take that time will be to bump the min microversion also but we have to be very careful about this change as it will be big impact on users18:09
sean-k-mooneyi guess installer can choose not to deploy 2.0 today we dotn in our new installer and other tools already dont deploy it too and have not for a while18:16
noonedeadpunkIn OSA v2.1 seems to be deployed like always19:08
noonedeadpunkor well. Since Liberty: https://review.opendev.org/c/openstack/openstack-ansible/+/22783919:08
gmaanmelwitt: about project-admin comment in manager role spec, sean-k-mooney and I replied but I agree to add some explanation in spec. While I am doing that, I wanted to check if it is ok to add that explanation in follow up and we merge current change or you would like to see that in this change itself. https://review.opendev.org/c/openstack/nova-specs/+/937650/9/specs/2025.2/approved/policy-manager-role-default.rst#2919:17
gmaaneither is ok for me19:17
opendevreviewMerged openstack/nova master: api: Stop using wsgi.Controller.api_version to switch between API versions  https://review.opendev.org/c/openstack/nova/+/93636620:17
melwittgmaan: cool thanks, I'm reading through. I don't think it's necessary to follow up or change it, it was just a bit of context I was missing or didn't already know20:42
melwittthis whole time I thought project-admin meant admin but only for a given project. if it's global, then I don't understand what's the difference between system-admin and project-admin then 😛 20:43
melwittbut the important point is that if project-admin is global then that makes it obvious the usefulness of project-manager20:44
gmaanmelwitt: yeah, by doing back and forth on those admin, we end up keeping only one admin (legacy admin) who can do things on system level21:49
gmaanif we could have system admin then it could make admin at different level more clear/safe to use but that confused operator instead of helpful :)21:51
opendevreviewMerged openstack/nova-specs master: Propose API policy manager role spec  https://review.opendev.org/c/openstack/nova-specs/+/93765022:38

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