Earlier  
Posted Nick Remark
#openstack-nova - 2019-08-21
18:57:35 melwitt heh
19:10:05 melwitt I was panicking with the potential loss of my launchpad bug text after a 503 "TimeoutError" but found when I reloaded the page, it posted everything I had written
19:10:16 melwitt phhheeewwww
19:13:21 mriedem happens a lot, just have to keep refreshing
19:17:34 openstackgerrit Adam Spiers proposed openstack/nova master: Add extra spec parameter and image property for memory encryption https://review.opendev.org/664420
19:21:23 openstackgerrit Adam Spiers proposed openstack/nova master: Extract SEV-specific bits on host detection https://review.opendev.org/636334
19:21:34 openstackgerrit Adam Spiers proposed openstack/nova master: Add and to config.py https://review.opendev.org/636318
19:22:51 mriedem melwitt: i think i have an idea for how to make one of multiple rps fail to set inventory in aggregate in https://review.opendev.org/#/c/640898/11
19:22:56 mriedem add allocations to one of them
19:24:04 openstackgerrit melanie witt proposed openstack/nova master: Make a failure to purge_db fail in post_test_hook.sh https://review.opendev.org/677806
19:25:01 melwitt mriedem: nice! thanks, I was stumped about that
19:25:19 openstackgerrit Adam Spiers proposed openstack/nova master: Add extra spec parameter and image property for memory encryption https://review.opendev.org/664420
19:26:28 openstackgerrit Adam Spiers proposed openstack/nova master: Extract SEV-specific bits on host detection https://review.opendev.org/636334
19:26:42 openstackgerrit Adam Spiers proposed openstack/nova master: Add and to config.py https://review.opendev.org/636318
19:28:40 mriedem melwitt: same, until about 5 minutes ago :)
19:29:50 melwitt \o/
19:29:56 mriedem looking at the placement code i'm not totally sure if it handles the "drop inventory below what's allocated but don't remove the resource class" or if it's just "can't remove a resource class inventory that has allocations" - i see the latter in the placement code but not sure about the former, but i'm pretty sure it enforces that
19:29:58 mriedem efried: ^ right?!
19:31:08 mriedem hmm
19:31:08 mriedem https://review.opendev.org/#/c/640898/11
19:31:09 efried mriedem: You can reduce inventory below what's allocated. You can't set total to zero (I'm 95% sure of that, would have to check).
19:31:10 mriedem ops
19:31:22 mriedem efried: not before 1.26 anyway..
19:32:09 mriedem yeah so if your allocations exceed capacity it only logs a warning
19:32:10 mriedem https://github.com/openstack/placement/blob/master/placement/objects/resource_provider.py#L619
19:32:35 mriedem if you try to remove a resource class entirely that has allocations it'll fail https://github.com/openstack/placement/blob/master/placement/objects/resource_provider.py#L84
19:33:01 mriedem so melwitt i guess one of the providers has to have some resource class inventory and a consumer is using that rc, and then in set inventories you drop/omit that rc,
19:33:05 mriedem it could just be some CUSTOM_FOO in your test
19:33:25 melwitt ah ok
19:33:47 melwitt sophisticated
19:35:22 mriedem efried: can't set total to 0 but you can set reserved = total with 1.26
19:35:27 efried yes
19:35:41 efried we did that specifically so you could take an ironic node out of the pool
19:35:46 mriedem yeah i know
19:36:04 mriedem mel is trying to trigger a failure on one provider's PUT inventories out of a set of providers in an aggregate
19:36:32 mriedem anyway, think it's figured out, i just didn't realize placement would let you do the other thing here https://github.com/openstack/placement/blob/master/placement/objects/resource_provider.py#L619
19:36:41 efried does it matter what the failure is?
19:36:50 efried You could PUT a resource class that doesn't exist yet
19:37:20 melwitt like a custom class placement doesn't yet know about?
19:37:23 efried yeah
19:37:40 melwitt ahhh that would be easier
19:38:33 efried (careful if you're trying to drive this stuff through the report client - some paths will automatically ensure RCs for you)
19:38:33 melwitt I was thinking inside the box of the standard classes
19:38:48 efried well, you could make those fail too by setting total=0 :)
19:38:52 melwitt this is for osc-placement so should be safe there
19:39:10 efried or total=foo for that matter
19:39:42 melwitt ok, well, thanks for making this sound really stupidly easy :P
19:39:48 efried hell, getting an inventory PUT to *fail* is easy!
19:39:55 efried getting it to *succeed* is the hard part
19:39:58 melwitt well hang on
19:40:06 melwitt needs to fail for only one RP though
19:40:23 efried are you putting multiple inventories at once?
19:40:23 openstackgerrit Adam Spiers proposed openstack/nova master: Apply SEV-specific guest config when SEV is required https://review.opendev.org/644565
19:40:28 efried like via a single REST call?
19:40:39 melwitt this is a new --aggregate command which will loop over RPs in an aggregate and do the same inventory set on all of them
19:40:43 melwitt and I need to fail one in the middle
19:40:57 efried right, so you need to fail one (entire) REST call in a loop of REST calls
19:40:59 melwitt for test coverage for a "log error and continue" behavior
19:41:00 melwitt yeah
19:41:12 efried so yeah, you can just make a bogus inventory value in that one call
19:41:25 efried which is kinda what you're talking about doing I guess.
19:41:29 openstackgerrit Adam Spiers proposed openstack/nova master: Enable booting of libvirt guests with AMD SEV memory encryption https://review.opendev.org/666616
19:41:58 melwitt yeah but that's not what the command wants to do, it does the same 'set' for each
19:42:40 melwitt ideally I'd want to muck with one of the RPs ahead of time such that it would fail an identical request while the others succeed
19:43:00 melwitt so I think I will have to do the allocation thing
19:45:26 efried melwitt: Yeah, you can add a CUSTOM_FOO to (only) that RP and create an allocation against it. Then since you're PUTting the same inventory (which presumably lacks CUSTOM_FOO) against all the providers, it'll fail for that one since it would amount to removing the CUSTOM_FOO inventory.
19:45:30 efried Is that what mriedem suggested?
19:45:46 melwitt yes
19:45:51 efried smart man
19:45:56 melwitt yup
19:55:42 melwitt mriedem: how are you finding the good link to the post_test_hook run under ara-report?
19:56:26 mriedem you know to get to the ara-report right? https://0bde141365cc25860c5b-0b668b63edb9a2dd0711fb78b2335400.ssl.cf1.rackcdn.com/672840/11/check/nova-next/daad30a/ara-report/
19:56:32 melwitt yeah
19:56:45 mriedem i find the post.yaml with 1 task after the devstack-tempest run
19:56:47 melwitt oh, I was clicking the > arrow
19:56:58 melwitt and just saw a ton of hashes
19:56:59 mriedem expand that, then click on the 'changed' box
19:57:05 melwitt thanks
19:57:09 mriedem that gives you a popup,
19:57:18 mriedem then hit the chain link icon in the top right
19:58:47 melwitt got it, thank you
20:05:46 mriedem efried: reading your reply to alex's thread, why do you say that the numa and pci fields in the instance migratoin context are hypervisor specific? as far as i know they aren't, since they are used by libvirt and i think the hyperv driver as well during moves
20:06:11 efried mriedem: then they're specific to libvirt and hyperv.
20:06:24 efried that's luck more than anything else
20:06:31 mriedem you mean because they wouldn't work for powervm or what?
20:06:43 efried yeah, that's the example that springs to my mind obviously.
20:07:34 efried also pretty n/a for ironic if I'm not mistaken.
20:07:45 mriedem ironic doesn't migrate
20:07:50 mriedem but yeah
20:08:03 efried so like, *really* n/a :P
20:08:07 mriedem those fields are only populated if the instance has numa/pci stuff
20:08:11 mriedem which baremetal instances won't have
20:08:45 efried right. And in alex_xu's new world, `resources` would only get populated if the instance has local resources to track.
20:09:22 efried Any time we just need a count, we leave that bit empty and just use the placement inventory structure.
20:15:35 mriedem yeah i haven't read the whole message yet
20:15:40 mriedem nor the etherpad
20:15:45 mriedem only what i've gathered from irc conversations
20:16:16 mriedem efried: mordred: also, this is the patch to remove [neutron]/url from the neutron nova/neutron compute install guide in favor of a KSA-tastic world https://review.opendev.org/677810
20:16:26 mriedem hopefully i didn't misrepresent in the commit message
20:19:06 openstackgerrit Adam Spiers proposed openstack/nova master: Enable booting of libvirt guests with AMD SEV memory encryption https://review.opendev.org/666616

Earlier   Later