| Posted | Nick | Remark | |
|---|---|---|---|
| #openstack-nova - 2018-10-16 | |||
| 16:17:17 | artom | dansmith, feel like hitting up ^^ ? | |
| 16:19:44 | openstackgerrit | Rodolfo Alonso Hernandez proposed openstack/os-vif master: Add native implementation OVSDB API https://review.openstack.org/482226 | |
| 16:19:54 | kashyap | mriedem: Yeah, also RHEL disables it completely even now | |
| 16:35:17 | dansmith | artom: man that's a lot of derping | |
| 16:35:41 | artom | dansmith, herp | |
| 16:36:12 | kashyap | Hey folks, a random question -- does anyone came across upstream bugs asking for CPU hotplug in Nova? | |
| 16:37:03 | kashyap | Okay, I see a few blueprints, old and new | |
| 16:41:49 | mnaser | before i start diving | |
| 16:42:15 | mnaser | really old environment: juno-era, upgraded all the way up to rocky (no ffus) .. i'm seeing exceptions in placement once i hit rocky (around _create_incomplete_consumers_for_provider) | |
| 16:42:36 | mnaser | wit DBDuplicateEntry exceptions for unique consumer uuid | |
| 16:43:16 | mnaser | i'm guessing that it's trying to create incomplete consumers but they're there, or something. | |
| 16:43:18 | openstackgerrit | Artom Lifshitz proposed openstack/nova stable/rocky: Handle volume API failure in _post_live_migration https://review.openstack.org/611083 | |
| 16:44:01 | mriedem | mnaser: traceback in a paste? | |
| 16:44:41 | tssurya | dansmith: had a question about the cell templating stuff, | |
| 16:44:43 | openstackgerrit | Artom Lifshitz proposed openstack/nova stable/queens: Handle volume API failure in _post_live_migration https://review.openstack.org/611084 | |
| 16:44:51 | dansmith | tssurya: yah? | |
| 16:45:00 | mnaser | mriedem: http://paste.openstack.org/show/732260/ | |
| 16:45:02 | tssurya | shouldn't we consider the cell0's transport_url here : https://github.com/openstack/nova/blob/a53e46a75936b55c93face840764a67f2186cb11/nova/objects/cell_mapping.py#L144 ? | |
| 16:45:05 | mnaser | OH also fun little thing i found out about today | |
| 16:45:08 | openstackgerrit | Stephen Finucane proposed openstack/nova master: Fail to live migration if instance has a NUMA topology https://review.openstack.org/611088 | |
| 16:45:14 | stephenfin | artom: Thoughts? https://review.openstack.org/611088 | |
| 16:45:22 | mnaser | Q=>R upgrades requires you to run api_db sync first then db sync after (i dont think this is documented) | |
| 16:45:26 | tssurya | right now running db sync without local_cell parameter gives out errors | |
| 16:45:43 | mnaser | because cell disabled field is missing from api database so the db sync fails | |
| 16:45:46 | stephenfin | artom: I'd personally like to backport that as far as we can go. I'm kind of sick of explaining how broken this is to people | |
| 16:46:00 | mnaser | api_db sync first adds that field, which then lets db sync do it after | |
| 16:46:03 | mriedem | mnaser: i think it's ordered that way in the upgrade docs | |
| 16:46:11 | melwitt | ||
| 16:46:12 | mnaser | really, let me double check | |
| 16:46:24 | dansmith | tssurya: not sure what you mean.. pastebin an error? | |
| 16:46:25 | mriedem | https://docs.openstack.org/nova/latest/user/upgrade.html#rolling-upgrade-process | |
| 16:46:28 | tssurya | mnaser, mriedem: yea someone ran into the same issue and we changed the order | |
| 16:46:31 | mriedem | "Using the newly installed nova code, run the DB sync. (nova-manage api_db sync; nova-manage db sync). These schema change operations should have minimal or no effect on performance, and should not cause any operations to fail." | |
| 16:46:32 | tssurya | dansmith: ok | |
| 16:46:37 | artom | stephenfin, I don't know the full history, but I feel like it's opening a can of worms | |
| 16:47:00 | mnaser | mriedem: serves me right for looking at the queens docs thinking it hasnt change because it "looks" the same | |
| 16:47:06 | artom | stephenfin, also, I could imagine a scenario where an operator really pinky swears the destination host is fine, and wants to live migrate regardless | |
| 16:47:10 | mnaser | you're right, the order was swapped in rocky, my bad | |
| 16:47:23 | artom | stephenfin, so I'm not sure I'm comfortable with such a heavy handed approach | |
| 16:47:31 | mnaser | but anyways, back to that gigantic traceback | |
| 16:47:32 | mriedem | mnaser: i think grenade was doing it the right way before that docs change, | |
| 16:47:34 | mriedem | our docs were just old | |
| 16:47:37 | tssurya | dansmith: https://pastebin.com/7cQKv0fz | |
| 16:47:41 | artom | stephenfin, totally get where you're coming from though :) | |
| 16:47:44 | stephenfin | artom: Fair point. Wanna stick your thoughts in that review? | |
| 16:48:01 | dansmith | tssurya: oh because cell0's transport_url column can be NULL ? | |
| 16:48:03 | artom | stephenfin, yep, will do | |
| 16:48:15 | stephenfin | ta | |
| 16:48:25 | tssurya | yea | |
| 16:48:34 | dansmith | tssurya: add "and val" here: https://github.com/openstack/nova/blob/a53e46a75936b55c93face840764a67f2186cb11/nova/objects/cell_mapping.py#L162 | |
| 16:48:51 | dansmith | tssurya: you gonna cook up a patch or do you want me to? | |
| 16:49:09 | dansmith | tssurya: I wonder why/how we're not hitting that in the gate? | |
| 16:49:15 | dansmith | do we set it to something bogus? | |
| 16:49:29 | tssurya | dansmith: would be nice if you do it.. | |
| 16:49:33 | dansmith | tssurya: sure | |
| 16:49:46 | mriedem | mnaser: so this is being triggered when listing resource providers, what is doing that? | |
| 16:49:46 | tssurya | we were just doing the upgrade checks for rocky and saw this | |
| 16:50:03 | mnaser | mriedem: i'm assuming nova-scheduler? | |
| 16:50:26 | mnaser | https://github.com/openstack/nova/blob/377921103121bc62a3f7fce60c63e30815406851/nova/api/openstack/placement/objects/resource_provider.py#L1923-L1965 | |
| 16:50:27 | mnaser | this is interesting | |
| 16:50:56 | dansmith | tssurya: hmm, actually, it's not nullable on the object, so I'm not sure how it'd be doing the right thing if you have NULL in the db | |
| 16:51:16 | tssurya | dansmith: but we can have NULL on the conf file | |
| 16:51:38 | tssurya | technically there is no requirement to produce a transport_url for db sync right ? | |
| 16:52:15 | tssurya | s/to produce/to supply | |
| 16:52:16 | dansmith | tssurya: ohh, I see, I thought you were saying it was NULL in the database | |
| 16:52:24 | mnaser | [placement] incomplete_consumer_project_id and incomplete_consumer_user_id are a thing, i guess | |
| 16:52:45 | mriedem | mnaser: oh i guess adding/removing host aggregates in rocky would do it b/c we have to find the provider by name which we use GET /resource_providers?name=foo for that | |
| 16:52:45 | tssurya | no not in the database. but maybe we hit it here ? https://github.com/openstack/nova/blob/a53e46a75936b55c93face840764a67f2186cb11/nova/objects/cell_mapping.py#L150 | |
| 16:52:50 | mriedem | and when building the "provider tree" | |
| 16:53:24 | mriedem | when reporting inventory | |
| 16:53:27 | mriedem | from the compute | |
| 16:53:42 | mnaser | mriedem: the 500 is coming on /resource_providers/foo/allocations" | |
| 16:53:52 | dansmith | tssurya: so there is already a check for None-ness, but I guess if the value in the db isn't a template we'll fail to exit | |
| 16:54:13 | mnaser | and what it seems like almost any time its requesting allocations | |
| 16:54:22 | mriedem | mnaser: yeah that happens in the resource tracker on the compute | |
| 16:54:24 | tssurya | dansmith: ah yea was just wondering why that check didn't catch the Noneness | |
| 16:54:26 | mriedem | _remove_deleted_instances_allocations method | |
| 16:54:41 | mnaser | yep, i see compute ips sending in that request | |
| 16:54:44 | mriedem | so on startup of the compute, it's going to list allocations for the given compute ndoe provider | |
| 16:55:04 | mriedem | and try to create consumers table records for that provider and any allocations against it | |
| 16:55:32 | mriedem | i'm not sure how we race to hit _create_incomplete_consumers_for_provider though | |
| 16:55:41 | mriedem | because that should be idempotent | |
| 16:55:46 | mriedem | and jaypipes isn't around | |
| 16:55:55 | dansmith | tssurya: I'm shocked we haven't seen this in the regular tests | |
| 16:56:27 | tssurya | dansmith: yea we should have seen this somewhere | |
| 16:56:43 | tssurya | not sure if people didn't hit this when moving to rocky ? | |
| 16:57:34 | dansmith | well, I'm not sure why devstack doesn't hit it | |
| 16:57:40 | dansmith | I guess because we always have those defined in config | |
| 16:57:58 | tssurya | probably yea, but its easily reproducible | |
| 16:58:04 | dansmith | yep | |
| 16:58:05 | openstackgerrit | Artom Lifshitz proposed openstack/nova stable/pike: Handle volume API failure in _post_live_migration https://review.openstack.org/611093 | |
| 16:58:18 | tssurya | will you also backport this please ? we might need this in queens | |
| 16:58:19 | mriedem | our base test case uses the rpc fixture https://github.com/openstack/nova/blob/377921103121bc62a3f7fce60c63e30815406851/nova/test.py#L238 | |
| 16:58:25 | mriedem | so that's probably why we'd never hit it? | |
| 16:58:42 | mriedem | tssurya: the template stuff wasn't in queens | |
| 16:59:18 | mriedem | https://github.com/openstack/nova/blob/396156eb13521a0e7af4488a8cd4693aa65a0da2/nova/tests/fixtures.py#L728 | |
| 16:59:38 | mriedem | all of our tests at least configure this: transport_url = 'fake:/' | |
| 16:59:44 | tssurya | mriedem: oh yea sorry rocky then | |
| 16:59:53 | mriedem | tssurya: have you reported a bug? | |
| 17:00:03 | dansmith | mriedem: I got one already | |