Earlier  
Posted Nick Remark
#openstack-nova - 2020-07-16
08:54:39 aarents bauzas: FYI, I updated https://etherpad.opendev.org/p/nova-libvirt-subteam, I re-propose something to fix this bug: https://bugs.launchpad.net/nova/+bug/1732428 here: https://review.opendev.org/#/c/696084/3 I implemented rebase of backing file suggested by lyarwood kashyap
08:54:39 openstack Launchpad bug 1732428 in OpenStack Compute (nova) "Unshelving a VM breaks instance metadata when using qcow2 backed images" [Medium,In progress] - Assigned to Alexandre arents (aarents)
08:54:59 kashyap aarents: Hi
08:55:35 bauzas aarents: ack, will look
08:55:47 aarents kashyap: Hi
08:55:51 aarents bauzas: thks
08:55:58 kashyap Thx for the reminder; been buried w/ other stuff. WIll look
08:56:27 aarents kashyap: ok cool
08:57:00 gibi huaqiang: approved the patch
08:57:26 huaqiang gibi: cool, appreciate!
09:01:02 gibi huaqiang, stephenfin, alex_xu: extended the runway slot of bp/use-pcpu-and-vcpu-in-one-instance with an additional week as I see good progress there
09:03:24 huaqiang gibi: nice to hear this!
09:04:39 gibi nice to see the progress :)
09:42:50 stephenfin bauzas: I'm working on https://review.opendev.org/#/c/741282/ and noticed a potential bug in one of the vGPU functional tests
09:43:31 bauzas stephenfin: a-ha ?
09:43:41 stephenfin sec, getting the links
09:43:42 bauzas yeah, i tried to provide some methods for the func tests
09:43:54 stephenfin bauzas: very small one
09:44:08 stephenfin these tests use v2.1 + latest microversion https://github.com/openstack/nova/blob/master/nova/tests/functional/libvirt/test_vgpu.py#L132-L137
09:44:17 stephenfin these tests do not https://github.com/openstack/nova/blob/master/nova/tests/functional/libvirt/test_vgpu.py#L300
09:44:40 stephenfin both are inheriting from nova.tests.functional.test_servers.ServersTestBase https://github.com/openstack/nova/blob/master/nova/tests/functional/libvirt/test_vgpu.py#L41
09:44:49 stephenfin which uses API version 2 (.0) by default
09:45:03 stephenfin any reason those later tests shouldn't be using v2.1 + latest microversion too?
09:45:23 stephenfin you need the latest microversion so you can request a host https://github.com/openstack/nova/blob/master/nova/tests/functional/libvirt/test_vgpu.py#L330
09:45:30 stephenfin well, a reasonably new one
09:46:25 bauzas stephenfin: yeah, we need a specific microversion for at least one test AFAICU
09:47:27 bauzas stephenfin: at least for the resize tests : https://github.com/openstack/nova/commit/d2e0afc1f72db5cb56ed987e2873798fc1e89545
09:49:01 stephenfin bauzas: okay, so I'm going to move this https://github.com/openstack/nova/blob/master/nova/tests/functional/libvirt/test_vgpu.py#L134-L137
09:49:14 stephenfin to the base class https://github.com/openstack/nova/blob/master/nova/tests/functional/libvirt/test_vgpu.py#L42
09:49:36 stephenfin doesn't sound like you wanted to use the legact API v2 for the VGPUMultipleTypesTests tests
09:50:40 bauzas stephenfin: I just wanted to provide some tests for vGPU by using the v2 API, but then when I wanted to provide the resize ones, it needed the microversion
09:50:58 bauzas stephenfin: so, no worries if you want to use the latest API for all of them, it should work
09:51:09 stephenfin okay, sweet. Thanks
09:52:34 bauzas the main issue I had with the tests was the fact that I needed to move some methods to the InstanceHelperMixin one
09:52:59 stephenfin You'll probably be interested in https://review.opendev.org/#/c/741283/1 so
09:53:12 bauzas stephenfin: hence the https://github.com/openstack/nova/blob/d2e0afc1f72db5cb56ed987e2873798fc1e89545/nova/tests/functional/integrated_helpers.py#L538
09:53:45 stephenfin bauzas: You're *definitely* interested in the above so
09:55:41 bauzas stephenfin: :)
11:06:15 openstackgerrit Merged openstack/nova master: notifications: add the pcpuset info to instance numa cell payload https://review.opendev.org/728480
11:06:23 openstackgerrit Merged openstack/nova master: objects: Introduce the 'CPUAllocationPolicy.MIXED' enum https://review.opendev.org/716267
11:18:57 openstackgerrit Merged openstack/nova master: hardware: refactor the code for CPU policy sanity check https://review.opendev.org/740925
11:21:06 lyarwood stephenfin / gibi ; https://review.opendev.org/#/c/699291/ - Would you mind taking a look at this fix from mriedem that I've been trying to push over the line for a while?
11:22:07 stephenfin sure
11:24:47 lyarwood thanks, I'll get back to your series later today btw
11:26:07 gibi lyarwood: I will check it
11:56:20 openstackgerrit Balazs Gibizer proposed openstack/nova master: Regenerate device metadata during interface detach https://review.opendev.org/741436
12:10:23 openstackgerrit Balazs Gibizer proposed openstack/nova master: [WIP] Support SRIOV interface attach and detach https://review.opendev.org/740995
12:10:50 stephenfin gibi, sean-k-mooney: Do either of you know why we do this in the resize operation instead of accessing instance.image_meta? https://github.com/openstack/nova/blob/master/nova/compute/api.py#L3886-L3887
12:11:15 stephenfin I suspect it's something to do with filtering out undesirable image metadata properties but I'm not sure
12:11:50 sean-k-mooney let me check
12:12:23 sean-k-mooney stephenfin: we are using the cached metadta
12:12:50 sean-k-mooney we store the image metadta in the system metadata table
12:13:46 sean-k-mooney if we looked up the image by its uuid and got the metadata it could have change or the image could have been deleted
12:15:33 sean-k-mooney stephenfin: we only have the image uuid in the instance https://github.com/openstack/nova/blob/master/nova/objects/instance.py#L127
12:15:41 sean-k-mooney thre is no image_meta
12:16:00 sean-k-mooney but if you want to add a property that just calls that function i dont have any issue with that
12:17:32 stephenfin Hmm, I think they may be equivalent. 'Instance.image_meta' calls 'ImageMeta.from_instance' https://github.com/openstack/nova/blob/master/nova/objects/instance.py#L250-L251
12:18:00 sean-k-mooney oh we do have a property https://github.com/openstack/nova/blob/master/nova/objects/instance.py#L127
12:18:00 stephenfin which calls 'get_image_from_system_metadata' https://github.com/openstack/nova/blob/master/nova/objects/image_meta.py#L127
12:18:26 stephenfin hmm, those sound equivalent so. Probably legacy stuff
12:18:26 sean-k-mooney yes https://github.com/openstack/nova/blob/057891ac247fadfb9637d3e834f8b1ef3e39bc27/nova/objects/image_meta.py#L126-L128
12:18:38 gibi seem equivalent, yes
12:18:48 stephenfin So my series is gaining yet another tech debt reduction patch \o/
12:18:51 stephenfin every. damn. time.
12:19:18 sean-k-mooney you could pretend you did not see it :P
12:19:29 sean-k-mooney also this seams backwards to me
12:20:00 sean-k-mooney i would have had instance.image_meta just call utils.get_image_from_system_metadata(sysmeta)
12:20:24 gibi stephenfin: you are a hero removing those depts
12:20:28 gibi debts
12:20:36 sean-k-mooney and had image_meta.from_instance(instance) return instance.image_meta
12:21:20 stephenfin fair point
12:21:23 stephenfin much of a muchness
12:21:38 stephenfin worth noting the 'ImageMeta.from_instance' also handles multiple different ways of storing system_metadata in the instance object
12:21:41 sean-k-mooney there are extra db queries curently
12:21:43 stephenfin if indeed instance is an object
12:22:18 stephenfin I've no idea if that call to 'utils.instance_sys_meta' is necessary, vs. just using 'instance.system_metadata'
12:22:45 sean-k-mooney it should not bey system_metadata is always loaded by default
12:23:14 sean-k-mooney https://github.com/openstack/nova/blob/master/nova/objects/instance.py#L70-L71
12:23:15 stephenfin An it's a 'DictOfNullableStringsField' type field
12:23:23 stephenfin so it couldn't be anything *except* a dict
12:23:51 stephenfin so this check seems like garbage https://github.com/openstack/nova/blob/master/nova/utils.py#L547-L549
12:23:57 sean-k-mooney ya it might be empty but it will be a dict
12:24:24 stephenfin yup, undefined or a dict. Nothing else since it's not nullable
12:24:51 sean-k-mooney well i dont know it might be there for some reason in the past
12:25:00 stephenfin pre-o.vo, most likely
12:25:33 sean-k-mooney https://github.com/openstack/nova/commit/96164cecc6b7bf447d06896f723dab416e63ee06
12:25:53 openstackgerrit Merged openstack/nova stable/rocky: Reject boot request for unsupported images https://review.opendev.org/708608
12:26:46 sean-k-mooney so ya it was part of the ovo migration
12:27:06 sean-k-mooney its proably not needed 7 years later.
13:35:57 artom gibi, how did you notice https://bugs.launchpad.net/nova/+bug/1887799 ?
13:35:57 openstack Launchpad bug 1887799 in OpenStack Compute (nova) "interface metadata is not regenerated after interface detach" [Low,In progress] - Assigned to Balazs Gibizer (balazs-gibizer)
13:36:04 artom Code inspection, or "real life"?
13:36:14 artom Because... we *do* update device metadata on restart
13:36:17 artom Just no in the driver
13:36:21 artom Lemme comment on the patch
13:36:44 gibi artom: working on the SRIOV interface attach feature and during detach I see that there is metadata left in the database
13:36:52 gibi then I inspected the code
13:37:34 artom gibi, something else is going on then: https://opendev.org/openstack/nova/src/branch/master/nova/network/neutron.py#L1755
13:37:35 sean-k-mooney gibi: your actully workign on that
13:38:14 sean-k-mooney gibi: do you have any patches up

Earlier   Later