16:00:08 <jungleboyj> #startmeeting Cinder 16:00:09 <openstack> Meeting started Wed Apr 18 16:00:08 2018 UTC and is due to finish in 60 minutes. The chair is jungleboyj. Information about MeetBot at http://wiki.debian.org/MeetBot. 16:00:10 <openstack> Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 16:00:12 <openstack> The meeting name has been set to 'cinder' 16:00:15 <erlon> hey 16:00:19 <jungleboyj> Courtesy ping: jungleboyj DuncanT diablo_rojo, diablo_rojo_phon, rajinir tbarron xyang xyang1 e0ne gouthamr thingee erlon tpsilva patrickeast tommylikehu eharney geguileo smcginnis lhx_ lhx__ aspiers jgriffith moshele hwalsh felipemonteiro lpetrut 16:00:28 <jungleboyj> @! 16:00:29 <_pewp_> jungleboyj \( ・_・) 16:00:29 <tommylikehu> hey 16:00:39 <tpsilva> hello 16:00:45 <lseki> hi 16:00:46 <hamdyk> hello 16:00:49 <smcginnis> o/ 16:00:56 <e0ne> hi 16:01:09 <ganso> hello 16:01:21 <tbarron> hi 16:01:22 <_alastor_> o/ 16:01:41 <xyang> hi 16:02:50 <jungleboyj> Ok, looks like we have a pretty good quorum here. 16:02:54 <eharney> hi 16:03:11 <jungleboyj> eharney: Good. Was hoping to see you as well. :-) 16:03:43 <jungleboyj> Lets get started 16:03:49 <jungleboyj> #topic announcements 16:04:02 <jungleboyj> So, I am planning to cut milestone 1 today. 16:04:19 <jungleboyj> Want to make sure to stay on top of that. 16:04:28 <Swanson> hi 16:05:07 <jungleboyj> Nothing really major to announce with milestone 1 though. I did get the schedule for Cinder out on the web. 16:05:22 * jungleboyj is such a slacker 16:05:41 <jungleboyj> Just a reminder to watch the mailing list as the TC campaigning has started. 16:05:51 <jungleboyj> Looks like good candidates out there. 16:06:19 <jungleboyj> I have also gotten our Forum topics posted. So, we will see what comes of that. 16:06:37 <jungleboyj> #link https://etherpad.openstack.org/p/cinder-rocky-meeting-agendas 16:06:49 <jungleboyj> Our agenda for today for everyone's reference. 16:07:04 <jungleboyj> I think that is all we have for announcements. 16:07:20 <jungleboyj> #topic Rocky Priorities Review 16:07:36 <jungleboyj> So, I see that we have gotten through some of the specs and got them merged. Thank you! 16:07:48 <jungleboyj> I have updated the Rocky Specs/reviews accordingly. 16:08:09 <jungleboyj> Hope as we go toward milestone 2 we will see more reviews show up in here. 16:08:25 <jungleboyj> #link https://etherpad.openstack.org/p/cinder-spec-review-tracking 16:08:29 <jungleboyj> One question. 16:08:54 <jungleboyj> e0ne: We have the same spec under Generic Backup Implementation as well as Scheduler FIxes/improvements. 16:08:56 <jungleboyj> Is that right? 16:09:45 <jungleboyj> e0ne: ? 16:10:09 <e0ne> jungleboyj: scheduler improvements will be addressed separately from generic backups 16:10:09 <jungleboyj> Beuler ... Beuler ...... 16:10:39 <jungleboyj> Ok, so I thought you were going to push up some changes to the Generic Backup spec based on discussion at the PTG. 16:11:04 <erlon> jungleboyj, that is actually another topic 16:11:20 <jungleboyj> erlon: That was what I thought. 16:11:22 <e0ne> jungleboyj: I need to speed with geguileo. mayby I messed something 16:11:29 <erlon> the scheduler improvements is already listed on the top 16:11:37 <jungleboyj> erlon: Right. 16:11:42 <jungleboyj> So, that link in there is wrong. 16:12:10 <e0ne> here is a second spec according to scheduler https://review.openstack.org/#/c/559718/1/specs/rocky/support-placement-api.rst 16:12:12 <jungleboyj> e0ne: Are you still planning on pushing an update to the Generic Backup Implementation spec? 16:12:33 <e0ne> jungleboyj: I'll ask Gorka and let you know our decision 16:12:42 <jungleboyj> e0ne: Ok. Sounds good. 16:13:00 <e0ne> jungleboyj: at least, I need to add something backups via scheduler related things 16:13:24 <jungleboyj> Right. 16:13:51 <jungleboyj> Ok, I won't spend more time on this if you are working on it. 16:13:53 <e0ne> I've got working PoC, so it will be easier now 16:14:01 <jungleboyj> e0ne: Good. 16:14:33 <jungleboyj> geguileo: Are you here? 16:14:37 <erlon> e0ne, that name of that spec (support placement) is very misleading 16:14:47 <geguileo> jungleboyj: I am 16:14:57 <tommylikehu> erlon: ok.. 16:15:00 <jungleboyj> Hey! Here is your weekly harassment. 16:15:30 <e0ne> erlon: I agree. We'll have a conversation at the Summit too 16:15:42 <erlon> e0ne, nice 16:15:58 <jungleboyj> geguileo: Any HA development updates? 16:16:11 <geguileo> nop :-( 16:16:12 <jungleboyj> e0ne: Cool. Please make sure to pull me in on that. 16:16:20 <jungleboyj> geguileo: Ok. 16:17:02 <jungleboyj> #topic HA development progress 16:17:09 <jungleboyj> No updates for this week. 16:17:23 <jungleboyj> #topic Ocata backport from driverfixes progress 16:17:43 <jungleboyj> smcginnis: Thank you for all the work you put in to moving things from driverfixes/ocata to stable/ocata 16:17:53 <jungleboyj> I have gone through and looked at all of those. 16:18:07 <jungleboyj> eharney: Do you want to look at all of those or should I just merge them so we can move on? 16:18:32 <eharney> i'll pick through some more of them shortly 16:19:08 <jungleboyj> eharney: Ok, smcginnis was wondering if I should just merge them but I would feel better having you take a look if you can. 16:19:24 <eharney> i think quite a lot of them were already +W'd and just waiting on the beginning of the series to get approved, right? 16:19:25 <smcginnis> There's just a few that haven't been approved yet. All have at least one +2. 16:19:36 <smcginnis> #link https://review.openstack.org/#/q/status:open+project:openstack/cinder+branch:stable/ocata+topic:driverfixes_sync 16:19:46 <eharney> there are only like 5 left, i'll look at them today 16:20:15 <smcginnis> Thanks. It would be good to get driverfixes and stable in sync. 16:20:22 <jungleboyj> smcginnis: ++ 16:20:36 <e0ne> smcginnis: +1 16:20:38 <jungleboyj> eharney: Thank you! 16:21:10 <jungleboyj> Next topic. 16:21:26 <jungleboyj> #topic ``volume:extend_attached_volume`` policy rule mechanism does not allow backends that do not support this feature to be handled separetely, creating a bad user experience 16:21:35 <jungleboyj> Continued discussion from last week. 16:21:41 <jungleboyj> lseki: You here? 16:21:45 <lseki> hi 16:22:36 <lseki> we talked about using a extra-spec/capability instead of policy rule 16:22:39 <jungleboyj> So, we didn't come to a conclusion on this last week. 16:22:48 <lseki> so, I'm not sure if it would be a bugfix or a feature 16:23:01 <ganso> as per our discussion last week, it seemed to be considered a bug 16:23:26 <jungleboyj> ganso: Right. We didn't properly consider this when the feature was implemented. 16:23:41 <smcginnis> Yep, that's my take of it - it's a bug. 16:23:41 <ganso> but adding a new extra-spec/capability as a bugfix seems like a possible stretch of a bugfix 16:24:05 <lseki> considering it as a bug, we could backport it to pike/queens 16:24:11 <jungleboyj> :-) 16:24:46 <jungleboyj> Well, before we talk about backporting lets come to agreement as to how we want to resolve it. 16:25:10 <ganso> jungleboyj: I assumed we reached agreement on the extra-spec/capability approach 16:25:41 * erlon miss the old voting balots 16:26:07 <jungleboyj> Ok, so we will need drivers that support extending a volume to report it as a capability ... 16:26:24 <ganso> and the capability should default to False 16:26:35 <Swanson> Wait, what? 16:26:47 <erlon> Swanson, what what? 16:26:59 <jungleboyj> erlon: what what what? 16:27:00 <Swanson> Why false? 16:27:34 <Swanson> Now I have to do work to support something I think I can just do. (He said, not checking.) 16:27:47 <ganso> Swanson: because it is something that backends should explicitly report that they support, rather than assume they do if they do nothing, which could lead to bad user experience 16:27:49 <erlon> Swanson, False so people that supports move that to true, and you dont have driver that does not support reporting true 16:28:13 <jungleboyj> Swanson: Defaulting to true doesn't really resolve the problem. 16:28:24 <ganso> Swanson: in that case, if you already do, the person implementing this bugfix should add the capability reporting line of code to all drivers that support it 16:28:25 <smcginnis> I think most do support it. True would keep the existing behavior. 16:28:47 <smcginnis> Otherwise if it is working for someone now, then they upgrade, suddenly they need to change config to keep doing what they were doing. 16:28:47 <Swanson> Wouldn't people who don't support it and don't want people using them to have a suck experience wouldn't they change it to false? 16:28:53 <eharney> what is the behavior of the API if the driver doesn't support this? 16:28:57 <jungleboyj> Ok ... 16:29:03 <jungleboyj> Swanson: True. 16:29:16 <smcginnis> eharney: I believe it would attempt to, fail, and report that back to the user. 16:29:21 <smcginnis> So no real difference here. 16:29:29 <smcginnis> If it's True that is. 16:29:44 <smcginnis> Otherwise, it will just start failing for everyone until they figure out what changed. 16:29:45 <ganso> smcginnis: when they upgrade the new code should already include the new capability being reported for drivers that support it 16:29:47 <eharney> the volume would just revert to in-use, right? 16:30:23 <ganso> smcginnis: it could fail in a bad way if it is not properly handled in the driver 16:30:56 <erlon> eharney, that would only make sense during volume creation, if the volume is already created and the BE does not support, the extra-spec will not be used 16:31:12 <ganso> eharney: in NetApp's case, it remains detached with status "in-use", so it is a broken situation 16:31:34 <ganso> eharney: and would require a ticket to reset the state 16:31:52 <smcginnis> ganso: Wait, this is extending an in-use volume I thought. 16:31:58 <eharney> yeah something isn't adding up here 16:32:04 <ganso> eharney: this is just an example of what could possibly happen. We intend to fix that to prevent that situation regardless of the new implementation we are discussing here 16:32:35 <ganso> smcginnis, eharney: yes our driver currently has a bug in this workflow that detaches while trying to extend while it is attached 16:32:35 <eharney> i thought the whole source of limitations w.r.t. in-use extend was about what nova/the hypervisor supported 16:32:55 <smcginnis> ganso: Well that's a bigger issue then. It should not detach the volume. That's bad. 16:33:02 <smcginnis> eharney: ++ 16:33:04 <eharney> smcginnis: right 16:33:04 <ganso> smcginnis: yes, we are going to fix it regardless 16:33:21 <smcginnis> ganso: But that doesn't have anything to do with the current topic. 16:33:27 <smcginnis> ganso: That's just a bug in the netapp driver. 16:33:33 <jungleboyj> smcginnis: ++ 16:33:34 <ganso> smcginnis: but we are talking about the user experience here, of which the user would have already created a volume and finds out cannot be extended because the backend does not support it 16:33:56 <smcginnis> ganso: So the volume stays in the in-use state as you said above. 16:34:02 <ganso> smcginnis: yes, it was just an example of what could happen if we leave the default to True and drivers don't handle this kind of situation 16:34:02 <smcginnis> So what's the bad experience. 16:34:11 <smcginnis> Either the volume fails to extend or it works. 16:34:15 <eharney> there is another approach too 16:34:30 <smcginnis> And why it fails to extend doesn't matter if it's disabled or not supported. 16:34:33 <eharney> we discussed at one point allowing the extend to succeed, but not having it really take effect until a detach/reattach was done later 16:34:43 <ganso> smcginnis: defaulting to False avoids that for drivers that do not handle it 16:34:59 <smcginnis> And f's all the other's that do and changes existing nbehavior. 16:35:15 <Swanson> My point. 16:35:17 <ganso> smcginnis: actually no, because it will never ask the driver to extend the volume online as it will not be supported, since it would default to False 16:35:40 <smcginnis> And it won't ask the drivers that do support it either becuase it would default to False from what you are saying though. 16:35:54 <jungleboyj> ganso: But doesn't that appear the same to the end user. 16:36:09 <ganso> smcginnis: sorry I didn't get your last message ^ 16:36:18 <ganso> smcginnis: s/get/understand 16:36:22 <smcginnis> I don't care about drivers that don't support it. It's a basic storage operation to extend a volume. If you're storage fails, get new storage. 16:36:41 <smcginnis> We shouldn't hobble all the storage that does work for the few that don't. 16:37:02 <jungleboyj> Agreed. 16:37:34 <ganso> smcginnis: well I don't really see a problem with that, it could go either way, my suggestion was to False, and find the ones that should report True. The opposite works too. 16:37:58 <jungleboyj> So, if we add the capability, we default to true. Then users who have an environment that have a combination of storage that does or doesn't support it can use the extra spec and make sure they don't schedule to that storage if they need the capability. 16:38:16 <smcginnis> jungleboyj: ++ 16:38:17 <ganso> jungleboyj: +1 16:38:18 <jungleboyj> If the storage provider doesn't update their capabilities ... well, tough. 16:38:27 <eharney> it sounds like it might make more sense to add a capability that says that this is not supported 16:38:31 <eharney> if it's really a rare situation 16:38:40 <eharney> then by default everything just does what it should 16:38:43 <jungleboyj> eharney: Hmmm. 16:38:53 <ganso> jungleboyj: since I know my storage does not support it, I'll make sure to update my capabilities. I can't speak for others though. They might face bugs and it will be their problem then 16:39:40 <eharney> otherwise we make the majority of deployers worry about a capability for no reason 16:40:13 <jungleboyj> ganso: smcginnis erlon Thoughts on eharney proposal? 16:40:14 <ganso> eharney: do we know if the majority of drivers support it? 16:40:38 <eharney> ganso: i'm not sure, but my guess is that most do... was hoping someone here knows :) 16:41:01 <erlon> jungleboyj, I prefer this approach, defaults goes True, and we report false 16:41:13 <smcginnis> eharney: Isn't that proposal basically the same as defaulting it to true and having drivers report false if they do not? 16:41:36 <gman-tx> seems like it 16:41:36 <ganso> smcginnis: only if the majority supports. Otherwise default to False. That's what eharney implied 16:42:01 <jungleboyj> Do we have other capabilities that report an in-ability 16:42:07 <jungleboyj> That is my only concern there. 16:42:37 <eharney> smcginnis: maybe 16:42:55 <erlon> jungleboyj, there may be, dont remember any on top of my head now 16:43:02 <eharney> i'm not sure it's a great idea 16:43:12 <jungleboyj> Ok. Lets not spend more time on this. Lets add the capability and default to true. 16:43:20 <jungleboyj> I think that is consistent with what we do elsewhere. 16:43:44 <erlon> eharney, the default value or the hole idea? 16:43:59 <eharney> i'm still not sure why we want to add a driver capability for something that isn't mostly about the driver... but ok 16:44:12 <ganso> erlon: hole idea :P 16:44:14 <erlon> s/hole/whole 16:44:21 <jungleboyj> ganso: He he he. 16:44:24 <erlon> hahaha 16:44:33 <jungleboyj> eharney: This is where you flip a table 16:44:48 <smcginnis> eharney: I think in this case it is about the driver. At least one specific one for storage that doesn't support extending volumes. 16:44:51 <eharney> a capability is also not going to work for anyone who has multiple different compute hypervisors 16:45:03 <ganso> smcginnis: +1 16:45:03 <eharney> smcginnis: in the case we are talking about today yes... but i don't think it was when we designed this 16:46:08 <ganso> alright. About backporting... Anything against it? 16:46:25 <jungleboyj> Don't think so. It is a bug fix. 16:46:30 <jungleboyj> smcginnis: ^^^ ? 16:46:45 <smcginnis> I want to see the fix first. :) 16:46:57 <jungleboyj> smcginnis: ++ Makes sense. 16:47:03 <ganso> alright 16:47:08 <jungleboyj> Lets push up the proposed fix, we can review and move on. 16:47:09 <ganso> lseki: did we address all your concerns? 16:47:20 <lseki> ganso: yep 16:47:25 <ganso> =) 16:47:36 <jungleboyj> lseki: Like the cat that comes in and starts a fight between the dogs and then watches. :-) 16:47:44 <ganso> ROFL 16:47:46 <eharney> so what about people who actually are using the policy? 16:47:58 <lseki> jungleboyj: hahahahah 16:48:01 <eharney> that still works too? 16:48:24 <ganso> eharney: it should continue to work, but I'd suggest to remove the policy, or at least deprecate it 16:48:33 <ganso> eharney: as the capability will be handling it 16:48:41 <Swanson> Policy is policy, driver support is another thing? 16:48:53 <eharney> ... if they went and configured volume types etc, it's not going to just handle it on upgrade out of the box 16:49:02 <tommylikehu> Swanson: +1 16:49:05 <ganso> perhaps I missed some context when this was originally implemented. What was the purpose of this policy? 16:49:25 <ganso> eharney: even if it defaults to True? 16:49:54 <jungleboyj> Can we move on from this as we have two other topics. We can come back if time allows otherwise lets handle it through the code review. 16:49:57 <gouthamr> policy prevents users from using the API 16:50:16 <ganso> jungleboyj: ok 16:50:22 <jungleboyj> ganso: Thanks. 16:50:37 <eharney> api policy changes combined with new capabilities sound like something more appropriate for spec review than code review to me 16:51:12 <erlon> eharney, and therefore it goes out of the scope of a bug 16:51:13 <erlon> :) 16:51:26 <jungleboyj> Oy ... Moving on ... 16:51:35 <jungleboyj> #topic How to name volume type's reserved extra spec key or what's our naming schema for this purpose. 16:51:40 <jungleboyj> tommylikehu: ^^^^ 16:51:47 <tommylikehu> yeah! 16:51:56 <tommylikehu> we have decided to use reserved extra specs to address availability-zone volume type feature during ptg. but we havn't decided what exactly naming rules for the reserved keys. 16:52:09 <eharney> my input is the naming should not be "os-extended:" 16:52:24 <eharney> because that's basically a random string as far as extra specs go 16:52:25 <tommylikehu> yeah. that's what I use in my code patch:) 16:54:00 <jungleboyj> Yeah, that means nothing to me. 16:54:15 <eharney> worse than nothing, it means "api extension" to me... which it's... not 16:54:37 <jungleboyj> eharney: So any idea what would be better? 16:54:40 <tommylikehu> eharney: what's your suggestion? 16:54:56 <tommylikehu> os-reseved:xxx? 16:55:10 <eharney> what are these again? keys that have a special meaning within cinder? 16:55:31 <tommylikehu> yeah, that's what I thought 16:55:42 <jungleboyj> cinder-spec: 16:55:49 <eharney> you wrote it, i'm just asking for clarity :) 16:56:11 <tommylikehu> it means it's a reserved key for cinder 16:56:37 <jungleboyj> cinder-key: or reserved-key: 16:57:08 <tommylikehu> jungleboyj: both works for me 16:57:12 <eharney> how is it being "reserved" here different from something like a key used to control, for example, replication? 16:57:35 <eharney> i.e. we already have a number of keys like this, right? 16:57:51 <jungleboyj> 3 minutes left 16:58:11 <tommylikehu> cause it's different, we use this in the extra spec, but it will not be used when performing capability filtering as others do 16:58:34 <jungleboyj> Yeah that was how I thought this was different. 16:58:46 <jungleboyj> Not an extra spec for the driver. 16:59:02 <eharney> will there be other cases of needing keys like this in the future? 16:59:15 <jungleboyj> eharney: Possibly. 16:59:19 <tommylikehu> it could be 16:59:37 <jungleboyj> Lets finish this in the review now that people are aware of it. 16:59:46 <smcginnis> I thought there were some other reserved keys like this. 17:00:06 <tommylikehu> smcginnis: which are in the format of prefix: name? 17:00:09 <eharney> smcginnis: me too... it's hard to name the field before we come up with a solid definition of what it means... 17:00:29 <eharney> don't call it "os-" anything please 17:00:36 <tommylikehu> lol 17:00:41 <jungleboyj> tommylikehu: eharney smcginnis Can we finish this in the review? 17:00:41 <smcginnis> tommylikehu: Not sure, but I thought there was something already implemented. Been a very long time since I've looked at that code. 17:00:47 <jungleboyj> eharney: I agree. 17:00:49 <smcginnis> Guess we'll have to. 17:00:54 <tommylikehu> ok 17:00:55 <jungleboyj> Last 17:01:01 <jungleboyj> #topic Push to merge NVMeOF cinder changes 17:01:09 <jungleboyj> I think this is just a request to look at the reviews. 17:01:11 <ganso> time check 17:01:15 <Swanson> Overtime! 17:01:16 <erlon> -1m 17:01:17 <jungleboyj> hamdyk: Correct? 17:01:21 <hamdyk> Hi everyone 17:01:35 <hamdyk> jungleboyj: yes 17:01:35 <lseki> hamdyk: hi 17:01:36 <ganso> hamdyk: welcome 17:01:42 <hamdyk> thanks 17:01:42 <Swanson> smcginnis never ran over time. 17:01:44 <jungleboyj> Ok. We will take a look. 17:01:52 <jungleboyj> And that is the meeting. 17:01:53 <smcginnis> Swanson: Hah! 17:02:01 <jungleboyj> Swanson: :-p 17:02:04 <hamdyk> can you take a look at the patches and merge thim 17:02:09 <jungleboyj> hamdyk: Will do. 17:02:12 <hamdyk> I think we in a good shape there 17:02:17 <jungleboyj> Thanks everyone! 17:02:22 <erlon> -2m 17:02:23 <jungleboyj> #endmeeting