Earlier  
Posted Nick Remark
#openstack-nova - 2019-07-11
19:50:45 efried mriedem: gonna need your help understanding a thing here...
19:51:22 efried is this a patch-style update or a replace?
19:51:22 efried neutron.update_port(uuid, body=body)
19:51:53 efried i.e. does it only change the fields that are present in the body?
20:01:38 mriedem artom: sean-k-mooney: dansmith: https://review.opendev.org/#/c/667177/10
20:01:50 mriedem efried: replace
20:02:00 artom zomgies
20:02:15 mriedem efried: are you worried about overwriting something in the binding profile during the rollback from the time we originally got the port?
20:02:47 efried mriedem: Actually I'm worried about blowing away the whole content of the port *except* the binding:profile['allocation'] when we're trying to set that guy.
20:03:04 mriedem efried: wait,
20:03:28 mriedem efried: link me to the line
20:03:36 efried mriedem: yes, sec.
20:03:41 mriedem but we do port binding updates like this in the neutronv2/api code as well
20:04:50 efried mriedem: https://review.opendev.org/#/c/637955/35/nova/cmd/manage.py@1896 and continuation https://review.opendev.org/#/c/637955/35/nova/cmd/manage.py@1926
20:05:19 melwitt I didn't think it's like placement where anything not in the payload will get "erased" like a replace
20:05:55 efried well, there's a bug somewhere then. Because either we blow away everything but the allocation on the initial pass, or we do nothing on the rollback.
20:06:25 efried but mriedem yes indeed, I see port updates in neutronv2/api.py which are similar in spirit.
20:07:49 melwitt https://developer.openstack.org/api-ref/network/v2/?expanded=update-port-detail#update-port
20:08:17 efried melwitt: I read that; are you seeing something in there that implies "partial update"?
20:08:26 efried (I admit I didn't scrutinize it)
20:08:40 mriedem efried: agree that https://review.opendev.org/#/c/637955/35/nova/cmd/manage.py@1896 looks like trouble
20:08:50 mriedem https://developer.openstack.org/api-ref/network/v2/index.html?expanded=update-port-detail#revisions
20:08:56 mriedem neutron does have revisions and an If-Match header
20:09:03 mriedem like generations in placement and etags
20:09:18 mriedem anyway, that's more about what i thought you were going to bring up
20:10:10 efried I guess I would sort of hope you're not effing out of band with whatever ports you're trying to heal
20:10:53 efried but yeah, it would be nice to handle generations too.
20:11:03 mriedem looking at where this is used https://github.com/openstack/nova/blob/ff0feed25d56c8ccd2298d5b5b82e636880fa986/nova/network/neutronv2/api.py#L92
20:11:12 mriedem it looks like we only ever modify the full binding:profile and then send back our updates
20:11:15 mriedem not just pieces of it
20:12:04 efried so like, update_port knows to replace the thing for the top-level key you're sending, but doesn't go deeper?
20:12:51 mriedem i would assume that the neutron API takes the value for whatever key in the PUT /ports/{port_id} request and replaces the value, not parts of the value
20:12:52 efried in which case the second one (rollback) is fine, but the first one is broken?
20:12:58 mriedem it would assume so
20:13:25 efried "whatever key in the PUT request" -- the key that's in there is 'port'.
20:13:35 efried you mean the one under 'port'?
20:13:38 mriedem yes
20:13:40 efried okay
20:13:42 mriedem keys in the port resource body
20:14:00 efried okay, so the first one is borked. I shall -1 accordingly. Thanks.
20:21:27 cdent all this fiddling suggests some kind of heal integration test would be a nice thing
20:21:38 cdent if one could be conceived
20:22:19 efried I think mriedem wrote one recently. Though I sort of doubt it went anywhere near this deep.
20:22:27 mriedem gibi has a patch for that eventually
20:22:34 mriedem fiddle me timbers
20:22:43 efried cdent: https://review.opendev.org/#/c/667994/
20:22:50 mriedem https://review.opendev.org/#/c/669879/
20:22:52 mriedem drats
20:23:26 efried different patches
20:23:42 cdent yeah, the depth is apparently not quite depthy?
20:23:42 mriedem oh right, gibi's builds on mine
20:24:00 efried cdent: look at gibi's followon, it does a little better
20:24:03 mriedem i didn't dig into his actual test changes
20:24:39 mriedem if i can get https://review.opendev.org/#/c/670196/ then eventually we could break apart the post_test_hook mega script into a smaller series of exercises
20:24:43 mriedem so it's more manageable
20:25:25 cdent that would be nice
20:25:45 cdent gibi's follow does look like an improvement.
20:26:17 efried good call cdent. I've commented accordingly in gibi's patch.
20:27:14 cdent i've been on the hook this week for a bunch of internal bug handling, and omg, i can't even
20:27:21 cdent everything is horrible, everywhere
20:27:33 cdent i had a nice afternoon fishing, though
20:27:49 efried like, fishing in the water for fish?
20:28:04 efried or something job-related that's virtually like fishing?
20:28:15 efried (i.e. excruciatingly boring and unrewarding)
20:30:20 cdent https://tank-binaries.s3.amazonaws.com/08e47f8678ed462d95e5a273d927c77a.jpe
20:30:45 cdent sister's sister's family down for the week, invited for some deep sea fishing
20:30:57 cdent that was my dinner
20:34:15 melwitt efried: sorry, I missed your earlier message bc I guess my znc server disconnected.. I was referring to the wording like, "replaces the fixed_ip attribute when you specify it in the request body" which I took to mean it will replace fixed_ip if you specify it in the body but will not erase the fixed_ip if the field is not specified in the request body
20:56:19 openstackgerrit Eric Fried proposed openstack/os-resource-classes master: Propose FPGA and PGPU resource classes https://review.opendev.org/657464
21:01:14 efried melwitt: okay, cool, thanks for pointing that out.
21:02:23 efried ...though that makes it by no means obvious that similar behavior applies to the whole API.
21:03:15 melwitt yeah, I find the doc not comprehensive. was just guessing based on those bits
21:03:41 melwitt also, I'm not advocating guessing. was just thinking aloud
21:04:31 efried Ima open a doc bug for that
21:05:45 efried I just skimmed the front matter too, and there doesn't appear to be anything there.
21:07:37 openstackgerrit Dustin Cowles proposed openstack/nova master: Use SDK instead of ironicclient for node.list https://review.opendev.org/656027
21:07:37 openstackgerrit Dustin Cowles proposed openstack/nova master: Introduces SDK to IronicDriver and uses for node.get https://review.opendev.org/642899
21:07:38 openstackgerrit Dustin Cowles proposed openstack/nova master: Use SDK instead of ironicclient for setting instance id https://review.opendev.org/659690
21:07:38 openstackgerrit Dustin Cowles proposed openstack/nova master: Use SDK instead of ironicclient for validating instance and node https://review.opendev.org/656028
21:07:39 openstackgerrit Dustin Cowles proposed openstack/nova master: Use SDK instead of ironicclient for getting network metadata from node https://review.opendev.org/670213
21:07:39 openstackgerrit Dustin Cowles proposed openstack/nova master: Use SDK instead of ironicclient for add/remove instance info from node https://review.opendev.org/659691
21:18:26 openstackgerrit Matt Riedemann proposed openstack/nova master: Add functional test for resize crash compute restart revert https://review.opendev.org/670393
21:18:30 mriedem artom: sean-k-mooney: ^ weee
21:23:07 openstack Launchpad bug 1836263 in neutron "doc: PUT /ports/{port_id} updates selectively" [Undecided,New]
21:23:07 efried melwitt, mriedem, cdent: FYI https://bugs.launchpad.net/neutron/+bug/1836263
21:24:06 openstackgerrit Matt Riedemann proposed openstack/nova master: WIP: Convert nova-next to a zuul v3 job https://review.opendev.org/670196
21:27:38 cdent I read that as mowes, as in I'm gonna mowe some tasty chicken
#openstack-nova - 2019-07-12
02:48:14 openstackgerrit Brin Zhang proposed openstack/nova master: Specify availability_zone to unshelve https://review.opendev.org/663851
02:54:49 openstackgerrit Merged openstack/python-novaclient master: Add host and hypervisor_hostname to create servers https://review.opendev.org/647671
04:20:18 openstackgerrit Brin Zhang proposed openstack/nova master: Specify availability_zone to unshelve https://review.opendev.org/663851
04:26:28 openstackgerrit Brin Zhang proposed openstack/nova master: Specify availability_zone to unshelve https://review.opendev.org/663851
04:56:42 openstackgerrit Takashi NATSUME proposed openstack/nova master: Retrun 400 if invalid query parameters are specified https://review.opendev.org/670440
04:57:20 openstackgerrit ya.wang proposed openstack/nova master: vCPU mdoels selection https://review.opendev.org/670298
04:57:20 openstackgerrit ya.wang proposed openstack/nova master: Add method 'all_required_traits' to scheduler utils https://review.opendev.org/670297
04:57:21 openstackgerrit ya.wang proposed openstack/nova master: Support report multi CPU model traits https://review.opendev.org/670300
04:57:21 openstackgerrit ya.wang proposed openstack/nova master: Add compatibility checks for CPU mode and CPU models and extra flags https://review.opendev.org/670299
04:57:22 openstackgerrit ya.wang proposed openstack/nova master: Add release note https://review.opendev.org/670441
07:43:01 openstackgerrit Brin Zhang proposed openstack/nova master: Specify availability_zone to unshelve https://review.opendev.org/663851
10:24:25 openstackgerrit Stephen Finucane proposed openstack/nova master: tox: Keeping going with docs https://review.opendev.org/670332
10:24:36 openstackgerrit Stephen Finucane proposed openstack/nova master: docs: Rewrite host aggregate, availability zone docs https://review.opendev.org/667133

Earlier   Later