Earlier  
Posted Nick Remark
#openstack-nova - 2018-06-11
17:33:45 mriedem i assume in part to eventually decouple from needing to stash stuff in connection_info
17:33:51 mriedem that is not host/backend specific
17:34:08 mriedem mdbooth: again, that would be a bug in cinder if they aren't
17:34:29 artom We could just be ruthless about it and block swap if attachments (of any kind) are > 1
17:34:32 mdbooth mriedem: If that's true, that's good enough for me.
17:34:49 mdbooth mriedem: It was just weird enough for me to flag it.
17:34:55 mriedem i agree it's weird
17:35:22 mriedem there are some things missing from the attachments API, like the ability to actually create/update an attachment and set attach_mode on the record directly
17:35:30 mriedem rather than indirectly via connector['mode']
17:36:05 mriedem AND
17:36:28 mriedem the volume admin metadata readonly stuff needs to be decoupled from the actual attachments, so attach mode is per-attachment
17:36:30 mriedem not per-volume
17:36:52 mriedem but i don't think jgriffith et al got that far when plumbing this into cinder, but the TODOs and NOTEs are in the code
17:37:04 mriedem e.g. https://github.com/openstack/cinder/blob/master/cinder/volume/manager.py#L4384
17:37:29 mdbooth mriedem: Actually I did get far enough to read some of that
17:37:46 mdbooth It looks like attached_mode in admin_metadata is basically a temporary stash
17:38:07 mdbooth So it's admin_metadata on the volume, but it only lives during the creation of a single attachment.
17:38:08 openstackgerrit Matt Riedemann proposed openstack/nova master: placement: always create consumer records https://review.openstack.org/567678
17:38:09 openstackgerrit Matt Riedemann proposed openstack/nova master: add consumers generation field https://review.openstack.org/557958
17:38:10 openstackgerrit Matt Riedemann proposed openstack/nova master: placement: Allocation.consumer field https://review.openstack.org/565405
17:38:11 openstackgerrit Matt Riedemann proposed openstack/nova master: rework allocation handler _allocations_dict() https://review.openstack.org/565407
17:38:12 openstackgerrit Matt Riedemann proposed openstack/nova master: Add a microversion for consumer generation support https://review.openstack.org/565604
17:38:13 openstackgerrit Matt Riedemann proposed openstack/nova master: Fix nits from change Id609789ef6b4a4c745550cde80dd49cabe03869a https://review.openstack.org/574324
17:38:23 mriedem efried: dansmith: ok rebased ^
17:38:40 mriedem my find/replace 1.27 -> 1.28 fu in the actual microversion change might have missed something
17:38:44 mriedem but tests are happy
18:10:10 openstackgerrit Dan Smith proposed openstack/nova stable/pike: Change consecutive build failure limit to a weigher https://review.openstack.org/573248
18:12:18 openstackgerrit Curt Moore proposed openstack/nova master: Add ability to download Glance images into the libvirt image cache via RBD https://review.openstack.org/574301
18:14:05 openstackgerrit Brianna Poulos proposed openstack/nova master: Implement certificate_utils https://review.openstack.org/479949
18:14:06 openstackgerrit Brianna Poulos proposed openstack/nova master: Plumb trusted_certs through libvirt driver image paths https://review.openstack.org/561262
18:14:07 openstackgerrit Brianna Poulos proposed openstack/nova master: Add trusted_image_certificates to REST API https://review.openstack.org/486204
18:14:08 openstackgerrit Brianna Poulos proposed openstack/nova master: Add notification support for trusted_certs https://review.openstack.org/563269
18:14:09 openstackgerrit Brianna Poulos proposed openstack/nova master: Add certificate validation docs https://review.openstack.org/560158
18:17:49 artom In situations like this I really wish Python had static typing
18:18:28 artom ... or that OpenStack was written in Java ;)
18:18:29 mriedem melwitt: reminder, you can release r-2 now https://launchpad.net/nova/+milestone/rocky-2
18:18:40 mriedem based on https://review.openstack.org/#/c/573495/ it looks like it was june 8
18:30:28 openstackgerrit Matt Riedemann proposed openstack/nova master: xenapi: drop deprecated vif_driver config option https://review.openstack.org/567877
18:35:31 openstackgerrit Curt Moore proposed openstack/nova master: Add ability to download Glance images into the libvirt image cache via RBD https://review.openstack.org/574301
18:49:07 openstackgerrit Merged openstack/nova stable/queens: Fix interpretation of max_attempts for scheduling alternates https://review.openstack.org/573254
18:55:21 mriedem dansmith: i have beat your heart down on that patch as requested
18:56:36 dansmith aye
18:57:28 melwitt mriedem: what does it mean to release r-2 wrt to launchpad? oh, I see a "create release link"
18:58:15 mriedem just paperwork
18:58:34 mriedem but see the storyboard thread in the ML about why people care
18:59:21 melwitt okay, I just didn't know to/how to do it. my bad
19:01:43 mriedem artom: re https://review.openstack.org/#/c/572790/ i don't think we need your tempest patch
19:01:47 mriedem i'm not sure why you created it
19:01:57 mriedem because did you see that ^ depends on https://review.openstack.org/#/c/573025/ ?
19:02:12 artom mriedem, we don't? I mean, to actually test the "positive" case where we refuse the swap
19:02:29 mriedem you mean negative?
19:03:07 artom mriedem, I genuinely have no idea :/
19:03:17 artom mriedem, the case where we assertRaises(400)
19:03:18 artom That one.
19:03:18 mriedem testing error conditions in tempest are called negative tests
19:03:26 artom OK, negative then :)
19:05:17 melwitt mriedem: okay, done. thank you for letting me know about it https://launchpad.net/nova/+milestone/rocky-2
19:05:45 melwitt I removed the rocky-2 milestone target from https://blueprints.launchpad.net/nova/+spec/preemptible-instances also
19:08:02 mriedem artom: ok here is your 400 http://logs.openstack.org/09/573809/2/check/nova-multiattach/ebd4e2a/job-output.txt.gz#_2018-06-09_14_49_19_637410
19:08:18 mriedem PUT http://104.130.136.141/compute/v2.1/servers/57ba4f52-8076-45e2-b6ac-14cf789b6926/os-volume_attachments/8361a693-e7c6-4a9b-8303-c303d5fbdad5
19:08:23 mriedem Body: {"volumeAttachment": {"volumeId": "d9636fa2-78a3-468a-b56a-9e6e2d6f14f6"}}
19:08:48 artom mriedem, yep, which is why I posted that patch
19:08:56 artom mriedem, you don't have to merge it if you don't have to :)
19:09:07 artom Although the cleanup failure is interesting
19:09:11 mriedem i'm not QA core so i can't merge it..
19:09:28 artom Either I'm really thick and doing something wrong, or refusing to swap a volume legit makes it undetachable
19:10:32 mriedem where is the cleanup code that is waiting for the volume to be available after the swap failure,
19:10:41 mriedem the code is doing the right thing, it leaves the old volume attached (in-use)
19:11:04 mriedem the trace in the tempest failure doesn't make sense to me
19:11:14 artom Same here, I can't understand it
19:11:31 artom I tried printing the full stacktrace manually, but got just a bunch of test runner stuff
19:11:46 artom So I can't even pinpoint where it's from - I *think* it's the cleanup phase
19:11:59 mriedem i'm pretty sure it's the cleanups from attach_volume
19:12:09 mriedem # is already detached.
19:12:09 mriedem # Ignore 404s on detach in case the server is deleted or the volume
19:12:09 mriedem self.volumes_client, volume['id'], 'available')
19:12:09 mriedem self.addCleanup(waiters.wait_for_volume_resource_status,
19:12:09 mriedem # teardown.
19:12:09 mriedem # is so we don't error out when trying to delete the volume during
19:12:09 mriedem # On teardown detach the volume and wait for it to be available. This
19:12:10 mriedem self.addCleanup(self._detach_volume, server, volume)
19:12:27 mriedem so, your test can't use that from the base class
19:12:59 mriedem oh wait
19:13:03 mriedem hmm
19:13:03 mriedem but it should be detaching the volume
19:14:51 mriedem looks like n-cpu is detaching it here http://logs.openstack.org/09/573809/2/check/nova-multiattach/ebd4e2a/logs/screen-n-cpu.txt.gz#_Jun_09_14_49_16_096647
19:17:13 mriedem this shows the volume was available right when it failed http://logs.openstack.org/09/573809/2/check/nova-multiattach/ebd4e2a/job-output.txt.gz#_2018-06-09_15_07_12_120196
19:17:26 mriedem [tempest.common.waiters] volume 8361a693-e7c6-4a9b-8303-c303d5fbdad5 reached available after waiting for 4.377925 seconds
19:18:04 artom Whoa? But it waits for like a minute and a half?
19:19:04 mriedem this is the detach request http://logs.openstack.org/09/573809/2/check/nova-multiattach/ebd4e2a/job-output.txt.gz#_2018-06-09_15_07_12_102448
19:19:09 mriedem 2018-06-09 14:49:15,860 5908 INFO [tempest.lib.common.rest_client] Request (TestMultiAttachVolumeSwap:_run_cleanups): 202 DELETE http://104.130.136.141/compute/v2.1/servers/57ba4f52-8076-45e2-b6ac-14cf789b6926/os-volume_attachments/8361a693-e7c6-4a9b-8303-c303d5fbdad5 0.301s
19:19:21 mriedem 2018-06-09 14:49:19,377 5908 INFO [tempest.common.waiters] volume 8361a693-e7c6-4a9b-8303-c303d5fbdad5 reached available after waiting for 4.377925 seconds
19:19:27 mriedem took 4 seconds to detach it
19:21:28 mriedem yeah i have no idea where that waiter is coming from
19:21:43 mriedem besides just the attach_volume cleanup
19:22:25 artom I'll try to dig into it more
19:22:44 artom Not now though, don't want to context switch from NUMA LM
19:31:16 openstackgerrit Chris Dent proposed openstack/nova master: Do not use nova.test in placement.test_util https://review.openstack.org/574403
19:31:17 openstackgerrit Chris Dent proposed openstack/nova master: Do not use nova.test in placement.handlers.test_aggregate https://review.openstack.org/574404
19:31:18 openstackgerrit Chris Dent proposed openstack/nova master: Do not use nova.test in placement.test_requestlog https://review.openstack.org/574405

Earlier   Later