| Posted | Nick | Remark | |
|---|---|---|---|
| #openstack-nova - 2019-06-19 | |||
| 20:00:15 | melwitt | we don't create an instance record | |
| 20:01:02 | mriedem | right we'd skip those here https://github.com/openstack/nova/blob/74aebe0d4e5a978a40011e890aee9e70e98246c4/nova/conductor/manager.py#L1391 | |
| 20:01:29 | dansmith | yeah was just reading that loop | |
| 20:01:40 | dansmith | we assume that if instance is none that it's because we buried it already I think | |
| 20:01:42 | mriedem | while i'm looking at this code, we should probably make this fatal now :) https://github.com/openstack/nova/blob/74aebe0d4e5a978a40011e890aee9e70e98246c4/nova/conductor/manager.py#L1238 | |
| 20:01:58 | melwitt | we delete all the stuff if quota recheck fails. but if someone has requested a delete of the thing, wouldn't the compute/api delete the instance mapping? I can't remember where we do that for delete | |
| 20:02:03 | mriedem | dansmith: or it's already been deleted via the build request before we got that far | |
| 20:02:23 | mriedem | melwitt: no we don't delete the instance mapping when deleting the instance (or build request) in the api | |
| 20:02:41 | mriedem | that's why surya had to add it to the archive_deleted_rows cmd | |
| 20:02:51 | dansmith | mriedem: yeah, we get instance=None if the build request failed, do we get it for other reasons? | |
| 20:03:04 | melwitt | oh, ever? if we never do, then is it an issue? | |
| 20:03:06 | dansmith | ohh, | |
| 20:03:08 | dansmith | I see, | |
| 20:03:09 | openstackgerrit | Adam Spiers proposed openstack/nova master: Add extra spec parameter and image property for memory encryption https://review.opendev.org/664420 | |
| 20:03:18 | dansmith | we bury it right away if we get hostmappingnotfound | |
| 20:03:33 | dansmith | but if we get instance mapping not found, we don't bury, but instances.append(None) | |
| 20:03:40 | dansmith | the loop at the bottom assumes the former behavior | |
| 20:04:07 | dansmith | the latter looks like it was added for quota counting reasons | |
| 20:04:22 | melwitt | yeah, it was | |
| 20:04:26 | mriedem | dansmith: you mean build request not found | |
| 20:04:34 | melwitt | the append None thing | |
| 20:04:36 | mriedem | https://github.com/openstack/nova/blob/74aebe0d4e5a978a40011e890aee9e70e98246c4/nova/conductor/manager.py#L1350 | |
| 20:04:42 | openstackgerrit | Adam Spiers proposed openstack/nova master: Use fake flavor instead of empty dict in test https://review.opendev.org/662555 | |
| 20:04:43 | openstackgerrit | Adam Spiers proposed openstack/nova master: Extract SEV-specific bits on host detection https://review.opendev.org/636334 | |
| 20:04:43 | openstackgerrit | Adam Spiers proposed openstack/nova master: Pass extra_specs to flavor in vif tests https://review.opendev.org/662556 | |
| 20:04:44 | openstackgerrit | Adam Spiers proposed openstack/nova master: Allow guest devices to include |
|
| 20:04:44 | openstackgerrit | Adam Spiers proposed openstack/nova master: Add |
|
| 20:04:45 | openstackgerrit | Adam Spiers proposed openstack/nova master: Use |
|
| 20:04:45 | openstackgerrit | Adam Spiers proposed openstack/nova master: Detect that SEV is required and enable iommu for devices https://review.opendev.org/644565 | |
| 20:04:46 | openstackgerrit | Adam Spiers proposed openstack/nova master: Enable memory locking if SEV is requested https://review.opendev.org/662558 | |
| 20:04:48 | dansmith | mriedem: yeah sorry | |
| 20:04:56 | dansmith | mriedem: yeah that was melwitt's main counting quotas patch | |
| 20:05:53 | dansmith | which added the instances.append(None) for the host not found bury case as well | |
| 20:06:04 | dansmith | https://github.com/openstack/nova/commit/5c90b25e49d47deb7dc6695333d9d5e46efe8665#diff-378a96ec6159d0a2f8ec7ab71bc3843bR946 | |
| 20:06:40 | dansmith | although it looks like we were skipping those both anyway | |
| 20:07:11 | mriedem | yeah, and at some point in talking about https://bugs.launchpad.net/nova/+bug/1784074 we had talked about squashing those two for loops into one again, but i've lost track of the discussion about that (though i think i know how to find it) | |
| 20:07:12 | openstack | Launchpad bug 1784074 in OpenStack Compute (nova) "Instances end up with no cell assigned in instance_mappings" [Medium,In progress] - Assigned to Matt Riedemann (mriedem) | |
| 20:07:15 | openstackgerrit | Eric Fried proposed openstack/nova master: Clarify --before help text in nova manage https://review.opendev.org/661289 | |
| 20:07:18 | mriedem | i'm not really signing up to do that refactor now though, | |
| 20:07:28 | dansmith | yeah | |
| 20:07:32 | mriedem | just thinking it makes sense for us to delete the instance mapping in this block https://github.com/openstack/nova/blob/74aebe0d4e5a978a40011e890aee9e70e98246c4/nova/conductor/manager.py#L1350 | |
| 20:07:45 | dansmith | I think we should just bury in that case, no? | |
| 20:07:47 | mriedem | b/c if the BR is gone, and the instance isn't created in a cell yet, the instance mapping shouldn't exist either - it's orphaned | |
| 20:07:54 | melwitt | I've been wanting ("wanting") to do that refactor but, you know how it goes | |
| 20:07:55 | mriedem | burying it would bring it back | |
| 20:08:00 | mriedem | from the br zombieland | |
| 20:08:16 | dansmith | mriedem: right, but isn't that the expectation of the api user? | |
| 20:08:17 | melwitt | but how does that hurt anything? if we never delete instance mappings? | |
| 20:08:24 | dansmith | or is this only in the multi-create case? | |
| 20:08:52 | melwitt | *if we never delete instance mappings anyway? | |
| 20:09:07 | dansmith | for single create, once you get back a uuid you expect to be able to list that thing (with deleted=yes) until archive | |
| 20:09:24 | dansmith | but I guess maybe if you've deleted it it could be up for immediate archive and thus deleting the mapping is equivalent | |
| 20:09:26 | dansmith | so yeah, either I guess | |
| 20:09:42 | mriedem | melwitt: it could be a problem in a tight window if you got that mapping via build request as a marker when listing/paging | |
| 20:09:54 | melwitt | oh, I see | |
| 20:10:20 | mriedem | dansmith: if you delete the build request before it's an instance, i don't think we honor reading it as deleted=yes anyway, | |
| 20:10:24 | mriedem | because BRs are hard deleted | |
| 20:10:50 | mriedem | melwitt: at least that was part of the reasoning behind https://review.opendev.org/#/c/575556/ | |
| 20:11:13 | dansmith | mriedem: ack yeah I guess I remember that bit of cheating | |
| 20:11:51 | mriedem | it would have been like newton-era talk about that cheating being ok, likely in a small hotel conf room in hillsboro | |
| 20:11:53 | mriedem | if i remember correctly | |
| 20:12:00 | mriedem | with jpenick squashed on the floor in a corner | |
| 20:12:07 | melwitt | lol | |
| 20:12:27 | dansmith | yar | |
| 20:12:44 | mriedem | the good old days... | |
| 20:12:54 | melwitt | it was wharm in there | |
| 20:12:56 | mriedem | anyway, i'm about to abandon https://review.opendev.org/#/c/575556/ but was just looking at my last comment there | |
| 20:13:11 | mriedem | melwitt: unless you were directly underneath where the air shot out and down on you, which was my case | |
| 20:13:18 | mriedem | then it was cold and contact-drying | |
| 20:13:25 | melwitt | lol! | |
| 20:13:30 | melwitt | well I'll be | |
| 20:32:10 | openstackgerrit | Matt Riedemann proposed openstack/nova master: Delete InstanceMapping in conductor if BuildRequest is already deleted https://review.opendev.org/666438 | |
| 20:35:29 | openstackgerrit | melanie witt proposed openstack/nova master: rbd: use MAX_AVAIL stat for reporting bytes available https://review.opendev.org/556692 | |
| 20:40:47 | openstackgerrit | Matt Riedemann proposed openstack/nova master: Add functional test for AggregateMultiTenancyIsolation + migrate https://review.opendev.org/571265 | |
| 21:00:13 | openstackgerrit | Matt Riedemann proposed openstack/nova master: libvirt: don't log error if guest gone during interface detach https://review.opendev.org/610727 | |
| 21:04:31 | mriedem | relatively simple older patch here that has a +2 on it - it's mostly docstring https://review.opendev.org/#/c/633212/ | |
| 21:28:27 | sean-k-mooney | mriedem: just back after dinner ill take a look at https://review.opendev.org/#/c/644881/ now | |
| 21:31:13 | mriedem | i'll be gone in 30 minutes | |
| 21:31:56 | sean-k-mooney | mriedem: the use of hybrid plug is based on the local config on the compute host which is read by the agent and hybrid plug amoung other things is stored in the neutron db | |
| 21:32:15 | sean-k-mooney | so when the ml2 driver bind the port to the hsot is pass an agent context like our host_state object | |
| 21:32:19 | mriedem | mnaser: figured out why my recreate test in https://review.opendev.org/#/c/647603/ wasn't failing | |
| 21:32:26 | sean-k-mooney | which it check to determin if hybid plug should be used | |
| 21:32:31 | mriedem | mnaser: only took a couple of months | |
| 21:32:46 | mriedem | sean-k-mooney: but that's per neutron agent right? | |
| 21:32:53 | sean-k-mooney | yes | |
| 21:33:03 | mriedem | the commit message makes it sound like if you're ovs hybrid plug, it's deployment-wide | |
| 21:33:23 | sean-k-mooney | it does. ill comment on the comment and correct it | |
| 21:33:46 | sean-k-mooney | for tools like triplo it typeiclay configred globally | |
| 21:33:54 | sean-k-mooney | but it actully set per host | |
| 21:34:49 | sean-k-mooney | at bind time the ml2 driver is passed the agent context for the agent on the host that nova selected and it determins what to do based on the configurtion of that host | |
| 21:34:53 | mnaser | mriedem: what object should it be? | |
| 21:35:05 | mriedem | mnaser: nvm, i guess it doesn't recreate it | |
| 21:35:40 | mriedem | for one thing the test wasn't going through get_stashed_volume_connector when deleting the server, | |
| 21:35:48 | mriedem | and _local_cleanup_bdm_volumes swallows the error anyway | |
| 21:36:04 | mriedem | but if the bdm.connection_info were 'null' the test would fail before that anyway | |
| 21:36:08 | mriedem | so i guess i didn't recreate it | |
| 21:39:15 | efried | I think that newton midcycle was my first in-person encounter with you people. | |
| 21:39:39 | mriedem | "you people" | |
| 21:40:32 | sean-k-mooney | efried: does it feel longer or shorter then that :) | |
| 21:41:06 | efried | With my dying breath I shall continue to deny that "you people" is an acceptable PC violation, under any circumstances. | |