16:09:50 <kgriffs> #startmeeting marconi 16:09:51 <openstack> Meeting started Mon Nov 18 16:09:50 2013 UTC and is due to finish in 60 minutes. The chair is kgriffs. Information about MeetBot at http://wiki.debian.org/MeetBot. 16:09:52 <openstack> Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 16:09:56 <openstack> The meeting name has been set to 'marconi' 16:09:59 <kgriffs> #link https://wiki.openstack.org/wiki/Meetings/Marconi#Agenda 16:10:13 <kgriffs> #topic Hong Kong summit retrospective 16:10:35 <kgriffs> ametts, flaper87: how did you think things went? 16:10:53 <alcabrera> I'm going to drop a few relevant links here. 16:10:56 <flaper87> I'm very happy with how things went 16:10:57 <alcabrera> #link https://etherpad.openstack.org/p/IcehouseMarconiFeaturesAPIChanges 16:11:02 <alcabrera> #link https://etherpad.openstack.org/p/IcehouseMarconiNotificationService 16:11:06 <alcabrera> #link https://etherpad.openstack.org/p/IcehouseMarconiAMQPSupport 16:11:08 <flaper87> People attended to our sessions 16:11:11 <alcabrera> #link https://etherpad.openstack.org/p/IcehouseMarconiInOut 16:11:16 <flaper87> we've got feedback from the community overall 16:11:35 <ametts> Decent attendance: 30-50 people at the design sessions, and I counted about 65 at the afternoon session. 16:11:42 <flaper87> After our talk people gave feedback as well 16:12:02 <ametts> We probably would have had more folks there, except it was Friday afternoon and people were starting to head out already. 16:12:06 <flaper87> I'm also happy with how kgriffs session went 16:12:49 <kgriffs> I also thought it went well 16:12:55 <kgriffs> In spite of the jet lag. :p 16:12:59 <alcabrera> Was there any particular feature 16:13:06 <alcabrera> that people were asking for? 16:13:23 <kgriffs> Lots of people interested in notifications 16:13:31 <kgriffs> one person was asking about security 16:13:52 <kgriffs> as in, how do I ensure that one client can't get messages meant for a different one 16:14:06 <kgriffs> Another theme was "queue provisioning as a service" 16:14:16 <alcabrera> hmmm 16:14:31 <flaper87> yeah 16:14:47 <kgriffs> I think at some point it may make sense to spin up a project to provision single-tenant AMQP instances or somthing, ala Trove 16:14:53 <alcabrera> so notifications is definitely a hot-topic - cool. 16:14:53 <flaper87> I'm not 100% sure about it but I haven't put many thoughts on that 16:15:00 <kgriffs> right 16:15:11 <kgriffs> something to keep in the back of our minds - not a high priority right now 16:15:37 <kgriffs> HP suggested several things 16:16:01 <kgriffs> like, binary payloads combined with storing the content type in the metadata 16:16:05 <kgriffs> (ala Swift) 16:16:32 <kgriffs> Sounds like they don't have bandwidth to contribute code at the moment, but maybe that will change if they hire more people 16:16:54 <kgriffs> flaper87, ametts: other things you would call out? 16:16:59 <alcabrera> I'm looking forward to that! +1 for contributor bandwidth 16:17:18 <flaper87> that's cool. I found Hung suggestions very valuable, unfortunatelly many of them didn't fit into current MArconi's goals 16:17:26 <flaper87> but we should definitely keep an eye on those 16:17:35 <kgriffs> +1 16:17:46 <kgriffs> he had some good "lessons learned" to share based on customer feedback 16:17:58 <kgriffs> sounded like most customers are internal ones, fwiw 16:18:02 <ametts> Sounds like there was good support for an early 1.1 version in the fourth session. 16:18:05 <kgriffs> (internal == HP) 16:18:10 <kgriffs> yep 16:18:22 <kgriffs> I was happy that Everett attended 16:18:32 <kgriffs> flaper87: He maintains the Rackspace Java SDK 16:19:44 <kgriffs> - Jclouds guy 16:19:45 <kgriffs> https://github.com/everett-toews 16:20:04 <kgriffs> flaper87: you should talk about client design with him some time 16:20:18 <flaper87> ow, didn't know that! Awesome! 16:20:21 <kgriffs> which also reminds me, a couple people asked about JMS support 16:20:23 <flaper87> I'll definitely do that 16:20:35 <kgriffs> flaper87: maybe you can ask him about JMS as well 16:20:45 <flaper87> +1 16:20:52 <kgriffs> rock on 16:20:57 <flaper87> I've already some ideas re JMS / AMQP / STOMP / MQTT 16:21:02 <flaper87> but we need to dig more into that 16:21:04 <kgriffs> kk 16:21:13 <flaper87> and sounds like Jth summit thing 16:21:19 <flaper87> anyway, I'll ping him offline 16:22:05 <kgriffs> otherwise, I still need to finish digesting my notes from the summit and updating the wiki/blueprints accordingly. TBH, I've been busy just catching up with email and preparing for the Solum mini-design-summit happening in SFO tomorrow and wed. 16:22:35 <kgriffs> #action flaper87 to get in touch with Everett Toews and talk shop 16:23:04 <kgriffs> speaking of which, we should start thinking about how Marconi could tie into a PaaS 16:23:27 <flaper87> +1 16:23:33 <alcabrera> +1 16:23:38 <kgriffs> ok, anything else on the topic of the summit? 16:23:56 <flaper87> I have to take a deeper look at Solum, I whish I had more bandwidth to contirbute to it 16:24:08 <kgriffs> flaper87: bandwidth is hard to come by. I hear ya! 16:24:19 <kgriffs> I need to upgrade to 10g 16:24:23 <flaper87> lol 16:24:31 <alcabrera> :P 16:24:54 <kgriffs> fwiw I am planning to starting contributing on a regular basis to Oslo 16:25:09 <kgriffs> I also may be doing some webob work 16:25:12 <kgriffs> we'll see 16:25:19 <kgriffs> so much to do, so little time. :p 16:25:27 <kgriffs> aaanyway 16:25:46 <kgriffs> I would like to see more Marconi folks contributing to other OS projects 16:26:09 <kgriffs> helps us stay in sync with the community, and we may end up getting people to reciprocate and contribute to Marconi 16:26:24 <kgriffs> I know flaper87 already does that. 16:26:29 <kgriffs> (kudos) 16:26:35 <flaper87> :D 16:26:40 <alcabrera> I see the value of it. Just got to make the time. :) 16:27:14 <kgriffs> ok, let's move on 16:27:21 <kgriffs> #topic review actions from last mtg 16:27:30 <kgriffs> http://eavesdrop.openstack.org/meetings/marconi/2013/marconi.2013-10-28-16.04.html 16:27:34 <kgriffs> #link http://eavesdrop.openstack.org/meetings/marconi/2013/marconi.2013-10-28-16.04.html 16:27:43 <kgriffs> I'll go first 16:27:51 <kgriffs> T-shirts: mission accomplished! 16:28:12 <flaper87> kgriffs: +1 16:28:15 <alcabrera> w00t 16:28:15 <kgriffs> we handed out all but about 4 of the 75 I brought with me 16:28:30 * ametts is glad kgriffs didn't get arrested by Hong Kong Customs agents 16:28:34 <kgriffs> lol 16:28:36 <flaper87> lol 16:28:50 <kgriffs> they were like, "dude, do you have any drugs in there?". 16:28:51 <kgriffs> "no" 16:28:53 <kgriffs> "carry on" 16:28:58 <ametts> (I'm not sure how to encode bail on an expense report) 16:29:06 <kgriffs> LOL 16:29:16 <alcabrera> lol 16:29:30 <kgriffs> ametts: you have the contact info for the screen printing shop if you'd like to order more 16:29:42 <ametts> Yes I do. Thanks. 16:30:07 <kgriffs> They are great for meetups and recruiting fairs 16:30:20 <kgriffs> flaper87: I will forward the graphics on to you 16:30:32 <kgriffs> moving on 16:30:36 <flaper87> kgriffs: awesome, thanks! 16:30:42 <kgriffs> " flaper87 to firm up cross-transport-api-spec" 16:31:18 <flaper87> kgriffs: done, I've been also chatting with Cindy about that 16:31:28 <flaper87> we've been writing mores stuff there 16:31:39 <flaper87> and We'll start coding on it ASAP 16:31:49 <kgriffs> ok, cool 16:32:01 <flaper87> once the whole idea is well defined, we'll also move the info to the wiki 16:32:08 <flaper87> Architecture related info 16:32:13 <kgriffs> flaper87: you may also want to chat with the Nova guys about this 16:32:21 <kgriffs> since they will be using JSON schema as well, sounds like 16:32:28 <flaper87> yeah 16:32:41 <alcabrera> jsonschema - picking up steam across the board. gtk. 16:32:48 <flaper87> we are also using it in Glance, FWIW. But I'll definitely keep an eye on Nova work 16:32:58 <kgriffs> I envision a sort of RESTful WSME module growing out of this that multiple projects can share. 16:33:32 <kgriffs> alcabrera: oh yeah, you should have been at the Pecan/WSME nova session 16:33:37 <alcabrera> oh? 16:33:49 <kgriffs> let me summarize 16:34:08 <kgriffs> "you guys should be using Pecan/WSME for your next API" 16:34:14 <kgriffs> "OK. Who else is using it?" 16:34:35 <kgriffs> "Just ceilometer, but we have commitments from a bunch of other projects" 16:34:51 <kgriffs> "Blah blah blah..." 16:34:59 <kgriffs> "So how do extensions work with WSME" 16:35:49 <kgriffs> "They don't really. WSME definitions are static. But that is OK because you can just define a generic string table and use that. And OS projects should stop supporting arbitrary extensions anyway." 16:35:59 <kgriffs> "That's not going to happen any time soon" 16:36:17 <kgriffs> "But we need to enforce portability of OS apps and scripts" 16:36:43 <kgriffs> [Back-and-forth, no consensus reached on that point] 16:36:51 <alcabrera> doesn't sound like that went well. 16:37:14 <kgriffs> "So, going back to WSME and extensions, did I hear right that the definitions are static." 16:37:17 <kgriffs> "That's correct." 16:37:26 <kgriffs> "OK, then that isn't going to work." 16:37:40 <kgriffs> [blah blah blah...] 16:37:50 <kgriffs> "OK, let's go with Pecan and JSON schema" 16:38:07 <kgriffs> I forgot to mention this little gem earlier... 16:38:25 <alcabrera> heh. :) 16:38:30 <kgriffs> "Marconi gets a pass on using Falcon since they are a data plane api" 16:38:37 <alcabrera> oh yeah! 16:38:40 <alcabrera> I heard that one from flaper87 16:38:50 <alcabrera> very cool 16:39:01 <alcabrera> Lemme just note that down... 16:39:08 <alcabrera> #info Marconi gets a pass on using Falcon since they are a data plane api 16:39:15 <kgriffs> but, I still promised to do a POC pecan driver and try to help improve Pecan performance, which is starting to look like improving webob 16:39:35 <alcabrera> isn't a spin off of webob used in Swift? 16:39:39 <alcabrera> swiftob? 16:39:51 <kgriffs> p.s. - flaper87 and I only spoke a couple sentences the entire time 16:40:18 <kgriffs> swob 16:40:22 <flaper87> :D 16:40:22 <kgriffs> not sure how related it is 16:40:41 <kgriffs> we may be able to "steal" some code or at least ideas from there 16:41:00 <kgriffs> ok, so other action item 16:41:08 <kgriffs> alcabrera to research ways we can use heat to deploy marconi itself, as well as provision queues, whatever 16:41:20 <alcabrera> started 16:41:38 <alcabrera> I did some reading on Heat this morning to familiarize myself with what it is, what it can be used for. 16:41:43 <alcabrera> The whole orchestration idea. 16:41:46 <notmyname> alcabrera: swob = a swift replacement to webob that doesn't break on every minro version bump 16:41:46 <kgriffs> alcabrera: have you already reached out to keith bray? 16:41:58 <alcabrera> kgriffs: I have not. 16:42:09 <kgriffs> notmyname: does it have the same interface 16:42:17 <kgriffs> alcabrera: ok, I will introduce you 16:42:25 <alcabrera> thanks! 16:43:10 <notmyname> kgriffs: it's intended to be a drop-in replacement (ie that's what it first did). I assume it still is, but we don't test that path. https://github.com/openstack/swift/blob/master/swift/common/swob.py#L17 16:44:08 <kgriffs> notmyname: ah, interesting. I wonder how much in Pecan would break if you just swapped it in place for webob 16:45:18 <notmyname> transit time to the office. if there are other questions, just ping me in one of those dozen or so of channels I'm in 16:45:27 <kgriffs> notmyname: will do, thanks! 16:46:02 <alcabrera> I'll keep researching heat-side and I'll speak with Keith Bray for next time. 16:46:26 <kgriffs> sounds like a plan 16:46:41 <kgriffs> #action alcabrera to keep researching heat, and engage with the team 16:47:01 <kgriffs> #action kgriffs to play with swob 16:47:12 <kgriffs> #topic Sharding Updates (cpp-cabrera) 16:47:58 <alcabrera> alright 16:48:02 <alcabrera> lots of great news here 16:48:20 <alcabrera> so - we have sharding being tested extensively over at Rackspace. 16:48:50 <alcabrera> Here's a report from a test run last week using 3 mongodb shards: 16:48:55 <alcabrera> #link http://198.61.239.147:8000/log/20131112-1806/report.html 16:49:38 <alcabrera> While the report tells us little about the scaling behavior, it *is* scaling, as we were maxing out a single storage instance at about 2000 rps previously. :) 16:49:42 <alcabrera> So - sharding works! 16:49:46 <kgriffs> so we peak at just under 4000 shards 16:50:17 <alcabrera> well, not 4000 shards... 4000 rps. :) 16:50:19 <alcabrera> but yes. 16:50:21 <kgriffs> one other data point - I noticed that the standard deviation (so to speak) is a lot smaller under heavy load for shards vs. no shards 16:50:34 <kgriffs> so, it gives more consistent performance to users 16:50:38 <kgriffs> which is always a good thing 16:50:46 <kgriffs> (just ask anyone using AWS) 16:50:50 <alcabrera> yup 16:50:59 <flaper87> hahaha 16:51:09 <alcabrera> we're better able to hide GC latency this way. :D 16:51:19 <kgriffs> I believe the reason is that having more shards adds more "jitter" 16:51:36 <kgriffs> as in, more chances for requests to get through in a timely manner without stalling 16:52:03 <kgriffs> you know, chaos theory. ;) 16:52:36 <alcabrera> This'll be true, as long as long as few heavy hitters end up colocated - the "busy queues are colocated" problem 16:52:41 <alcabrera> coined as of this moment. :P 16:53:03 <alcabrera> So other sharding news - 16:53:06 <alcabrera> The patches! 16:53:22 <alcabrera> We have patches awaiting review, and I've been updating as I go. 16:53:34 <alcabrera> Thanks for the review, flaper87! 16:53:39 <flaper87> alcabrera: +1 16:53:59 <alcabrera> The entry patch to sharding is: 16:54:01 <alcabrera> #link https://review.openstack.org/#/c/54605/ 16:54:11 <flaper87> BTW, we've been lacking of reviews lately. We should get back to do a number of reviews per day 16:54:11 <alcabrera> The rest follows from there. 16:54:18 <alcabrera> flaper87: +1 16:54:28 <alcabrera> I think the summit threw us all off our routine. 16:54:30 <alcabrera> :D 16:55:18 <alcabrera> Hopefully, we can get sharding merged soon. I'm requesting some help with reviews on that. 16:55:20 <alcabrera> so that's that for sharding. Any thoughts or questions on this? 16:56:04 <kgriffs> +1 wrt reviews 16:56:27 <kgriffs> flaper87, alcabrera: I would love it if you guys could also peak at solum once in a while and do some +1/-1's there 16:56:38 <kgriffs> I want to make sure it is aligned with other projects 16:56:46 <kgriffs> #link https://review.openstack.org/#/q/status:open+project:stackforge/solum,n,z 16:56:48 <flaper87> sure thing! 16:57:05 <alcabrera> wow, solum is busy. 16:57:11 <alcabrera> A page of reviews pending! 16:57:23 <kgriffs> I will be doing lots of reviews for Marconi this week 16:57:45 <kgriffs> alcabrera: looks like you have -1 here to address 16:57:46 <kgriffs> https://review.openstack.org/#/c/54605/ 16:58:16 <kgriffs> flaper87: I was kind of waiting for you to get to a point where you are ready to +2 alcabrera's patches before I did my final review 16:58:32 <alcabrera> kgriffs: yup. I'm trying to DRY up the sharding implementation. It's proving to be a little tricky. 16:58:45 <alcabrera> I've addressed all feedback on that one save for the DRYness. 16:58:53 <kgriffs> I went over the patches quite a bit, esp. when I filled in a week or so ago for alcabrera while he was out of the office 16:59:01 <kgriffs> ok 16:59:10 <kgriffs> maybe we leave the DRYness for a follow-up patch? 16:59:15 <flaper87> kgriffs: sounds good! I'll take another look at that patch 16:59:28 <alcabrera> it wouldn't hurt to save it for later, IMO. 16:59:40 <kgriffs> flaper87: thanks. I just feel like I am too close to the code and need to let it "cool off" before I look again 17:00:08 <kgriffs> flaper87: thoughts on saving DRY refactoring? 17:00:33 <kgriffs> (for the near future) 17:00:58 <flaper87> If DRY changes are not big, I'd prefer seeing them in this patch, otherwise we can let them land in a separate patch 17:01:01 * kgriffs has his eye on the time 17:01:04 <alcabrera> oops - I actually didn't upload the patch where I addressed the feedbaclk. Let me do that now... >.> 17:01:13 <kgriffs> flaper87: agreed 17:01:14 <alcabrera> *feedback 17:01:24 <kgriffs> alcabrera: how much churn would the DRY work create? 17:01:40 <alcabrera> kgriffs: It would change the implementation for every forwarded method. 17:01:54 <kgriffs> ah, *that* 17:02:05 <kgriffs> I remember thinking it could be made more DRY 17:02:11 <kgriffs> I may have even commented on it at one point 17:02:22 <kgriffs> but that's beside the point 17:02:26 <kgriffs> hmmm 17:02:28 <alcabrera> The pattern currently is: 1) lookup a target, 2) if it exists, call a method on a particular controller, 3) if it doesn't return a value or raise an exception. 17:02:46 <alcabrera> 1) ... 2a) ... 2b) 17:02:57 * flaper87 just read alcabrera answer to his comment about that 17:05:03 <kgriffs> ok, we are out of time 17:05:03 <alcabrera> should we move on to the next topic and address sharding further in #openstack-marconi? 17:05:14 <alcabrera> yep, that would do it. :P 17:05:18 <flaper87> hahaha 17:05:41 <kgriffs> #action alcabrera to work on sharding feedback and get it approved 17:05:53 <kgriffs> #endmeeting