Thursday, 2017-07-27

*** diablo_rojo has joined #openstack-meeting-cp00:01
*** edmondsw has joined #openstack-meeting-cp00:54
*** edmondsw has quit IRC00:58
*** harlowja has quit IRC01:19
*** nhelgeson has quit IRC02:02
*** markvoelker has quit IRC02:03
*** markvoelker has joined #openstack-meeting-cp02:06
*** yamahata has quit IRC02:30
*** edmondsw has joined #openstack-meeting-cp02:42
*** edmondsw has quit IRC02:46
*** harlowja has joined #openstack-meeting-cp03:31
*** ying_zuo has quit IRC04:15
*** _pewp_ has quit IRC04:18
*** _pewp_ has joined #openstack-meeting-cp04:20
*** gouthamr has quit IRC04:38
*** harlowja has quit IRC04:52
*** yamahata has joined #openstack-meeting-cp05:01
*** diablo_rojo has quit IRC06:08
*** edmondsw has joined #openstack-meeting-cp06:18
*** edmondsw has quit IRC06:23
*** coolsvap has joined #openstack-meeting-cp07:01
*** rarcea has joined #openstack-meeting-cp07:45
*** edmondsw has joined #openstack-meeting-cp08:06
*** edmondsw has quit IRC08:11
*** rarcea has quit IRC08:46
*** rarcea has joined #openstack-meeting-cp09:00
*** yamahata has quit IRC09:01
*** rarcea_ has joined #openstack-meeting-cp09:01
*** rarcea has quit IRC09:05
*** edmondsw has joined #openstack-meeting-cp09:54
*** sdague has joined #openstack-meeting-cp09:55
*** edmondsw has quit IRC09:58
*** rarcea_ has quit IRC10:26
*** rarcea_ has joined #openstack-meeting-cp10:38
*** edmondsw has joined #openstack-meeting-cp11:42
*** edmondsw has quit IRC11:47
*** edmondsw has joined #openstack-meeting-cp12:33
*** rarcea_ has quit IRC12:59
*** gouthamr has joined #openstack-meeting-cp13:31
*** ying_zuo has joined #openstack-meeting-cp15:08
*** edmondsw has quit IRC15:42
*** edmondsw has joined #openstack-meeting-cp15:50
ildikov#startmeeting cinder-nova-api-changes16:00
openstackMeeting started Thu Jul 27 16:00:39 2017 UTC and is due to finish in 60 minutes.  The chair is ildikov. Information about MeetBot at http://wiki.debian.org/MeetBot.16:00
openstackUseful Commands: #action #agreed #help #info #idea #link #topic #startvote.16:00
*** openstack changes topic to " (Meeting topic: cinder-nova-api-changes)"16:00
openstackThe meeting name has been set to 'cinder_nova_api_changes'16:00
ildikovjohnthetubaguy jaypipes e0ne jgriffith hemna mriedem patrickeast smcginnis diablo_rojo xyang1 raj_singh lyarwood jungleboyj stvnoyes16:00
jgriffitho/16:01
stvnoyeso/16:02
_pewp_hemna (^▽^)/ ʸᵉᔆᵎ16:02
smcginniso/16:03
*** mriedem has joined #openstack-meeting-cp16:03
mriedemsorry16:03
ildikovmriedem: no worries16:03
ildikovlet's start I think we can be quick-ish16:03
ildikovmriedem: did you get a chance to check out live_migrate?16:04
ildikovstvnoyes: I believe everything is fixed in that one by this point, right?16:04
mriedemno16:04
stvnoyesshould be good to go16:04
mriedembeen putting out other fires all week16:05
ildikovmriedem: ok16:05
ildikovmriedem: with the attach patch with jgriffith we figured out what the issue is16:06
stvnoyesi also have a rv to add some checks to the tempest migrate test. Want to make sure the aold attachments are deleted - https://review.openstack.org/#/c/487884/ waiting for CI before adding reviewers16:06
ildikovstvnoyes: sounds good, thanks!16:06
ildikovmriedem: the blockdev issues are with shelved16:06
mriedemjust shelved?16:06
jgriffithmriedem yep16:06
mriedemor is it shelve does the thing,16:06
mriedemand then it errors on every periodic update in the compute16:07
jgriffithmriedem it's strictly a matter of the resource counter running while an instance is shelved16:07
ildikovmriedem: we put the volume into reserved state when it's shelved and attach only when the instance gets unshelved16:07
jgriffithmriedem so here's what I'm trying to decide; two options (kinda)16:07
jgriffith1. Don't try and resource count in that case (ie if it's shelved and reserved, skip it)16:08
jgriffith2. Try and actually connect/attach the volume in the new flow just like the old code used to do16:09
jgriffithI prefer option 1 if possible16:09
mriedemthe instance is shelved or shelved offloaded?16:09
mriedembecause if it's offloaded, the guest is destroyed from the host16:10
mriedemand when we unshelve, we end up on another host potentially16:10
jgriffithshelved_offloaded16:10
mriedembtw, shelve is already totally screwed when it comes to having volumes attached16:10
mriedemhttps://review.openstack.org/#/c/257275/16:10
ildikovhmm, would be good to get it into a bit better shape then... :)16:11
mriedemyeah but that depends on cinder changes16:11
mriedemhttps://bugs.launchpad.net/cinder/+bug/152727816:11
openstackLaunchpad bug 1527278 in Cinder "remove_export needs an API to prevent dangling exports" [Wishlist,New]16:11
ildikovwith the new flow it wouldn't even be attached to the instance16:12
ildikovor well, it's already not16:12
mriedemjgriffith: is this the code where things start to blow up? https://github.com/openstack/nova/blob/master/nova/virt/libvirt/driver.py#L728416:13
ildikovmriedem: jgriffith: this one: https://github.com/openstack/nova/blob/master/nova/virt/libvirt/driver.py#L721016:14
jgriffith792816:15
smcginnisI was hoping at least two of you would have the same line #.16:15
mriedemildikov: yeah that's called from my link16:15
mriedemsmcginnis: same flow16:15
mriedemhttps://github.com/openstack/nova/blob/master/nova/virt/libvirt/driver.py#L729916:16
ildikovmriedem: in that case, yes; I was a bit more explicit16:16
mriedemthat method is called from a bunch of places though16:16
mriedemso what's different about the new and old flows here?16:17
jgriffithmriedem old flow does a connect and attach even when the instance is shelved16:17
jgriffithmriedem so the volume is connected to the host, iscsi-attached and connected16:18
jgriffithmriedem the new api's do NOT actually make the connection and just reserve the volume16:18
smcginnisMakes much more sense.16:18
jgriffithmriedem so there's not an actual device attached16:18
ildikovmriedem: https://review.openstack.org/#/c/330285/106/nova/compute/api.py line #363816:19
jgriffithsmcginnis yeah, it's more consistent with what's actually being requested, and the other part is...16:19
mriedem"old flow does a connect and attach even when the instance is shelved"16:19
mriedem^ when is that happening?16:19
jgriffiththe old flow abuses the state of the volume, re-initializes on unshelve and does some things under the covers with terminate connection16:19
jgriffithhides a bunch of stuff16:19
jgriffithmriedem it happens https://github.com/openstack/nova/blob/master/nova/compute/api.py#L359816:21
mriedemthat doesn't actually make a host connection though16:21
mriedemit can't,16:21
mriedembecause the instance.host is None16:21
jgriffithmriedem which calls back into the check_attach_and_reserve16:21
jgriffithmriedem it cheats16:21
mriedemright it reserves the volume,16:21
jgriffithand it does16:21
mriedemso that it can attach on unshelve16:21
jgriffithyes16:22
jgriffiththe whole thing is kinda *bad* IMO16:22
mriedemthe actual init conection and connect_volume happens on unshelve16:22
jgriffithit shouldn't behave that way16:22
mriedemyes it's terrible :)16:22
jgriffithmriedem it does it earlier in the old flow though, that's the problem16:22
mriedemHP public cloud pushed for that ability years ago and we're still paying for it,16:22
mriedemand shelve already sucked before that16:22
ildikovit calls volume_api.attach(), which attaches the volume in the Cinder DB kind of16:22
ildikovso yeah, just weird16:23
mriedemyeah so the old flow attaches the volume here https://github.com/openstack/nova/blob/master/nova/compute/api.py#L361616:23
mriedemwhich is just the in-use state change in cinder16:23
mriedemthe volume is not actually connected to the host16:23
mriedemsince there is no host at that point16:23
jgriffithmriedem https://github.com/openstack/nova/blob/master/nova/compute/api.py#L359116:24
mriedemjgriffith: that's for an instance that is not shelved_offloaded16:24
ildikovjgriffith: that's not called due to this: https://github.com/openstack/nova/blob/master/nova/compute/api.py#L365016:24
jgriffithsorry, wrong paste16:24
jgriffithOh wait16:25
jgriffithderp16:26
jgriffithold flow doesn't create a bdm16:26
jgriffithso it never gets queried on that call16:26
jgriffithbut we needed the bdm to indicate which api flow we were using on the unshelve16:26
jgriffithat least I think that's right :)16:26
mriedemthe old flow does https://github.com/openstack/nova/blob/master/nova/compute/api.py#L361116:27
mriedemthere is always a bdm otherwise we couldn't attach the volume during unshelve16:27
mriedemit won't have a mountpoint set16:27
mriedemhttps://github.com/openstack/nova/blob/master/nova/compute/api.py#L355716:27
mriedemmountpoint == device_name16:28
jgriffithmriedem hmm.... so that might solve the problem16:29
jgriffithI'll look at it again and try that16:29
jgriffithI'm not quite sure where that's getting populated differently from the old code though16:30
ildikovI guess we need to check the tests again, we might miss something16:31
jgriffithildikov what do you mean?16:31
ildikovas we don't do much differently besides having the volume in reserved state and having an attachment_id in the bdm as extra16:31
ildikovjgriffith: that seemingly there isn't much practical difference between the two flows here16:32
jgriffithildikov well I think mriedem may have found the answer16:32
jgriffithI need to compare the bdm's16:32
ildikovok, let's try that and then we will see where to move forward16:33
jgriffith'<disk type="block" device="disk">\n  <driver name="qemu" type="raw"16:33
jgriffithcache="none" io="native"/>\n  <source dev="/dev/sdc"/>\n  <target bus="virtio"16:33
jgriffithdev="vdb"/>\n  <serial>d41a57f4-4f90-4d58-8922-d8e05671227d</serial>\n16:33
jgriffith<address type="pci"/>\n</disk>\n'16:33
jgriffithThat's the issue16:33
jgriffithit has all that info for the reserved device, but it's not valid16:33
jgriffithsource dev inparticular16:34
mriedemthat's from the guest right?16:34
jgriffithmriedem yes, the xml16:34
mriedemon shelve offload, the guest should get deleted16:34
mriedemhttps://github.com/openstack/nova/blob/master/nova/compute/manager.py#L432116:35
mriedemas noted, we don't terminate the volume connection on the host during shelve offload https://review.openstack.org/#/c/257275/16:35
mriedemwhich is a super latent bug16:35
mriedemand apparently requires some changes in cinder to remove the export w/o detaching the volume16:35
mriedemi think somewhere in the bug report or patches someone said it's fine for lvm, but not for all backends16:36
mriedemprobably due to shared connections?16:36
mriedemto call terminate_connection there i mean16:36
jgriffithpossibly16:37
mriedemthis is also going to be a problem for counting connections on shelve offload for multiattach...16:37
mriedemi'd really like to just kill the shelve api16:37
jgriffithI wonder if we could make this simple process any more complex16:37
mriedem:)16:37
jgriffithmriedem I'd be down with that16:37
mriedemlots of people would16:37
mriedemwe just don't have a good way to get metrics if anyone uses it16:37
jgriffithmriedem I'd also be done for rewriting all of this mess in the next release (attach code in nova)16:38
jgriffithit's cra-cra16:38
mriedemso to summarize, i think we know there are some issues with the new flow and shelve16:38
mriedemyes?16:38
jgriffithalright, well let me poke at what I'm doing differently/wrong with the devices entry16:38
mriedemnot totally sure i understand what they are, or if we do, or how to fix16:38
mriedemok16:39
jgriffithmriedem yes16:39
mriedemok, having said that, i think it's fair to say the new attach flow is going to be deferred to queens16:39
mriedemthat shouldn't be a shock to everyone is it?16:39
jgriffithmriedem how about you give me til 16:00 Mountain today before doing that?16:39
jgriffithbecause frankly the behavior is fine16:39
jgriffithit's just this stupid counter16:39
ildikovjgriffith: +116:40
jgriffithand also it's no or never if people want me working on it16:40
mriedemgo ahead and shoot, but we still have the live migration patch and reviews to do, and pike3 has to get tagged today, and the rest of the team is dealing with cellsv2 and placement issues16:40
jgriffithof course there are plenty of other capable people but hopefully I'm valuable for something16:40
mriedemif this doesn't make pike, i'd like to land it very early in queens16:40
mriedemlike, ~ptg if possible16:40
ildikovmriedem: so no FFE this time?16:40
jgriffithif it doesn't land in Pike I'd rather just move on with life16:40
mriedemildikov: we have 2 weeks between today and rc116:41
jgriffithNova can continue to use the old stuff, we'll deprecate it16:41
jgriffithand leave it to you16:41
jgriffith:)16:41
mriedemdon't get me wrong, i want this stuff in16:41
jgriffithmriedem I know, not taking it that way16:41
mriedemand we've made a ton of progress16:41
ildikovyeah, we really did and live_migrate looked fine for Stephen before his vacation and it should be kind of there to get merged16:42
jgriffithI'm just being honest, that IMO having this old code that sucks stick around for yet another cycle is not good16:42
jgriffithCinder REALLY needs to move forward, but that's not your fault/problem16:42
jgriffithanyway16:42
mriedemthis isn't blocking cinder from moving forward though right?16:43
jgriffithlet me go work on this instead of soap boxing :)16:43
mriedemi'm not sure what moving forward means - you can't drop cinder api < 3.27 in queens anyway16:43
jgriffithmriedem well, you're our #1 (and favorite consumer) :)16:43
jgriffithmriedem it means get things like multi-attach sorted16:43
mriedemright - so i think we can still work on multiattach in queens,16:44
jgriffithforce the drivers to move off of the old code that is nothing but trouble for us16:44
mriedemif we can land these 2 changes early in queens, like ~ptg16:44
jgriffithand frankly fix that thing called16:44
jgriffithanyway16:44
smcginnisLet's just see how far jgriffith can get today.16:44
ildikovif it's not Pike, I would like to get this landed *before* the PTG, so we can move on by then and focus on the remaining bits of multi-attach, etc.16:44
mriedemsmcginnis: agree16:44
mriedemi'm sorry the reviews didn't come this release as usual16:45
mriedemshort more cores again16:45
mriedemand other high priority stuff taking attention16:45
jgriffithmriedem nah we know how that goes16:45
ildikovbut if we can think of RC1, 2 weeks means a lot of hours... :)16:45
jgriffithmriedem and honestly I could have done a much better job on this; thank GOD for ildikov !!!16:45
mriedemildikov: this is not the only thing we're working on16:45
jgriffithI would've dropped out at patch set 20 :)16:45
mriedemyes ildikov is certainly the champion16:46
jgriffithmriedem +116:46
mriedemok anything else?16:46
ildikovmriedem: we really didn't get lucky in this release, so I understand that part, I know it's not your or the team's fault, it is what it is :/16:46
ildikovtnx :)16:46
ildikovnah, let's see where we get with figuring out stuff ASAP and keep in touch16:46
ildikovI don't think we an solve anything more here than what we discussed already16:47
stvnoyesi have a question for the cinder folks, is there any intention to add attachment list (at least) to the cinder cli? When attachment objects are detached they go invisible. It would be nice to have a way to see them other than going into the db.16:47
ildikovis there anything else anyone would want to discuss?16:47
ildikovstvnoyes: you mean you would like to see the list of deleted attachments?16:48
jgriffithstvnoyes it's already there?16:48
jgriffithstvnoyes oh... detached == deleted16:49
jgriffithstvnoyes you mean add a filter to show deleted?16:49
jgriffithstvnoyes you can do "cinder attachment-list" using the cli currently16:49
jgriffithbut yes, if you call "cinder attachment-delete" it's disconnected and marked as deleted16:49
jgriffiththat's how by design16:50
stvnoyesah ok, I must have the wrong version spec'd, didn't see that. nm.16:50
jgriffithstvnoyes it could be not setting your silly microversion16:50
jgriffithexport OS_VOLUME_API_VERSION=3.2716:50
stvnoyesthat would be it16:50
stvnoyesthanks16:50
jgriffithstvnoyes yeah, took me a while to get in the habbit before adding it to my rc file16:50
jgriffithmicroversions will be the death of us all... mark my words :)16:50
stvnoyesyeah, I had fun with those in tempest with that new change16:51
jgriffithstvnoyes yeah, I don't envy you on that at all :(16:51
jgriffithstvnoyes and by the way!!!16:51
ildikovlife never gets boring with microversions it seems... :)16:51
jgriffithI also meant to give you a HUGE SHOUT OUT!!!!16:51
ildikovjgriffith: +1 :)16:52
jgriffithstvnoyes you've been a tremendous help and THANK YOU so much for stepping up and taking this on !!!16:52
stvnoyesthanks, it's been fun16:52
ildikovjgriffith: +2 +A :)16:52
stvnoyesi just found out I'll be at the ptg in denver16:52
ildikovstvnoyes: I cannot thank you enough times :)16:52
stvnoyesso hope to see you there16:52
jgriffithstvnoyes sweet! I owe you a drink!16:53
ildikovstvnoyes: awesome!!! :)16:53
ildikovok, is there anything else for today?16:54
ildikov:)16:54
mriedemnope16:55
ildikovok, then let's get back to making things work! :)16:56
ildikovthanks everyone!16:56
ildikovkeep in touch on the channels!16:56
ildikov#endmeeting16:56
*** openstack changes topic to "OpenStack Meetings || https://wiki.openstack.org/wiki/Meetings"16:56
openstackMeeting ended Thu Jul 27 16:56:31 2017 UTC.  Information about MeetBot at http://wiki.debian.org/MeetBot . (v 0.1.4)16:56
openstackMinutes:        http://eavesdrop.openstack.org/meetings/cinder_nova_api_changes/2017/cinder_nova_api_changes.2017-07-27-16.00.html16:56
openstackMinutes (text): http://eavesdrop.openstack.org/meetings/cinder_nova_api_changes/2017/cinder_nova_api_changes.2017-07-27-16.00.txt16:56
openstackLog:            http://eavesdrop.openstack.org/meetings/cinder_nova_api_changes/2017/cinder_nova_api_changes.2017-07-27-16.00.log.html16:56
*** mriedem has left #openstack-meeting-cp16:58
*** diablo_rojo has joined #openstack-meeting-cp17:06
*** harlowja has joined #openstack-meeting-cp17:09
*** yamahata has joined #openstack-meeting-cp17:40
*** notmyname has quit IRC17:43
*** notmyname has joined #openstack-meeting-cp17:44
*** diablo_rojo has quit IRC18:07
*** diablo_rojo has joined #openstack-meeting-cp18:07
*** xyang1 has joined #openstack-meeting-cp19:12
*** xyang1 has quit IRC20:21
*** xyang1 has joined #openstack-meeting-cp20:41
*** diablo_rojo has quit IRC21:58
*** edmondsw has quit IRC22:06
*** edmondsw has joined #openstack-meeting-cp22:07
*** lbragstad has quit IRC22:08
*** gouthamr_ has joined #openstack-meeting-cp22:10
*** gouthamr has quit IRC22:10
*** edmondsw has quit IRC22:12
*** diablo_rojo has joined #openstack-meeting-cp22:26
*** iyamahat has joined #openstack-meeting-cp22:29
*** diablo_rojo has quit IRC22:34
*** gouthamr_ has quit IRC22:37
*** iyamahat_ has joined #openstack-meeting-cp22:38
*** openstack has joined #openstack-meeting-cp22:43
*** ChanServ sets mode: +o openstack22:43
*** amrith has joined #openstack-meeting-cp22:45
*** lbragstad has joined #openstack-meeting-cp22:47
*** gouthamr has joined #openstack-meeting-cp22:53
*** diablo_rojo has joined #openstack-meeting-cp22:54
*** xyang1 has quit IRC23:00
*** lbragstad has quit IRC23:12
*** sdague has quit IRC23:21
*** edmondsw has joined #openstack-meeting-cp23:37
*** edmondsw has quit IRC23:41
*** kbyrne has quit IRC23:47
*** kbyrne has joined #openstack-meeting-cp23:48

Generated by irclog2html.py 2.15.3 by Marius Gedminas - find it at mg.pov.lt!