16:01:21 #startmeeting networking_ml2 16:01:21 Meeting started Wed Jun 18 16:01:21 2014 UTC and is due to finish in 60 minutes. The chair is Sukhdev. Information about MeetBot at http://wiki.debian.org/MeetBot. 16:01:22 Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 16:01:25 The meeting name has been set to 'networking_ml2' 16:01:47 #topic: Agenda 16:02:11 #link: https://wiki.openstack.org/wiki/Meetings/ML2#Meeting_June_18.2C_2014 16:02:31 #topic: Announcements 16:02:51 I do not have any announcements today 16:03:07 sukhdev: you want say something about 16:03:10 anybody has any? 16:03:10 hi 16:03:23 the CI failing and remidiation 16:03:54 shivharis: Oh yes - we have a fiasco about the CI's failing this week 16:04:01 ;) 16:04:11 Our Arista CI got hit three times last week 16:04:24 This is all about the upgrades to 3.x version 16:04:47 Sukhdev: 3.x version of what? 16:04:58 I sent out an announcement on the ML to warn all CI owners 16:05:04 rkukura:python 16:05:22 pip version had to be upgraded 16:05:35 what is that failure? 16:05:37 then setuptools need to be upraded 16:05:59 have a link to your email by anychance? or date/time 16:06:21 I sent it out on Saturday 16:06:30 Sukhdev: ok thx 16:06:32 Do not have a link handy 16:06:59 I was with Infra folks all afternoon getting this fixed. 16:07:17 The fix has been merged upstream and now everything is fine 16:07:19 this? http://lists.openstack.org/pipermail/openstack-dev/2014-June/037713.html 16:07:20 in openstack-neutron ML look for subject "Most Third Party CI's Failing" 16:07:21 Sukhdev, what is the fix required for this. 16:07:36 shivharis:yes 16:07:58 trinaths: nothing now - it has been fixed in the upstream - 16:08:13 Is there impact on devstack? 16:08:39 Also, want to mention that Kyle sent out an email asking all CI's to conform to third party requirements - 16:08:44 Sukhdev, do CI owners need to do an upgrade. 16:08:53 deadline is Juno-2 16:09:09 okay 16:09:14 trinaths: no - it turned out the upstream was broken, hence no change is needed now 16:09:23 Sukhdev, thanks 16:09:24 for setuptools, the fix is http://git.openstack.org/cgit/openstack-dev/devstack/commit/tools/install_pip.sh?id=76ed427ca17fb271974b4882c0b5e3c18ed3d889 16:10:09 amotoki: thanks 16:10:26 Anything else for announcements? 16:10:45 can we put a link for CI requiremnts in the ML2 wiki page 16:11:27 shivharis: I guess that will be OK 16:11:44 I'll add the link later 16:12:26 ##topic: Action items from last week 16:12:43 banix: floor is yours 16:12:49 yes sure 16:13:01 banix: I saw the wiki - looks good 16:13:15 the wiki for tracking specs has been up; removed the etherpad (left a link to the wiki only) 16:13:33 looks good, but i wonder why some L3 related reviews are included. 16:13:34 there was a request for possibly tracking code review as well 16:14:23 banix: it will be a good idea to have a link to the code in one column 16:14:41 amotoki: yeah we can remove if not related to ML2 16:15:03 Sukhdev: since we have just a few specs already merged i added a column to the table for merged specs 16:15:18 banix: np. thanks. 16:15:20 I am not sure if people are updating the table though… We will see 16:15:37 banix: me updated. 16:15:40 i would like to suggest removing +/- score from the table. 16:16:01 I forgot to update the table after approving the partial specs spec 16:16:03 I do not believe folks are updating the table - 16:16:23 amotoki: because it may prevent people from reviewing those with -1s? 16:16:45 amotoki, +1/-1 will be helpful as a summary of the review. 16:16:49 banix: no. scores are changed too frequently. 16:17:00 amotoki: yes that is true 16:17:41 Does "Cx" mean a core reviewer and "Rx" mean a Reviewer? 16:17:50 where x is a number. 16:17:56 Considering people are not updating the tables I am wondering if simply having a table cotaining the first couple of columns would be enough but we can wait and see 16:17:59 amotoki: yes 16:18:00 actually, I forgot yesterday to update the table after reviewing the ML2 VXLAN spec. I'll do that now 16:18:54 we have to also assign priority if we want to take this to the wider Neutron group I think 16:19:07 the table is useful. Hopefully reviewer owner updates a corresponding entry. I believe it helps owners. 16:19:31 I did not want to assign priority on my own but added the guideline to the end of the wiki page 16:19:38 should we assign the prirorty instead of the wider group 16:19:40 amotoki: ok. makes sense 16:19:53 Some of the owners are not aware of this table. I sent an email to one of the owners to put their ML2 BP in this table 16:19:58 we should identify the BPs that we think should be high or medium 16:20:38 now we can sort the table based on priority (once those are assigned) :) it’s like we are using computers :) 16:20:48 who wants to take an action to assign the priorities? 16:20:51 :-) 16:21:24 Can people here suggest BPs that more than one driver depend on? 16:21:28 how about splitting the table into categories: ML2 common, mech driver specific? 16:22:04 amotoki: that would automatically put the priority - 16:22:19 ML2 common are higher priority 16:22:33 Sukhdev: yeah. it helps us :-) 16:22:45 I think some common BPs should be higher prioiry than others 16:22:48 amotoki: using priority may do the same within a single table 16:23:21 for example, if several drivers need extensions, it should be higher than if only one driver needs that BP 16:23:57 rkukura: makes sense much 16:24:16 rkukura: if we moved such BP under ML2 common, it will get higher priority? 16:25:42 banix: can we ask you to volunteer to baby sit it for a bit longer to get it fully in order?, please... 16:25:43 rkukura: So, should there be a column in the wiki that says ML2 common? 16:25:58 Sukhdev: sure no problem 16:26:02 Sukhdev: as a start we could put the common ones higher in the list than the non-common BPs 16:26:10 Sukhdev: what specifically do you want to be done 16:26:40 banix: I liked amotoki suggestion of ML2 common and ML2 drivers 16:26:53 I’d like to identify if there are any BPs here that absolutely must get done in juno, from more than a single vendor’s perspective. 16:27:19 Sukhdev: sure will split up the table into two and see how it goes 16:27:20 Those should be high 16:27:25 banix: Once we split them into categories 16:27:50 then we can use rkukura idea to further prioritize within a given category 16:28:08 sounds good 16:28:26 it is best to minimize baby sitting, the table is not too big. as rkukura says maybe a column that says Juno-must 16:28:42 i guess rkukura is asking if there is any bp that needs to be set to high priority; please speak up 16:28:54 We should also try to identify anything other subteams depend on, and raise priority of these BPs to match their dependent BPs 16:29:04 #Action: banix to re-organize the wiki to categorize the specs and add a column for code reviews 16:29:05 shivharis: i agree; i think just a priority would do imho 16:29:11 the VDP one 16:29:29 there is already a priority column. Just invent a new number - 0 (Juno-must) 16:29:39 nlahouti: Is the VDP spec need by more than one vendor? 16:29:42 Sukhdev: i added the column for code review for the table that is for approved specs 16:29:44 then 1, 2, 3 ... 16:29:47 would that work? 16:29:51 rkukura: not for now. 16:30:05 banix: ah OK 16:30:06 priority 1 (high) is for the juno-musts 16:30:12 rkukura: the cisco dfa MD need it 16:30:26 priority 2 (medium) is for common features needed by multiple drivers 16:30:52 banix: agree 16:30:53 priority 3 is for vendor drivers and common features only needed by single vendor drivers 16:31:08 rkukura: sounds reasonable 16:31:10 rkukura: fie. maybe we need some text on the page that says this then 16:31:13 its a start 16:31:31 rkukura: which prority is juno must 16:31:33 sounds good. it is a good startline. 16:31:38 Looks like we are converging on this 16:31:38 slogan: had some text at the bottom about priority 16:31:50 30 mins left 16:31:50 nlahouti: 0 16:32:13 Ok let me go through and do the assignment 16:32:19 banix: ah. hrmmm, wrap it with a blink tag? :-P 16:32:23 you can beat me up next time or on the mailing list 16:32:35 But we will need to use judgement on things that don’t fit these categories, like QoS or partial specs, … 16:32:56 slogan: :) 16:32:58 banix: +1 16:33:09 rkukura: agreed 16:33:25 shall we move on? 16:33:25 yes we can change if the priority assigned is not correct 16:33:31 yes pls 16:33:46 #topic: Modular L2 agent 16:33:54 there was one more action item 16:34:02 the bug for bulk item 16:34:25 I looked into it; Shall I discuss that first? 16:34:31 banix: Opps… please go ahead and provide update 16:34:35 what did you find? 16:34:58 Yes so as the bug says the bulk creates are done in one transaction 16:35:23 so for ML2 drivers create network for example is called multiple times from within a transaction 16:35:52 This will include calls to postcommit operations 16:35:55 calling the postcommit methods within transactions is definitely a bug, IMHO 16:36:06 rkukura: agress 16:36:38 so the fix would be having create_network_bulk for example in plugin.py (rather than using one in the mixin) 16:36:40 I was planning on taking to ML and discuss it there - we touched on it a bit last week 16:37:24 Sukhdev: that would work 16:37:25 but, banix go on if you have details 16:37:36 yeah so the bulk aps are to be atomic 16:37:55 right now that is achieved by having multiple calls for create operations in a transaction 16:37:59 here: 16:38:12 context.session.begin(subtransactions=True) 16:38:13 try: 16:38:14 for item in items: 16:38:15 obj_creator = getattr(self, 'create_%s' % resource) 16:38:16 objects.append(obj_creator(context, item)) 16:38:17 context.session.commit() 16:38:20 Sorry dhould have used paste 16:39:18 banix: the problem is how would you unwind if one of these fails 16:40:14 Sukhdev: yeah; since these are only for creates (are there bulks for other operations?) that would be deleting all newly created resources 16:40:48 banix: according to documentation - bulk is only for creates - which is problematic as well 16:40:50 seems like that subtransactions arg is a clue as to how to fix this (and implies it is ok to do in multiple transactions) 16:41:21 banix: Seems there are at least two possible strategies: 1) call create outide transactions and delete the already-created resources if any creates fail, or 2) do all the precommit method calls in one transaction, then all the postcommits afterwards 16:42:28 slogan: I wouldn’t read too much into ontext.session.begin(subtransactions=True) since almost every transaction in neutron looks like this 16:42:41 rkukura: even in 2 you may need to delte already created resources. right? 16:42:41 ok 16:42:52 rkukura: I like 2 16:43:06 banix: Any failure in any precommit would rollback the entire transaction 16:43:09 for 2: if all precommits are done first, and later one of postcommit fails, are all precommits un-done? 16:43:27 rkukura: with this approach, if any post-commit fails, sync can take care of it - and we do not need to unwind 16:43:31 shivharis: Good question 16:43:33 shivharis: yes that was my point 16:43:51 Sukhdev: I agree, once we have a sync strategy 16:44:06 yeah right now for a single create if post commit fail we rollback 16:44:30 considering that bulk operations are to be atomic by defnition then we have to rollback i belive 16:44:54 I think to be consistent with our current error handling, we’d need to delete all the resources if any postcommit fails 16:45:04 banix: but some postcommits may have succeeded so that is a can of worms 16:45:13 I think we need to solve this in conjunction with sync - things will get much better and less error prone 16:45:22 shivharis: sync :) will save you 16:45:27 shivharis: i know 16:45:39 and if we do delete them all on any postcommit failure, I don’t think this really has much advantage over option 1. 16:45:47 I have another point of view. Once precommit completes, resources under being created are visible to API and they can be used. it seems not to be atomic. 16:46:16 Ideally we need additional state for resources. 16:46:22 seems like maybe we should consider option 1 for the short term, and option 2 as part of a solving the sync/recovery issue 16:46:36 amotoki: that’s a good point 16:46:50 will this work as "tasks" that mark is working on? 16:47:01 maybe we need to get sync/recovery back on the agenda soon 16:47:22 I still have an action to discuss using tasks for this with markmcclain 16:47:30 rkukura: Yes - I think we should look for cleaner solution, and sync will do it 16:48:03 12 mins left 16:48:05 Any volunteers to work on sync with Bob and I? 16:48:12 i can 16:48:17 Even with sync the issue raised by amotoki will be there 16:48:24 shivharis: cool - we should discuss 16:48:31 Lets move on folks 16:48:33 sukhdev: k 16:48:45 banix: anything on ML2 agent? 16:48:49 yes 16:49:01 please read and make comments/suggestions 16:49:14 banix: pics in the docs dont render, any suggestions 16:49:15 there have been just a few emails from yesterday on the ML 16:49:35 shivharis: hmmm sorry will try to fix 16:50:14 Lets all spend some time this week to review this - I will do it.. 16:50:22 moving on 16:50:23 do you have a plan to write something which can work? 16:50:28 #topic: Bugs 16:50:38 Sukhdev: thanks; please do 16:50:39 shivharis: want to sat anything? 16:50:52 s/sat/say 16:50:57 amotoki: is that a bulk create issue, or even single create? 16:50:59 I had been using a set of bugs that I was 16:51:13 yamamoto: if I get a green light from all you guys that this approach is reasonable, then i will go ahead. yes. 16:51:22 sorry, my client hung for a bit 16:51:26 tracking. based on the last meeting we decided to do it based on a search criteria 16:51:26 chuckC: good point. I think it is not specific to bulk operation. 16:51:42 so lets look at the link from the agends on bugs? 16:51:46 banix: lets try to reach to conclusion next week 16:51:57 Sukhdev: ok sounds good 16:52:01 we need to get "confirmed" picked up by folks 16:52:44 chuckC: that’s a very good point. 16:52:51 We need volunteers - 16:53:14 shivharis: have you been chasing folks for this? 16:53:29 yup, looking for volunteers. if not i am going to switch back to old way and ask specific help 16:53:42 newbie question: I can do code reviews, for bug fixes (if any) what do i do, find a peer who is willing to take a patch and commit. I know I can probably read about it, but since we are talking about bugs and volunteers 16:53:43 we are running short on time... 16:54:10 slogan: need folks like you. will ping you. any other folks 16:54:19 i can work on the bulk operation one … need to figure out the role of sync or perhaps have that as a separate work item 16:54:21 s/folks/volunteers/ 16:54:48 banix: cool - lets chat on IRC afterwards 16:54:57 Sukhdev: ok 16:55:05 shivharis: anything else? 16:55:14 are there any bugs that are confirmed and unassigned? 16:55:23 no, need volunteers !! 16:55:26 I categorized reviews on the wiki page during the meeting. 16:55:30 #topic: Spec Reviews 16:55:33 shivharis: thanks 16:55:43 We have covered it already 16:55:53 #shivharis# count me in 16:56:10 padkrish_: will do 16:56:12 shivharis: me too 16:56:22 wanted to mention that everybody is not logging there BPs in our table here is an example https://review.openstack.org/#/c/97490/ 16:56:26 nlahouti: will do 16:57:04 I wanted to cover which BPs are ready for core reviewers - but, we are out of time 16:57:07 3 mins left 16:57:20 I added couple of them to the agenda - Please look at them 16:57:27 sukhdev: is there any timeline for core to approve the 'ready to approve BP'? 16:57:29 Sukhdev: I answered your question on my BP review 16:57:37 could you pls take a look again? 16:57:38 #topic: Open Discussion 16:58:19 Sukhdev: Will try to add the priority today so you and rkukura can see how it looks and decide what to take to neutron meeting 16:58:30 Sukhdev: if any 16:58:33 nlahouti: rkukura and I will take it to the cores to get them approved as soon as this sub-team gives thumbs up 16:58:33 banix: ok 16:58:45 Sukhdev: BP is : https://review.openstack.org/#/c/95236/ 16:58:58 why not assert that postcommit is not in a transaction? 16:59:00 acknowledging bug volunteers: slogan, nlhouti, banix, padkrish_ Appreciate it !! 16:59:01 sukhdev: thx 16:59:09 rkukura: I updated the MD extension BP in the etherpad can you please take a look it and give comments? 16:59:15 sadasu: I reviewed it 16:59:22 nlahouti: will do 16:59:32 folks we are out of time…sorry 16:59:34 newbie question: better to have small unit test review partially fixes a bug, or do the whole bug (https://review.openstack.org/99129) 16:59:37 banix: I rearranged the spec review pages you created. please check it. 16:59:39 rkukura: it has some sample code. 16:59:43 Sukhdev: yes...u posted questions...which I have answered...so can u look again, pls? 16:59:58 #endmeeting networking_ml2