15:02:15 <ihrachys> #startmeeting neutron_upgrades
15:02:15 <openstack> Meeting started Mon Apr  4 15:02:15 2016 UTC and is due to finish in 60 minutes.  The chair is ihrachys. Information about MeetBot at http://wiki.debian.org/MeetBot.
15:02:16 <openstack> Useful Commands: #action #agreed #help #info #idea #link #topic #startvote.
15:02:19 <openstack> The meeting name has been set to 'neutron_upgrades'
15:02:32 <korzen> hello
15:02:35 <ihrachys> o/
15:02:39 <jschwarz> o/
15:02:46 <rossella_s> hello
15:03:18 <ihrachys> I don't have any announcements for the team, so let's get straight to the matter
15:03:23 <ihrachys> #topic Partial Multinode Grenade
15:03:40 <ihrachys> rossella_s was going to analyze failure causes for the partial job we have
15:03:43 <ihrachys> rossella_s: any updates?
15:04:24 <rossella_s> ihrachys, the failure rate is back to normal after few backports ...so I didn't analyze further
15:04:47 <ihrachys> #link http://grafana.openstack.org/dashboard/db/neutron-failure-rate?panelId=6&fullscreen
15:05:03 <ihrachys> (be patient, it's opening slowly)
15:05:36 <ihrachys> yeah, seems like we are now under all other lines
15:05:57 <mhickey> Hello
15:06:12 <ihrachys> mhickey: hi
15:06:14 <rossella_s> mhickey, welcome
15:06:26 <mhickey> ihrachys: Hey.
15:06:43 <ihrachys> rossella_s: so do we think we are ok to ask armax about getting it voting?
15:06:44 <mhickey> rossella_s: Hey also! :)
15:07:02 <rossella_s> ihrachys, yay
15:07:21 <electrocucaracha> I remember that he was reverting some changes related to tempest last friday
15:07:33 <ihrachys> electrocucaracha: it was not related
15:07:44 <ihrachys> not to grenade I mean
15:07:50 <electrocucaracha> ok
15:07:58 <ihrachys> rossella_s: ok, let's catch Armando once he is back online :)
15:08:11 <rossella_s> ihrachys, let's do that :)
15:08:32 <ihrachys> I prefer we keep the topic at it until we get it voting. we'll get back to dvr flavour next time.
15:08:50 <ihrachys> #topic Object implementation
15:09:04 <ihrachys> ok, for objects, some tiny progress was made lately
15:09:18 <ihrachys> we landed subnetpool
15:09:19 <ihrachys> #link https://review.openstack.org/275789
15:09:25 <electrocucaracha> \o/
15:09:29 <ihrachys> we also landed dhcp options
15:09:30 <ihrachys> #link https://review.openstack.org/273072
15:09:36 <rossella_s> I was distracted these last weeks
15:10:11 <ihrachys> there are patches in flight to integrate those objects in plugin db code
15:10:11 <korzen> I have rearrange the wiki page
15:10:21 <ihrachys> #link https://review.openstack.org/285397 for dhcp options
15:10:36 <ihrachys> #link https://review.openstack.org/300056 for subnetpool
15:10:51 <ihrachys> for the latter, I hit an issue of not having access to standard attribute field
15:10:59 <ihrachys> something that should be tackled by Jakub's decorator:
15:11:10 <rossella_s> ihrachys, right
15:11:10 <ihrachys> #link https://review.openstack.org/292829
15:11:50 <ihrachys> there are other patches in flight, but most seem to be in WIP
15:12:01 <ihrachys> ah actually one thing
15:12:03 <ihrachys> #link https://review.openstack.org/300055
15:12:16 <ihrachys> this adds advanced search criteria support for get_objects
15:12:24 <ihrachys> note that it changes filter format a bit
15:12:41 <ihrachys> now instead of having key=val, we have key={val1,val2,...}
15:12:53 <ihrachys> so if you pass multiple values, db layer applies IN operator
15:13:16 <ihrachys> there is some work to do for the patch, probably some refactoring in common_db_mixin is needed
15:13:38 <ihrachys> this is due to _get_collection being an instance method, not a class one
15:13:54 <ihrachys> I may either go refactoring it first, then proceed with objects patch
15:14:02 <ihrachys> or I leave TODO in objects.db.api and move on
15:14:10 <ihrachys> what do folks think?
15:14:36 <ihrachys> for some more context,
15:14:40 <ihrachys> #link https://review.openstack.org/#/c/300055/4/neutron/objects/db/api.py
15:14:42 <ihrachys> line 30
15:14:44 <ihrachys> sorry, 40
15:14:49 <korzen> I think we may continue with plugin...
15:14:49 <rossella_s> ihrachys, hard to say...refactoring might be much more work than expected
15:15:14 <ihrachys> rossella_s: it seems that the plugin is actually need for some 'hooks'
15:15:17 <korzen> does usage of plugin may help us in future?
15:15:24 <ihrachys> honestly, that's the first time I encountered something like that
15:15:57 <ihrachys> korzen: I guess it mostly depends on whether we need those hooks in objects db code.
15:16:10 * ihrachys searches for a link to hooks code
15:16:14 <rossella_s> ihrachys, I'd leave a TODO...I hope more people will join us after the summit and that's the kind of task that we could assign
15:16:48 <ihrachys> https://github.com/openstack/neutron/blob/master/neutron/db/common_db_mixin.py#L100
15:17:16 <ihrachys> note that it does not seems like core plugin only thing
15:17:40 <rossella_s> nope
15:17:51 <rossella_s> I think salv-orlando could know more
15:18:02 <rossella_s> not sure if he's around
15:18:05 <ihrachys> I think that's an example of their usage:
15:18:06 <ihrachys> #link https://github.com/openstack/neutron/blob/master/neutron/db/db_base_plugin_common.py#L322
15:19:04 <ihrachys> ok, probably something to talk to other seasoned folks. I will bring it to Salv and maybe Kevin.
15:19:12 <rossella_s> ihrachys, agreed
15:19:23 <ihrachys> anything more on objects side that I failed to mention?
15:19:29 <rossella_s> ihrachys, not sure how much that could change with pecan, better ask
15:21:01 <ihrachys> ok, let's move on
15:21:07 <ihrachys> #topic Open discussion
15:21:38 <korzen> I have submitted the design talk about upgrades
15:22:14 <ihrachys> korzen: yeah, we will need to wait for armax to set draft schedule
15:22:24 <korzen> I would like to educate other Neutron contributors what upgrade is and discuss the next steps
15:22:32 <korzen> after OVO is comlited
15:23:03 <mhickey> korzen: ++
15:23:03 <korzen> completed*
15:23:24 <ihrachys> korzen: then is it a topic for this summit and not the next one?
15:24:12 <korzen> for me it would be better to start design discussions now
15:24:29 <korzen> till full rolling upgrade support it would take Ocata to complete
15:24:37 <korzen> but we will have early feedback
15:24:47 <ihrachys> fair enough. I think the plan for OVO adoption itself may need some popularization/discussion
15:25:02 <rossella_s> ihrachys, yes!
15:25:25 <korzen> would anyone have time to prepare the OVO pros/cons?
15:25:46 <ihrachys> korzen: if we have a session assigned, I am glad to prepare it
15:25:49 <korzen> I was thinking of more data migration and rpc pinning
15:26:08 <korzen> ok ihrachys thx
15:26:23 <ihrachys> ok we have one entry in open discussion section on the wiki
15:26:24 <ihrachys> "Start working on using the Neutron objects in code base"
15:26:32 <ihrachys> korzen: dare to elaborate?
15:26:52 <ihrachys> I think we started just that. or is there any concern with it?
15:27:13 <korzen> yes, I would remind to everyone that completing the object API is not the end of the wokr
15:27:20 <korzen> work*
15:27:39 <korzen> I did not see the implementation patches
15:27:49 <ihrachys> yeah. I think that splitting the matters as we did till now is still a good thing and we should stick to it.
15:27:57 <korzen> but I have missed them :(
15:28:10 <ihrachys> korzen: I mentioned one for dhcp options and subnetpool above
15:28:27 <ihrachys> or is it not what you are looking for?
15:28:30 <korzen> yes, I have seen it after posting the opens
15:28:42 <ihrachys> oh ok
15:28:43 <korzen> so I guess that we are save here
15:29:02 <ihrachys> yes folks, as korzen said: there should be integration patches for all objects we land
15:29:25 <ihrachys> note that adoption patches may require some splitting itself
15:29:35 <rossella_s> yes and will reveal bugs
15:29:40 <ihrachys> f.e. one patch adopting it in core plugin, then another one for service plugins
15:30:27 <ihrachys> ok, I think we are good then. anything else to cover this meeting?
15:30:39 <rossella_s> ihrachys, nope, quick and crips
15:30:40 <korzen> also we may correct the object API and that changes would not require to change the VERSION
15:30:43 <electrocucaracha> so, I was thinking that the idea is to implement all the OVO and later go for integration patches
15:31:02 <ihrachys> electrocucaracha: no.
15:31:04 <korzen> until the object is not used, it is 1.0
15:31:07 <rossella_s> electrocucaracha, I don't think that's smart...we should start integrating before
15:31:12 <ihrachys> electrocucaracha: we chose to go with objects first tactically
15:31:17 <ihrachys> electrocucaracha: since we were in Mitaka freeze mode
15:31:30 <ihrachys> electrocucaracha: so we could not touch anything that would be unsafe for Mitaka release
15:31:56 <ihrachys> korzen: yes, we can skip object version change for the initial integration patch.
15:32:47 <korzen> one more thing, we need SQL type decorators to be used in core neutron ;)
15:33:51 <rossella_s> korzen, is that really needed?
15:34:13 <ihrachys> rossella_s: you will need to do the work once you adopt objects anyway
15:34:24 <korzen> rossella_s, yes - that is required to use the code we have developed
15:34:26 <ihrachys> well, I mean, you CAN hack it around
15:35:02 <rossella_s> ihrachys, I am just trying to delay till we really need it...I think our priority now is to start using the objects in the code
15:35:02 <ihrachys> but eventually we indeed should switch to new types and remove hacks from objects
15:35:11 <rossella_s> ihrachys, agreed
15:35:18 <ihrachys> agreed on priorities though
15:35:20 <korzen> rossella_s, it is need to drop the TODOs in OVO code changing the type on-the-fly
15:36:10 <ihrachys> korzen: if type adoption patches are tiny, just propose them and we'll land them. note that models are used out of tree though, so there may be breakages and winning. :)
15:36:13 <ihrachys> whining ;)
15:36:54 <ihrachys> that direct usage of models is still something that we will eventually need to 'break'
15:37:17 <ihrachys> but maybe it would be correct to do it AFTER we show 3parties a proper way to go (objects)
15:37:55 <ihrachys> otherwise they will first need to fix their code due to model change; then switch their code to objects.
15:37:58 <korzen> ihrachys, ok, I agree on the priorities
15:38:02 <ihrachys> 1 breaking change instead of 2
15:38:16 <korzen> ihrachys, totaly agree :)
15:38:45 <ihrachys> ok, so I assume we are done for today. keep up the good work.
15:38:53 <ihrachys> ciao
15:38:54 <ihrachys> #endmeeting