| Posted | Nick | Remark | |
|---|---|---|---|
| #openstack-nova - 2025-02-21 | |||
| 03:36:24 | sean-k-mooney | im currently ruminating on https://review.opendev.org/c/openstack/nova/+/939658/6/nova/api/openstack/compute/views/servers.py#222 | |
| 03:36:39 | sean-k-mooney | syliticlly this annoys me but im tryign to decied if there is actully an issue | |
| 03:37:43 | sean-k-mooney | if i read that if cascade | |
| 03:38:14 | sean-k-mooney | it imples provided_az is either the litral boolean False or its a sting contiaing the az name | |
| 03:40:41 | sean-k-mooney | so the data type of provided_az is union(NONE|bool|str) | |
| 03:40:58 | masahito | yes, I also wondering it follows Nova's nice coding manner. The _get_pinned_az needs to identify 3 patterns as commented. | |
| 03:42:45 | sean-k-mooney | so None is only passe if show is invoed and prived_az is not passed | |
| 03:42:48 | sean-k-mooney | https://review.opendev.org/c/openstack/nova/+/939658/6/nova/api/openstack/compute/views/servers.py#244 | |
| 03:42:54 | sean-k-mooney | correct? | |
| 03:43:04 | sean-k-mooney | in what case is false passed? | |
| 03:43:35 | masahito | right. | |
| 03:44:43 | masahito | fales is passed if list is invoked and no request_specs object to an instance | |
| 03:44:57 | sean-k-mooney | ah | |
| 03:45:13 | sean-k-mooney | it woudl be nice if None was passed then | |
| 03:45:31 | sean-k-mooney | thats form here right https://review.opendev.org/c/openstack/nova/+/939658/6/nova/api/openstack/compute/views/servers.py#539 | |
| 03:46:08 | sean-k-mooney | if we change req_specs_dict.get(server.uuid, False) to req_specs_dict.get(server.uuid, None) | |
| 03:47:27 | sean-k-mooney | im trying to decide if that allows use to simplfy the if | |
| 03:48:06 | sean-k-mooney | it would allow use toe get rid of the first two brances and jsut replace it with pinned_az = provided_az | |
| 03:48:29 | sean-k-mooney | but the else woudl have to become if pinned_az is None: | |
| 03:48:34 | masahito | but in that case, _get_pinned_az can't identify pre-fetheched None in list or no input in show. | |
| 03:48:58 | masahito | s/no input in show/no input None in show/ | |
| 03:48:58 | sean-k-mooney | sure but im trying to decied if that matters | |
| 03:49:46 | sean-k-mooney | if we dont have a request spec then it cant be pinned | |
| 03:49:52 | masahito | i see. | |
| 03:50:41 | sean-k-mooney | im not sayign you should change this | |
| 03:51:00 | sean-k-mooney | im trying to undersand the desing chooices that lead to this current patch | |
| 03:51:29 | sean-k-mooney | "if provided_az is False:" is very specific and odd | |
| 03:51:30 | masahito | thanks for the follow up. my reply is one previous your message. | |
| 03:51:39 | sean-k-mooney | you are using False as a sential | |
| 03:51:51 | sean-k-mooney | but it might be better to actuly create a new sentail object instead | |
| 03:51:55 | sean-k-mooney | and use that instead | |
| 03:52:09 | sean-k-mooney | so its clear what its role is | |
| 03:52:40 | masahito | like a empty request_spec object instead of False? | |
| 03:52:56 | sean-k-mooney | no | |
| 03:53:07 | sean-k-mooney | so at teh module level define sentinel = object() | |
| 03:53:40 | sean-k-mooney | then do req_specs_dict.get(server.uuid, sentinel) here | |
| 03:53:42 | sean-k-mooney | https://review.opendev.org/c/openstack/nova/+/939658/6/nova/api/openstack/compute/views/servers.py#539 | |
| 03:54:03 | sean-k-mooney | and if provided_az is sentinel: | |
| 03:54:05 | sean-k-mooney | https://review.opendev.org/c/openstack/nova/+/939658/6/nova/api/openstack/compute/views/servers.py#222 | |
| 03:55:18 | sean-k-mooney | rather then using the singleton False object create your own | |
| 03:55:33 | sean-k-mooney | you can give it a descriptive name | |
| 03:55:55 | sean-k-mooney | AZ_NOT_IN_REQUEST_SEPC = obejct() | |
| 03:55:56 | masahito | I may get your point. at the first if-condition checks the provided_az is the sentinel object or not. | |
| 03:56:08 | sean-k-mooney | right | |
| 03:56:16 | sean-k-mooney | basiclly https://python-patterns.guide/python/sentinel-object/#sentinel-objects | |
| 03:57:54 | sean-k-mooney | ill leave a comment to this effect and also +1 | |
| 03:58:17 | sean-k-mooney | letss see if others care one way or the other | |
| 03:59:23 | masahito | Let me update to use the sentinel. I don't think it difficult change. | |
| 03:59:33 | sean-k-mooney | sure | |
| 04:07:18 | opendevreview | Masahito Muroi proposed openstack/nova master: Use dict object for request_specs_dict in the _list_view https://review.opendev.org/c/openstack/nova/+/939658 | |
| 04:10:35 | masahito | updated. thanks | |
| 04:10:54 | sean-k-mooney | i have one nit in the release note but im +2 | |
| 04:38:38 | sean-k-mooney | melwitt: im not sure if you wrote that patch or not but im actully got to head to sleep now, enjoy whats left of your evnening | |
| 04:39:19 | melwitt | sean-k-mooney: no not yet. gnight o/ | |
| 04:57:43 | sshmlbrg | sean-k-mooney: o/ | |
| 05:30:27 | opendevreview | sean mooney proposed openstack/nova master: only show standard image propeties in server show. https://review.opendev.org/c/openstack/nova/+/942413 | |
| 05:30:44 | sean-k-mooney | gibi: ^ that shoudl fix | |
| 05:30:49 | sean-k-mooney | https://launchpad.net/bugs/2098384 | |
| 05:33:05 | sean-k-mooney | well maybe not | |
| 05:33:15 | sean-k-mooney | this is ligtly diffent damb it | |
| 05:35:50 | sean-k-mooney | well that fixes a bug but it might only be a partial fix | |
| 05:55:42 | opendevreview | Merged openstack/nova-specs master: Extend image-properties-in-server-show spec with rebuild https://review.opendev.org/c/openstack/nova-specs/+/940360 | |
| 06:59:21 | mikal | sean-k-mooney / melwitt: there is this WIP tempest patch for v2.98 -- https://review.opendev.org/c/openstack/tempest/+/939375 | |
| 06:59:57 | mikal | I am a little surprised its not in merge conflict now though. | |
| 07:12:21 | mikal | Oh wait, that's the _other_ _other_ competitor for v2.98? Is there any existing attempt at testing for v2.98? If it changed the schema how did it merge without any tempest tests? | |
| 07:12:51 | mikal | I am confused enough that I am going to stop and think about this some more. | |
| 07:18:42 | mikal | I cannot find a proposed tempest change for the code which landed as v2.98. | |
| 07:42:31 | opendevreview | Johannes Kulik proposed openstack/nova master: libvirt: fix maxphysaddr passthrough dom parsing https://review.opendev.org/c/openstack/nova/+/942371 | |
| 08:36:07 | melwitt | sean-k-mooney: I saw your comments on the image properties patch and your fix patch. I assume that means I should hold off on trying any tempest schema patch for 2.98 for the moment if there is some bug in the API response? | |
| 08:39:21 | ratailor | sean-k-mooney, you around ? | |
| 08:40:27 | sshmlbrg | ratailor: he's sleeping | |
| 08:41:33 | ratailor | sshmlbrg, ack. Thanks! | |
| 10:23:01 | opendevreview | Rajesh Tailor proposed openstack/nova master: only show standard image properties in server show. https://review.opendev.org/c/openstack/nova/+/942413 | |
| 11:11:48 | sean-k-mooney | melwitt: it does not change teh schema becuase in the schema its just a dict of sting | |
| 11:41:21 | opendevreview | Vasyl Saienko proposed openstack/nova-specs master: Expose vlan trunking in metadata/configdrive https://review.opendev.org/c/openstack/nova-specs/+/471815 | |
| 12:04:15 | nisha | hi nova folks, please review the one line bug fix for port after live migration if you have time. thank you! https://review.opendev.org/c/openstack/nova/+/936338 | |
| 12:04:42 | sean-k-mooney | nisha: that not a trivile change | |
| 12:05:05 | sean-k-mooney | i skimmed it when you first pushed it and i did have tiem to fully load all the context | |
| 12:06:48 | sean-k-mooney | there are some filed that should be diffent between the souce and dest | |
| 12:07:39 | sean-k-mooney | for example the pci adress of an sriov nic. | |
| 12:08:25 | sean-k-mooney | so this need careful review to ensure its actully correct | |
| 12:09:16 | sean-k-mooney | the binding provile is an admin only filed that is ment to be used by nova to pass info to the neutron network backend | |
| 12:09:39 | sean-k-mooney | its not a freform field that operators or end user are allowed to put arbitary keys in | |
| 12:10:38 | nisha | ahh I see. thank you for taking a look at it already. | |
| 12:11:16 | sean-k-mooney | what filed were being lost in your case | |
| 12:11:59 | sean-k-mooney | do you have a specific case that is broken | |
| 12:12:48 | sean-k-mooney | {"os_vif_delegation": true} was not ment to be the only content by the way it was ment to be added to the prociel and remvoe dlater | |
| 12:14:23 | sean-k-mooney | the bug doe snot say it just say "openstack port set $port_id --binding-profile aaa=bbb --binding-profile ccc=ddd" | |
| 12:14:29 | sean-k-mooney | which is not supproted | |
| 12:15:10 | sean-k-mooney | there is only one filed that can be set by a human in the bidnign profile ant that trusted_vf | |
| 12:15:32 | sean-k-mooney | and removing that has been on our todo list forever | |
| 12:21:46 | nisha | in our case, the bgp network settings are set to the port in the binding profile and after live migration it is completely overwritten by os_vif_delegation | |
| 12:27:51 | sean-k-mooney | that doesn not sound like a supprote setup. can you point to the neutron pluging and confirm what virt driver your using | |
| 12:29:12 | sean-k-mooney | in the case of use with nova the content of the binding profile is exlicively resrevd for novas use, for zun it reserved for zun for standalone ironic it cna use it but it may not modify it when used via nova | |
| 12:29:53 | sean-k-mooney | there is a bug on the nova side but its not ok for neturon to modify the content of that filed | |
| 12:30:18 | sean-k-mooney | so if the ml2 dirver is modifying its incorrect | |
| 12:35:50 | nisha | yes, ml2 is the neutron core plugin and libvirt driver | |
| 12:36:06 | sean-k-mooney | that does not answer my question | |
| 12:36:13 | sean-k-mooney | which ml2 driver? | |
| 12:36:17 | sean-k-mooney | there are many | |