14:01:29 #startmeeting neutron_upgrades 14:01:30 Meeting started Thu Dec 21 14:01:29 2017 UTC and is due to finish in 60 minutes. The chair is ihrachys. Information about MeetBot at http://wiki.debian.org/MeetBot. 14:01:31 Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 14:01:33 The meeting name has been set to 'neutron_upgrades' 14:02:03 Hi Ihar 14:02:30 hi! 14:02:36 have a nice day :) 14:02:52 before we dive into patches 14:03:43 the next meeting falls on Christmas week, and I will be far from the computer. should we skip? 14:03:52 next meeting would be Jan 4 14:04:33 oh, then I think we should skip it 14:05:02 It's fine for me 14:05:05 ok. who else is here for the meeting? 14:05:39 ok cool, we'll skip 14:05:42 is Luo offline? 14:05:52 yes 14:06:10 it looks like Luo is still busy with some personal stuff and couldn't join 14:06:28 I see 14:06:29 she already informed us about this 14:07:10 let's walk through patches 14:07:14 https://review.openstack.org/#/q/status:open+project:openstack/neutron+branch:master+topic:bp/adopt-oslo-versioned-objects-for-db 14:07:30 first is https://review.openstack.org/#/c/529551/ "Use Router OVO in metering_db" which is posted today 14:08:40 it seems fine, we'll wait for CI 14:08:43 but the code is ok 14:09:02 next is https://review.openstack.org/#/c/507772/ "Use Network OVO in db_base_plugin" 14:09:49 regarding to this patch, please check my latest comment 14:10:21 you said rbac is one issue you see. 14:10:26 I see another one there 14:10:28 "neutron_lib.callbacks.exceptions.CallbackFailure: Callback neutron.plugins.ml2.plugin.Ml2Plugin._handle_segment_change--9223372036793929130 failed with "No inspection system is available for object of type " 14:10:28 " 14:10:36 that's how test__bind_port_if_needed_early_exit_on_no_segments failed 14:11:42 I guess segment code passes an OVO object where a model is expected 14:11:52 this error is, I believe, from sqlalchemy 14:12:00 yes 14:12:12 that's because of my latest change 14:13:01 https://review.openstack.org/#/c/507772/16/neutron/plugins/ml2/plugin.py 14:13:12 line 1896 14:13:51 function _handle_segment_change 14:14:22 before that, it looks like there's only problem with rbac 14:14:32 isn't network_db there an OVO object now? 14:14:41 so calling .update() on it should work 14:15:21 yes, it should work 14:15:32 i don't know why above error appeared 14:16:13 ok I can check it today locally. 14:16:26 thanks a lot, Ihar 14:16:37 anyway, my main concern is still about rbac 14:17:24 I've discussed with An-san and we've tried many workaround but still couldn't have the final solution 14:18:36 if rbac_entries there is empty maybe they were not created in the first place. like when 'shared' was set to True on network OVO 14:18:59 I think we have tests for that but maybe something is missing. I can have a look at both of those failures. 14:20:06 thank you in advance, Ihar. We really appreciate your help 14:20:27 ok next is Luo's https://review.openstack.org/#/c/407868/ "Integration of (Distributed) Port Binding OVO" 14:20:34 by the way, patch set 15 has fewer failed test (about 300 only) 14:21:12 and it seems like she addressed the main issue I had with new_host attribute there. there is -1 from slawek, but I will check regardless. 14:21:15 TuanVu_, ack 14:21:52 here's Luo's update: "I have updated the portbinding patch [1]. Although Slawek still has some nit comments, we can ask Ihar to take another look again." 14:22:07 right, what I thought, seems like Slawek's comments are minor 14:22:11 thanks for the update 14:22:21 it's my pleasure :) 14:22:35 next is https://review.openstack.org/#/c/506037/ "Part II of Integrate Port OVO" also by Luo. 14:22:42 this one is in red so probably work in progress 14:22:50 "I resolved all UT failures of MAC address in Port Integration but some REST API check of MAC address failed. I will update the patch again next week." 14:23:20 great 14:23:28 :) 14:23:36 next is https://review.openstack.org/#/c/521797/ "Use Router OVO in external_net_db" 14:23:48 looks green 14:24:25 Yes, I think the main logic is ok now 14:24:42 Can you look at it for merging? 14:25:25 yeah I think logic is correct now. I may have some small stylistic suggestions before we merge it. I will have a look after the meeting. 14:25:42 Ok thank you Ihar 14:26:00 thanks hungpv ! 14:26:28 ok that's all patches we had in the queue 14:27:05 ah wait there is also https://review.openstack.org/#/c/526204/ "test_agentschedulers_db: switch to OVO for Agent" by me 14:27:37 I haven't made progress on it yet. but I will have another look hopefully this year. 14:28:03 great! 14:28:26 #topic Mixed oslo.db enginefacades 14:28:33 I have one thing to update about 14:28:48 I spent some time lately on a gate failure in ipam layer 14:29:05 that is somewhat relevant to what we do 14:29:23 basically, a while ago we started switching neutron tree from old to new oslo.db enginefacade 14:29:38 (facade is a oslo.db construct to interact with db / manage db sessions) 14:30:07 old style is e.g. context.session.begin(...): or autonested_transaction(...) 14:30:20 while new style is reader.using(...) and writer.using(...) 14:30:30 I won't get into details what's the underlying difference 14:30:44 but my point is that we have both used in neutron code 14:30:47 sometimes intermixed 14:30:56 and as it turned out, they don't cooperate 14:31:07 so you may have weird behavior 14:31:16 like part of transaction changes committed, while others not 14:31:28 the fix I came up for ipam bug is this: https://review.openstack.org/#/c/529169/2/neutron/db/ipam_pluggable_backend.py 14:31:47 see that in line 453 it uses old style - begin(...) 14:32:01 but then we were using the new style ~ line 478 14:32:25 so what happened is when writer.using context manager triggered __exit__, it actually committed the change in db 14:32:40 despite the logic expected that it won't commit until the top level begin(...) also exits 14:32:47 which results in inconsistent db state 14:33:26 so... my point I'd like to make is, in the meantime while we have both facades in the code, we should be mindful about context managers we use to interact with db 14:33:47 thank you for this info, Ihar 14:33:55 really useful information 14:34:09 and since all OVO object methods open old style nested subtransaction, we should make sure that wherever we interact with OVO objects, we don't do it from under new style context managers (writer / reader) 14:34:14 That's great. Very useful 14:34:56 this bug brought me a lot of pain, so now I want everyone to be aware. preaching the gospel. :) 14:35:28 ok that's all I had 14:35:31 #topic Open discussion 14:35:33 that'll help us a lot, thanks :) 14:35:37 anything you want to discuss? 14:35:51 none from me 14:35:52 That's all for me 14:36:45 ok fine, then let's call it a day. we'll meet in 2 weeks 14:36:58 I will try to have a look at issues we identified with your patches today 14:37:12 thanks again, Ihar 14:37:20 thanks for all the effort, really happy to have you all on the task 14:37:21 we really appreciate your great help :) 14:37:31 Yeah, thank you for your effort. Wish you a very happy Christmas Ihar 14:37:36 and happy new year or whatever you may celebrate. 14:37:37 thanks 14:37:42 bye! 14:37:47 #endmeeting