| Posted | Nick | Remark | |
|---|---|---|---|
| #openstack-nova - 2019-06-05 | |||
| 16:28:22 | openstackgerrit | Adrian Chiris proposed openstack/nova stable/queens: Move get_pci_mapping_for_migration to MigrationContext https://review.opendev.org/661571 | |
| 16:31:33 | kashyap | stephenfin: O Docs Aficionado, when you can, please deliver this from its misery: https://review.opendev.org/#/c/661574 | |
| 16:33:29 | stephenfin | kashyap: Might be better let alex_xu grab it since he's taken a look a few times already | |
| 16:33:46 | openstackgerrit | Matt Riedemann proposed openstack/nova master: Delete unused get_all_host_states method https://review.opendev.org/663377 | |
| 16:33:50 | kashyap | Oh, right. I totally forgot that; #bumblebee's-memory-7-seconds | |
| 16:34:35 | kashyap | mdbooth: On the number of machine types -- yes, *each* QEMU release comes with a versioned machine type | |
| 16:34:46 | kashyap | Why versioned machine type? They preserve guest ABI. | |
| 16:35:06 | openstackgerrit | Sylvain Bauza proposed openstack/nova master: Pass allocations to virt drivers when resizing https://review.opendev.org/589085 | |
| 16:35:48 | kashyap | mdbooth: And the "naked" 'q35' aliases to the latest versioned machine type. | |
| 16:41:48 | sean-k-mooney | kashyap: the version machine types also create vendor lock in as they are different between distro and make it hard to migrate form one to another in some cases | |
| 16:42:38 | sean-k-mooney | so there are pros and cons i prefer just q35 but there are reason to use the versioned form too | |
| 16:42:45 | kashyap | I wouldn't call it "vendor lock-in". Each distribution is *supposed* to pick machine types as they see fit. | |
| 16:42:57 | kashyap | It's like saying you can install DEBs on an RPM-based system. | |
| 16:43:08 | sean-k-mooney | it kind of is when each distro add the name of the distor into the machine type | |
| 16:43:24 | sean-k-mooney | kashyap: well you can | |
| 16:43:34 | sean-k-mooney | using alien | |
| 16:43:38 | kashyap | Yeah, unfortunately, given the "there are more number of Linux distros than Linux users", we have to live with it... | |
| 16:43:42 | sean-k-mooney | but its more complicated | |
| 16:44:33 | sean-k-mooney | kashyap: it would be nice if we just had a propatable set defiend by qemu or libvirt that all distos used | |
| 16:44:55 | kashyap | Sorry, what is a "propatable"? | |
| 16:45:01 | sean-k-mooney | portable | |
| 16:45:30 | sean-k-mooney | or interoperable | |
| 16:45:44 | kashyap | Aaah, I don't know how feasible that is; need to think with a fresh brain :-) | |
| 16:45:54 | kashyap | Alright, need to go cook make food. See ya | |
| 16:46:35 | sean-k-mooney | i think recent version of libvirt or qemu have got better of checking compatibliy if you use the alais e.g. "q35" | |
| 16:47:26 | sean-k-mooney | but i dont know if it will allow q35-centos... to migrate to q35-rhel... even if they are the same | |
| 16:48:00 | sean-k-mooney | i know it did not work betweeen centos and ubunut in the past but if sepcifically set them to the same machine type it did | |
| 16:50:26 | aram1s | Hi there! Does anyone know what the 'state' represents for hypervisors? I thought it reflected the state of nova compute service but when I disable it I still see it as up | |
| 16:50:52 | aram1s | how can I make it go down? | |
| 16:51:30 | aram1s | without explicitly setting it as down. Will it chance based on any other status? | |
| 16:51:37 | aram1s | change* | |
| 17:00:16 | melwitt | aram1s: status will also change if you for example, stop the nova compute service | |
| 17:00:43 | melwitt | other than that, there's the forced_down API https://developer.openstack.org/api-ref/compute/?expanded=update-forced-down-detail#update-forced-down | |
| 17:01:48 | stephenfin | mriedem: Could you drop your -2 from these given my comments inline? https://review.opendev.org/#/c/662501/ https://review.opendev.org/#/c/662502/ | |
| 17:03:04 | openstackgerrit | Stephen Finucane proposed openstack/nova master: Unplug VIFs as part of cleanup of networks https://review.opendev.org/663382 | |
| 17:08:08 | mriedem | stephenfin: of course the ec2 objects aren't used outside of nova https://review.opendev.org/#/c/662502/ | |
| 17:08:22 | mriedem | the ec2 API shim within nova is what's going to be used by the ec2api code | |
| 17:08:28 | mriedem | which uses those objects | |
| 17:08:38 | stephenfin | It doesn't though | |
| 17:08:42 | mriedem | the ec2utils stuff might be different | |
| 17:09:14 | stephenfin | Not used anywhere outside of nova and not used inside nova either | |
| 17:09:55 | stephenfin | At least not once I've removed the unused functions from ec2utils | |
| 17:10:00 | mriedem | i'd feel a lot more comfortable with this if we could get a tempest run on the ec2api with a dependency on this series | |
| 17:10:23 | stephenfin | I can try figure out how to do that | |
| 17:11:03 | mriedem | it should be as easy as adding openstack/nova to https://github.com/openstack/ec2-api/blob/master/.zuul.yaml#L7 and adding a depends-on to your series | |
| 17:16:58 | aram1s | thanks melwitt! | |
| 17:17:40 | openstackgerrit | Stephen Finucane proposed openstack/nova master: ec2: Remove unused functions from 'ec2utils' https://review.opendev.org/662501 | |
| 17:17:41 | openstackgerrit | Stephen Finucane proposed openstack/nova master: ec2: Remove ec2.CloudController https://review.opendev.org/662503 | |
| 17:17:41 | openstackgerrit | Stephen Finucane proposed openstack/nova master: objects: Remove unused ec2 objects https://review.opendev.org/662502 | |
| 17:17:42 | openstackgerrit | Stephen Finucane proposed openstack/nova master: ec2: Move ec2utils functions to their callers https://review.opendev.org/662505 | |
| 17:17:42 | openstackgerrit | Stephen Finucane proposed openstack/nova master: ec2: Pre-move cleanup of utils https://review.opendev.org/662504 | |
| 17:17:43 | openstackgerrit | Stephen Finucane proposed openstack/nova master: api: Remove 'Debug' middleware https://review.opendev.org/662506 | |
| 17:19:32 | stephenfin | mriedem: Thanks for the tip. We'll see how this goes https://review.opendev.org/663386 | |
| 17:34:48 | openstackgerrit | Matt Riedemann proposed openstack/nova master: Cache host to cell mapping in HostManager https://review.opendev.org/663388 | |
| 17:34:48 | openstackgerrit | Matt Riedemann proposed openstack/nova master: Convert HostMapping.cells to a dict https://review.opendev.org/663387 | |
| 17:38:07 | artom | I feel like I've messed up my method if I need to mock like 42 things when unit testing it :( | |
| 17:38:25 | mriedem | your method is too big | |
| 17:38:57 | artom | That's never been a problem before | |
| 17:50:51 | edleafe | artom: generally a "unit" doesn't have 42 dependencies. | |
| 17:51:46 | artom | 42 is obviously an exaggeration, but yeah, this bit of code is heavily coupled to a lot of things | |
| 17:54:20 | edleafe | artom: yeah, that's more of an integration test then. | |
| 18:10:03 | artom | I probably can't, because external events | |
| 18:10:17 | artom | Pretty sure the NeutronFixture doesn't handle those ;) | |
| 18:10:46 | artom | I suppose I can mock that part out... | |
| 18:11:43 | dansmith | artom: you understand that the concern is just that you didn't test that those parts are at all connected, and since you don't have a gate test to make mriedem happy, there really needs to be confirmation that they work together, right? | |
| 18:11:57 | dansmith | I mean, I'm pretty sure I could have removed the actual change you made and no tests would fail | |
| 18:12:42 | artom | dansmith, right, IOW, we need to test that if _uses_hybrid_plug returns true, we actually wait for events in the compute manager | |
| 18:12:54 | dansmith | at a minimum, I want to see a list of vif network_info structure passed into that method, and have the method not wait for events because it calls the helper and it examines the vif structures properly (and one for the opposite case if not already covered elsewhere) | |
| 18:13:19 | dansmith | artom: that's one piece yes | |
| 18:14:11 | dansmith | I'm totally uninterested in discussing the meaning of "unit" and how it relates to this, and only really interested in seeing that it works | |
| 18:14:48 | artom | dansmith, what's the other piece? By mocking _uses_hybrid_plug to return False, it's testing that the existing code paths continue to work | |
| 18:15:54 | dansmith | artom: the other piece being that you actually called the helper in a compatible way.. if all you do is check that the thing called your mock with who-knows-what and the mock always returns true or false, that doesn't mean it actually works when the parent calls the actual child implementation | |
| 18:16:12 | dansmith | by testing only units against mocks, you don't actually confirm that they're compatible with each other | |
| 18:16:46 | artom | dansmith, you just put words on why I'm not liking my current mock-42-things approach | |
| 18:17:56 | dansmith | the world can't be reduced to tiny methods with only two external interactions each, so sometimes things get messy | |
| 18:18:15 | dansmith | I'm sure that method is too complex and refactoring won't help for backportability, so.. reality strikes | |
| 18:18:44 | artom | Stupid reality | |
| 18:23:39 | edleafe | artom: it does sound like you will be better off with a functional test that shows those parts working together as intended. Otherwise, you're just testing the python mock library :) | |
| 18:31:06 | sean-k-mooney | dansmith: i just replied to your question on the other move operations https://review.opendev.org/#/c/644881/19/nova/compute/manager.py@4192 i belive they are safe but it would be good for someone else to double check my logic | |
| 18:31:29 | dansmith | sean-k-mooney: I bet mriedem has thoughts on that | |
| 18:32:39 | sean-k-mooney | do we allow evacuate to be reverted by the way? | |
| 18:32:58 | sean-k-mooney | i did not think so be honestly i have never looked | |
| 18:33:07 | dansmith | unfortunately we do, within a window | |
| 18:33:24 | sean-k-mooney | ok so that is one case that porably needs to be handeled | |
| 18:36:07 | artom | Wait, evacuate can be reverted? | |
| 18:36:45 | artom | Also I just realized that the bug my patch links to is probably irrelevant :/ | |
| 18:37:27 | sean-k-mooney | thats the bug the waiting behavior was added to fix | |
| 18:37:40 | sean-k-mooney | i think | |
| 18:37:42 | dansmith | artom: not revert in the conventional sense, | |
| 18:37:49 | artom | sean-k-mooney, I mean https://bugs.launchpad.net/nova/+bug/1813789 | |
| 18:37:50 | openstack | Launchpad bug 1813789 in OpenStack Compute (nova) "Evacuate test intermittently fails with network-vif-plugged timeout exception" [Medium,In progress] - Assigned to Artom Lifshitz (notartom) | |
| 18:38:01 | sean-k-mooney | artom: yes i know | |
| 18:38:08 | artom | Even if the symptoms are the same, it has to be a different root cause, because upstream doens't use hybrid plug | |
| 18:38:08 | dansmith | but if you start an evacuation, it fails, and then the original source comes back alive, you can keep it there, barring bugs and timing and all kinds of crazy | |
| 18:38:13 | sean-k-mooney | artom: that was the bug we intoduce the wait on revert to fix | |
| 18:38:14 | dansmith | which I wish wasn't the case | |
| 18:38:48 | artom | dansmith, that couldn't have been on purpose... | |
| 18:39:20 | sean-k-mooney | dansmith: im assuming that only works if we have not updated the instance host yet | |
| 18:39:21 | dansmith | artom: nothing about evacuate was done with a great sense of purpose, but it was decided not to make it explicitly disallowed (to stay put) | |
| 18:39:26 | sean-k-mooney | e.g. we failed before that point | |