| Posted | Nick | Remark | |
|---|---|---|---|
| #openstack-nova - 2017-10-10 | |||
| 18:06:17 | openstackgerrit | Andrey Volkov proposed openstack/osc-placement master: CLI for inventories https://review.openstack.org/457533 | |
| 18:06:18 | openstackgerrit | Andrey Volkov proposed openstack/osc-placement master: CLI for allocations https://review.openstack.org/457534 | |
| 18:06:18 | openstackgerrit | Andrey Volkov proposed openstack/osc-placement master: CLI for usages https://review.openstack.org/457535 | |
| 18:06:19 | openstackgerrit | Andrey Volkov proposed openstack/osc-placement master: CLI for aggregates https://review.openstack.org/505643 | |
| 18:18:33 | mriedem | sdague: i just realized that when showing server details, we provide a link to view image details, and the link for the image details is to the compute api images proxy api, which is deprecated starting in 2.36 :) | |
| 18:19:30 | mriedem | https://github.com/openstack/nova/blob/master/nova/api/openstack/compute/views/servers.py#L254 | |
| 18:20:04 | mriedem | seems like if the microversion is >= 3.26 we should generate the alternate link to the images api | |
| 18:20:20 | mriedem | https://github.com/openstack/nova/blob/master/nova/api/openstack/compute/views/images.py#L133 | |
| 18:22:05 | mriedem | ooo, and with efried's new service type stuff, if you don't set CONF.glance.api_servers, we'd actually generate maybe a valid images api url for you | |
| 18:31:20 | sdague | mriedem: honestly, I'm not sure we should be generating an image link | |
| 18:31:28 | sdague | I thought we had gotten rid of that | |
| 18:31:48 | mriedem | are you thinking of the location header in the response when creating a snapshot or backup image? | |
| 18:32:10 | mriedem | https://docs.openstack.org/nova/pike/reference/api-microversion-history.html#id40 | |
| 18:32:46 | mriedem | yeah we probably should have used that microversion to also stop returning image api url links | |
| 18:33:07 | sdague | I actually misremembered that we did | |
| 18:33:16 | sdague | maybe we stopped accepting image url somewhere | |
| 18:33:29 | mriedem | i remember gmann fixing something but can't remember what | |
| 18:36:15 | mriedem | unrelated, for some weird reason, i'm tracing a reboot request through the API, and i see the request ID in the n-api logs but it's not showing up in the n-cpu logs | |
| 18:39:44 | cfriesen | does anyone know why in nova.virt.libvirt.host.Host_init_events_pipe() we have a queue as well as a pipe? Why can't we just block on the queue rather than the pipe? | |
| 18:40:31 | mriedem | talk to mdbooth | |
| 18:41:40 | cfriesen | looks like it was dpb that added it originally | |
| 18:59:21 | openstackgerrit | Elod Illes proposed openstack/nova master: WIP: Transform scheduler.select_destinations notification https://review.openstack.org/508506 | |
| 19:14:57 | openstackgerrit | Elod Illes proposed openstack/nova master: WIP: Transform scheduler.select_destinations notification https://review.openstack.org/508506 | |
| 19:30:38 | mtreinish | mriedem: changing error codes on us | |
| 19:31:18 | mriedem | making bad requests | |
| 19:31:20 | mriedem | tsk tsk | |
| 19:32:00 | mriedem | jgriffith: ildikov: debugging a failed test on the new style attach patch, i can't figure out why but we're doing an attachment_update during a reboot | |
| 19:32:21 | mriedem | http://logs.openstack.org/85/330285/144/check/gate-tempest-dsvm-neutron-multinode-full-ubuntu-xenial-nv/89229f6/logs/subnode-2/screen-n-cpu.txt.gz#_Oct_10_13_02_05_685303 | |
| 19:32:39 | mriedem | i can't tell what's eventually calling that | |
| 19:33:56 | ildikov | mriedem: does that share code path with any other operation? | |
| 19:34:39 | ildikov | I don't recall a reboot scenario right now | |
| 19:34:54 | ildikov | maybe jgriffith_ does | |
| 19:35:26 | ildikov | mriedem: on that attachment_complete, I added the note on the higher level to clarify why that call is there as I kept re-investigating it | |
| 19:35:50 | mriedem | ildikov: yeah i saw the note, but the logic is basically: | |
| 19:36:01 | mriedem | 1. if do_driver_attach - call attachment_complete down in the bowels, else | |
| 19:36:03 | mriedem | 2. do it here | |
| 19:36:15 | mriedem | as noted, we should just always do it in the bowels as we did before | |
| 19:36:20 | ildikov | mriedem: I'm fine with just covering it in bdm.attach if we don't want to deal with the different flows for this | |
| 19:36:44 | mriedem | i definitely don't want to have to know in the compute manager about what's going on in the DriverVolumeBlockDevice.attach based on flags passe din | |
| 19:37:01 | mriedem | i.e. the logic above | |
| 19:37:21 | ildikov | mriedem: I agree, I will change that | |
| 19:38:07 | ildikov | however I don't think that has much to do with the current failures, except if something got introduced that would need that call | |
| 19:38:11 | mriedem | as for what's doing the attachment_update during reboot, it's not clear to me yet | |
| 19:38:32 | mriedem | refreshing the volume connection info would do it, but i don't see that called during reboot | |
| 19:39:13 | mriedem | this is a soft reboot too, so we're not rebuilding the guest at all | |
| 19:39:50 | ildikov | update is called only at three places | |
| 19:40:32 | mriedem | swap volume, volume attach, and refresh_connection_info | |
| 19:40:42 | ildikov | _init_volume_connection, _volume_attach, and _get_connection_updates which is called in refresh_connection_info | |
| 19:41:06 | mriedem | yeah i'm failing to see where reboot calls any of those, directly or otherwise | |
| 19:41:17 | mriedem | but the request id for the reboot operation is showing it happening | |
| 19:42:07 | efried | mriedem sdague FYI glance will only let you skip *all* conf after https://review.openstack.org/#/c/490057/ is in place. Which is to be proven by https://review.openstack.org/#/c/490031/ passing jenkins. | |
| 19:42:16 | ildikov | I couldn't get there to check that scenario test, I didn't think there's a reboot in it... :/ | |
| 19:42:44 | mriedem | ildikov: yeah TestMinimumBasicScenario.test_minimum_basic_scenario attaches a volume and then soft reboots the guest | |
| 19:42:52 | mriedem | then ssh's into the guest to make sure the block device is still attached | |
| 19:43:20 | mriedem | at the end when the test is cleaning up it goes to detach the volume which fails because the volume status is 'attaching' rather than 'in-use' | |
| 19:43:30 | mriedem | and i think that's happening because of a wild attachment_update call during the reboot | |
| 19:43:36 | mriedem | which screws up the volume status | |
| 19:44:48 | ildikov | jgriffith_ said that it's calling the old flow | |
| 19:44:54 | ildikov | which seemed odd | |
| 19:45:32 | ildikov | and yeah, if we don;t have attachment_complete following attachment_update then the volume status remains "attaching" | |
| 19:46:06 | mriedem | it can't be the old flow because otherwise we wouldn't call attachment_update | |
| 19:46:22 | mriedem | which i see happen right here during reboot http://logs.openstack.org/85/330285/144/check/gate-tempest-dsvm-neutron-multinode-full-ubuntu-xenial-nv/89229f6/logs/subnode-2/screen-n-cpu.txt.gz#_Oct_10_13_02_05_685303 | |
| 19:46:35 | mriedem | PUT https://10.210.129.28/volume/v3/2732673e8c4a46249b654cee4b963920/attachments/0797bbdd-ecd6-488b-bc85-b23b5de49643 | |
| 19:46:42 | mriedem | -d '{"attachment": {"connector": {"platform": "x86_64", "host": "ubuntu-xenial-2-node-rax-ord-11308327-949541", "do_local_attach": false, "ip": "10.210.195.60", "os_type": "linux2", "multipath": false, "initiator": "iqn.1993-08.org.debian:01:cc478c1ad9"}}}' | |
| 19:46:48 | mriedem | it's updating the attachment with the host connector | |
| 19:47:24 | sdague | efried: nice | |
| 19:48:43 | ildikov | yeah, I saw that too on the Cinder side | |
| 19:48:51 | ildikov | I mean the new flow call | |
| 19:49:35 | mriedem | this is where the attachment is created during volume attach | |
| 19:49:35 | mriedem | http://logs.openstack.org/85/330285/144/check/gate-tempest-dsvm-neutron-multinode-full-ubuntu-xenial-nv/89229f6/logs/subnode-2/screen-n-cpu.txt.gz#_Oct_10_13_01_49_423050 | |
| 19:51:51 | mriedem | and this is where we update the attachment with the host connector once it's connected during the initial attach | |
| 19:51:51 | mriedem | http://logs.openstack.org/85/330285/144/check/gate-tempest-dsvm-neutron-multinode-full-ubuntu-xenial-nv/89229f6/logs/subnode-2/screen-n-cpu.txt.gz#_Oct_10_13_01_44_516548 | |
| 19:52:56 | mriedem | wth, those times don't line up | |
| 19:53:15 | mriedem | oh http://logs.openstack.org/85/330285/144/check/gate-tempest-dsvm-neutron-multinode-full-ubuntu-xenial-nv/89229f6/logs/subnode-2/screen-n-cpu.txt.gz#_Oct_10_13_01_49_423050 is the attachment_complete call | |
| 19:55:04 | ildikov | that update must be from refresh | |
| 19:55:07 | ildikov | what else? | |
| 19:55:20 | mriedem | that's what i'm thinking too, but don't see where | |
| 20:00:12 | ildikov | that refresh seems to be called in _get_instance_block_device_info in compute/manager.py which gets called in a zillion places | |
| 20:00:41 | mriedem | that's only if refresh_conn_info is True | |
| 20:00:43 | mriedem | it defaults to False | |
| 20:02:09 | ildikov | ah true | |
| 20:05:23 | ildikov | and it uses the default for reboot as it's supposed to | |
| 20:06:32 | ildikov | can anything in libvirt call that? | |
| 20:06:47 | mriedem | there are a couple of places but they are during snapshot | |
| 20:08:28 | openstackgerrit | Merged openstack/nova master: use already loaded BDM in instance.create https://review.openstack.org/483969 | |
| 20:08:30 | ildikov | hmm, weird, as there's nothing around that update call, but brick doing its things... | |
| 20:09:53 | openstackgerrit | Merged openstack/nova master: Fix sending legacy instance.update notification https://review.openstack.org/510603 | |
| 20:11:06 | jgriffith_ | mriedem ildikov http://logs.openstack.org/85/330285/144/check/gate-tempest-dsvm-neutron-full-ubuntu-xenial/7a079b9/logs/screen-c-api.txt.gz?#_Oct_10_12_53_01_672274 | |
| 20:12:04 | ildikov | jgriffith_: I think that's 'begin_detaching' | |
| 20:12:11 | jgriffith_ | yes it is | |
| 20:12:18 | ildikov | jgriffith_: which we left untouched | |
| 20:12:28 | jgriffith_ | "we" ? | |
| 20:12:35 | ildikov | so that call is normal | |
| 20:12:53 | ildikov | jgriffith_: I kept you in the loop with that :) | |
| 20:13:37 | ildikov | jgriffith_: I mean to keep that in the flow as we don't want parallel detaches happening as we don't have anything to change the volume or whatever state to 'detaching' | |
| 20:15:08 | openstackgerrit | Eric Fried proposed openstack/nova master: DNM: CI check https://review.openstack.org/511006 | |
| 20:15:54 | mriedem | i'm not really following what begin_detaching has to do with this | |
| 20:16:03 | mriedem | that's the symptom | |
| 20:16:06 | openstackgerrit | Jackie Truong proposed openstack/nova master: Implement certificate_utils https://review.openstack.org/479949 | |
| 20:16:10 | mriedem | looking at the tempest logs, the volume is in-use here http://logs.openstack.org/85/330285/144/check/gate-tempest-dsvm-neutron-multinode-full-ubuntu-xenial-nv/89229f6/console.html#_2017-10-10_13_20_50_909920 | |