14:00:27 #startmeeting neutron_drivers 14:00:28 Meeting started Fri Sep 27 14:00:27 2019 UTC and is due to finish in 60 minutes. The chair is slaweq. Information about MeetBot at http://wiki.debian.org/MeetBot. 14:00:29 Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 14:00:31 The meeting name has been set to 'neutron_drivers' 14:00:31 hi 14:00:35 o/ 14:00:39 hi 14:01:05 o/ 14:01:11 let's wait for the quorum 14:01:45 hi 14:01:54 hi 14:02:10 ok, so we have quorum now 14:02:14 and we can start 14:02:27 #topic RFEs 14:02:39 I prepared couple of RFEs for today 14:03:00 first is: https://bugs.launchpad.net/neutron/+bug/1843211 14:03:00 Launchpad bug 1843211 in neutron "network-ip-availabilities' result is not correct when the subnet has no allocation-pool" [Wishlist,In progress] - Assigned to yangjianfeng (yangjianfeng) 14:04:31 I dont know if yangjianfeng is here now 14:04:44 just to comment about it 14:04:50 I think the idea is good 14:04:53 ralonsoh: yes, but we can still talk about it :) 14:04:58 but instead of changing the current parameter 14:05:17 IMO, we can add another one with the expected value 14:05:34 --> total amount of IP availables in the pools 14:05:35 ralonsoh: it's exactly what was proposed in comment #8 there 14:05:43 to add "available_ips" value 14:05:47 as new one 14:06:01 sorry for late 14:06:13 slaweq, yes, I know 14:06:25 that's what, IMO, this should be 14:06:27 hi amotoki 14:06:46 let's see what others think 14:07:40 I think what ralonsoh is saying makes sense, although I do not feel strongly about that 14:08:08 I think we can add some fields to cover allocation pools is different from defaulta as we discussed before. 14:08:46 alloc pool size, available IPs in the pool 14:09:07 exactly 14:11:26 ok, so we all agree that we should left "total_ips" value as it is now, to represent all IPs in subnet, and add new value which will reflect IPs available in defined allocation pools, is that correct summary? 14:11:59 I think so 14:12:00 I think the size of the allocation pool(s) is also needed 14:12:38 as used_ips counts IPs from both inside and outside of the allocation pools. 14:12:50 the amount of total IPs in the pools, yes, that's easy to be calculated and useful 14:13:11 amotoki: so something like "total_allocation_pool_ips" and "used_allocation_pool_ips"? 14:13:23 slaweq: exactly 14:13:31 amotoki: makes sense for me 14:13:39 it will allow us to know the IP allocation status clearly 14:14:36 it means the combos of (used, total) x (all under subnet, allocation pools) 14:15:10 yamamoto: mlavalle haleyb: what do You think about it? 14:15:29 mhhhh 14:15:43 are we proposing a new extension? 14:16:13 I think it will require new extension to make this api change discoverable 14:16:28 and leaving the current extension unchanged? 14:18:32 IMO it's the way how we are introducing changes in API, so yes 14:19:25 the reason I'm asking these questions is that reading through the discussion, I see that we have oscillated from "invalid", to this is a bug to a new extension 14:19:32 At the denver PTG we talked about adding versions for extensions specifically because adding an extension just to add an attribute is excessive. Did we drop that idea? 14:20:00 let me ask one question: is the current "total_ips" the size of allocation pools or the subnet CIDR size? 14:20:37 my understanding is that total_ips is the size of allocation pools 14:20:42 amotoki: I didn't check that by self but from bug report it seems that it's size of CIDR 14:20:50 amotoki: let me check that 14:21:32 the size of the CIDR is trivial, isn't it? 14:22:22 After stack.sh, I see total_ips='253' for /24 subnet, so I believe it means the size of allocation pools 14:22:26 amotoki: it's size of allocation pools 14:22:53 one issue we need to fix in the current API is total_ips with an empty allocation_pools. 14:23:00 this is apparently a bug. 14:23:09 here's the official doc: https://docs.openstack.org/api-ref/network/v2/index.html?expanded=list-network-ip-availability-detail#network-ip-availability-and-usage-stats 14:23:54 total_ips == The total number of IP addresses in a network 14:24:13 this is what our public commitment is about this API 14:24:41 mlavalle: yes, but it is different from what we have now.... 14:25:11 hmm, so it seems for me like a bug 14:25:30 when I created subnet with allocation pool specified, I had in total_ips number of ips from this allocation pool 14:25:32 the question is "do we change the behavior of total_ips to follow the API reference?" 14:25:48 or "do we update the API reference to sync the current behavior?" 14:25:50 but when I deleted allocation pool, I got total_ips=254 (size of cidr) 14:25:55 exactly, we are getting to the thorny part of this 14:26:25 that is why I want to untangle the bug side of this from the need / use case of the submitter 14:27:26 amotok'is comment suggests that the API is not actually behaving the way the doc states 14:27:29 right? 14:27:45 mlavalle: yes 14:27:59 I think total_ips shows the size of allocation pools. 14:28:26 but on the other hand, this API is not new 14:28:35 it's been in the wild for a long time 14:28:46 I may mention a ninteresting issue, if user's subnet CIDR is /27, then the total IPs will be 2, and the config dhcp_agents_per_network = 3 or more, bad things may happen. 14:29:22 liuyulong_: yeah, that's the confusing point of this API. 14:29:25 according to a patch the bug author submitted, it introduces a new field, so I guess the bug author would like to have more consistent information in the API response. 14:29:32 so either nobody is using it and we can adjust the bahavior to the doc or we potentially are going to break deployers that have tooling based on the actual bahavior 14:29:36 amotoki: I'm not exactly sure about that - according to my test now it seems that it should number of IPs inside allocation pools when pools are defined and total number of IPs from cidr(s) when allocaton pools are not defined 14:30:04 slaweq: okay, my memory might be wrong.... 14:30:38 sorry, it should be /31 14:31:13 slaweq: but that behavior you are seeing might be factored in in deployers tooling, right? 14:31:36 mlavalle: it might be, that's true 14:32:00 so the best here would be to have microversioning and fix it in new version :P 14:32:21 (or fix it and add new extension :P) 14:32:58 yes add a new extension, that might behave in contradictory ways 14:33:09 which might be the only way out 14:33:20 what I propose now are (1) to update the API reference to match the current API and (2) to improve the missing point of the current API if any (perhaps we have). 14:33:25 I just want us to have clarity of the situation 14:33:52 so we can communicate it properly to the community 14:35:03 even if this means "hey community, we meesed with the first API but we are not going to change the behavior becuase you might rely on it. Here's a new extension with a differente (and potentially contradictory) behavior" 14:35:54 mlavalle: yes, we will probably need something like that to deal with this issue 14:36:47 ok, so here is what I propose for now: 14:36:54 amotoki: and yes, let's adjust the doc to reflect, in extreme precision, what the actual bahavior is 14:37:17 next week I will check exactly current, real behaviour of this API and will describe it in comment to this bug 14:37:34 great, I was going to propose the same thing 14:37:44 I will also try to highligh how it is different (if it is) from current api-ref 14:37:50 I am also going to play with the extension and leave a note in the RFE 14:38:05 and next week can check this and decide what to do 14:38:09 sounds perfect 14:38:15 ok for You? 14:38:20 +1 14:38:23 +1 14:38:37 +1 14:38:45 +1 14:38:51 +1 14:39:03 is it common to use a pool size so different from cidr size? 14:39:18 we don't know 14:39:37 me neither :p 14:39:49 +1 14:39:55 I mean, we don't have a factual foundation to answer that accross the community 14:40:09 in fact, one step we can add to this is 14:40:16 ideally we would be size agnostic 14:40:19 why don't we ask in the ML? 14:41:00 njohnston: what do you mean by "size agnostic"? could you clarify? 14:41:27 mlavalle: do You mean to ask about how common it is to use allocation pools smaller than cidr or what? 14:42:03 that can be one question. the other question is how is this API doc being interpreted and used 14:42:37 mlavalle: can You send such email to ML than? 14:42:43 sure 14:42:55 mlavalle: thx a lot 14:43:35 I will probably do some testing before barfing a stupid question on the ML 14:43:57 sure :) 14:44:02 as my hat of a user, I usually read the API reference and then check the real behavior, so I think it is enough to clarify the behavior in the API refernce. 14:44:22 I am not sure what we are asking in a ML thread. 14:45:06 did the bug submitter explain his use case? 14:45:37 yamamoto: maybe we haven't clarifed enough yet.... 14:45:49 to me it looks like he's trying something interesting with the extension 14:46:14 that is why I want to untangle it from the potential bug / shortcoming in docs side of it 14:47:05 or maybe he is just testing corner cases without use cases 14:47:29 that may very well be the case 14:48:30 ok, I think we have some action plan for this one 14:48:37 so we can continue 14:48:40 correct? 14:48:44 amotoki: and what really raises a concern in my mind is the fact that even though we might have a mismatch between doc and actual behavior, that has been like that for along time 14:49:01 and nobody has complained about it 14:49:10 other that this submitter 14:49:39 tbh I didn't even know about this extension before this bug ;) 14:50:19 mlavalle: that's true. An operator I was involved write a custom tool as the API is not sufficient, so at least I have one usecase. It was not just reported :( 14:51:00 I'm done with this RFE for the time being 14:51:16 ok, lets go quickly to look at next one 14:51:21 https://bugs.launchpad.net/neutron/+bug/1821208 14:51:21 Launchpad bug 1821208 in neutron "[RFE] Only enforce policy when selected option does not match default" [Wishlist,Confirmed] 14:51:48 I wanted to get back to this as njohnston answered to some questions there already 14:53:19 ah yes, this one 14:53:58 njohnston: quite old one, right? :) 14:54:21 what if the deployer is not using the default set of policies? 14:55:26 how is that going to play with "A data structure would need to be created from the policy-processing code that matches policy names with their respective default values."? 14:55:39 It should probably be phrased "Only enforce policy when selected option does not match (default | supplied policy config)" 14:56:29 njohnston: I am okay if the new behavior is limited to attributes visible to users. 14:56:44 amotoki: that makes sense 14:57:35 I need to remember the full context. let me check and reply in the bug. 14:58:08 amotoki: sure, so lets revive this spec during this week, and reply in comments there 14:58:14 amotoki: Thanks. And it looks like the horizon behavior that spawned this conversation is still unfixed: https://bugs.launchpad.net/horizon/+bug/1841050 14:58:14 Launchpad bug 1841050 in OpenStack Dashboard (Horizon) "Horizon network port create panel shows "port security" checkbox that breaks port creation for non-admin users " [Undecided,Confirmed] - Assigned to Radomir Dopieralski (deshipu) 14:58:21 we can get back to it on one of next meetings 14:58:51 sounds good slaweq, the urgency is low 14:58:58 sounds good 14:58:58 njohnston: I though that :) 14:59:09 ok, so it seems we have a plan 14:59:13 thx for attending 14:59:23 and have a great weekend 14:59:27 have a good weekend! 14:59:27 o/ 14:59:29 o/ 14:59:30 bye 14:59:30 good night 14:59:36 #endmeeting