08:00:23 #startmeeting storlets 08:00:24 Meeting started Tue Jan 17 08:00:23 2017 UTC and is due to finish in 60 minutes. The chair is eranrom. Information about MeetBot at http://wiki.debian.org/MeetBot. 08:00:25 Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 08:00:28 The meeting name has been set to 'storlets' 08:00:36 Hi 08:00:54 o/ 08:01:02 o/ 08:01:07 kota_: takashi Hi 08:01:40 I have not got much on the agenda. Here it is https://wiki.openstack.org/wiki/Meetings/Storlets#Agenda 08:02:06 akihito: Hi just sent a link to the agenda https://wiki.openstack.org/wiki/Meetings/Storlets#Agenda: 08:02:35 hi akihito, eranrom, takashi 08:02:40 Hi! Thank you. I look it. 08:02:51 Hi kota_ 08:02:54 #link https://wiki.openstack.org/wiki/Meetings/Storlets#Agenda 08:02:58 ok, so lets start. 08:03:04 sure 08:03:10 #topic Multi-input desired behavior 08:04:03 The subject came up while corresponding with akihito on the multi-input functional test 08:04:25 The subject came up while corresponding with akihito on the multi-input functional test.. 08:04:26 cool, that progressed 08:04:34 oh miss. 08:05:27 looking at the agenda, it works well but probably it's tbd 08:05:42 what if we should do 08:06:10 I think that the fix is 'https://github.com/openstack/storlets/blob/master/storlets/swift_middleware/handlers/base.py#L310-L321'. 08:06:25 i think ignoring the extra header is safe for users but someone wants to make it as sort of 400 BadRequest, maybe? 08:07:12 I think there are 3 options here 08:07:15 1. leave this as is 08:07:16 I think so too. 08:07:42 2. enforce running multi-input on the proxy (as suggested bu Akihito's link) 08:08:15 3. return 400 bad request if there are extra resources by no run-on-proxy header 08:08:46 either is fine to me. 08:08:48 for now. 08:08:57 IMO, solution 2 is the best for me because 08:09:49 for 1, considering API design, I think we should not ignore any parameters given by client silently 08:10:10 it can confuse people 08:11:06 for 3, if we only support that feature for proxy execution, we don't need to ask people to always give run-on-proxy header, as we do for slo/range execution 08:11:33 takashi: +1 08:12:45 If we end up supporting this also from the object server, we can remove this enforcement 08:12:57 kota_, akihito: does it make sense to you? 08:13:06 eranrom: right! 08:13:11 hmm. I think that there is no merit of running on the object-server side.. 08:13:48 Therefore, I think 2 is good. 08:13:49 sounds ok. If I want to do it in object-server. will propose something with new architecture so 08:13:57 akihito: I don't think so, because we want to use small extra source, like a reference file, 08:14:02 no opinion exist to block the option 2 08:14:21 we can reduce the amount for network transition in object-server execution, in some cases 08:14:42 s/we want to/when we want to/ 08:14:48 kota_: thx 08:14:56 When I was in IBM we had a PoC with a media firm that wanted this. They had one huge object and many small metadata objects thay wnted all to be streamed onto the storlet 08:15:16 so they were happy with multi-input on object nodes... 08:15:28 anyway, seems like we agree on option 2 08:16:32 ;-) 08:16:41 next. 08:16:47 I see. 08:17:02 #topic reviews prioritization 08:17:10 any opinions? 08:17:17 not 08:17:28 eranrom: probably you are looking stale one 08:17:43 i updated the agend before 5 minuts from metting 08:17:50 oh, sec 08:18:07 sorry 08:18:17 np 08:18:21 #topic Name decision, SBusDaemon? SBusServer? or StorletServer? 08:18:31 yes, that one 08:18:50 so it's from takashi's patch to abstract the daemon class 08:18:53 #link https://review.openstack.org/#/c/406 08:18:55 no 08:19:00 #unlink https://review.openstack.org/#/c/406 08:19:09 :-) 08:19:22 #link https://review.openstack.org/#/c/406620 08:19:51 to be honest, idk if we could use unlink for the command :P 08:20:15 back to the topic 08:20:25 kota_: :-) 08:21:00 i think the patch is for addressing the abstraction of the daemon we has been calling as... 08:21:08 takashi: SBusDaemon??? 08:21:17 kota_: yes 08:21:24 ah, just Daemon, IIRC 08:21:25 let me explain some background information 08:21:44 takashi: sure, please 08:22:06 In that patch, as you may know, I tried to create base class for storlet daemon and daemon factory 08:23:26 both processes are a kind of daemon which depends on sbus protocol and execute callback functions correspoding to the command requested by client 08:24:53 so we can create a baseclass which implements a basic interface for them 08:26:04 It works on sbus protocol, not limited for storlets, so that is why I include 'SBus' in that class name 08:26:47 and 'Daemon' came from StorletDaemon as they are a kind of daemon processes, which keep running in container side. 08:28:54 Currently, after reading some comments from kota_, I think 'Server' is better than Daemon, which shows that it execute a kind of callback based on the request 08:29:16 takashi: thanks for explaining 08:29:27 So I'm thinking to name the base class as SBusServer 08:29:31 takashi: i also think it's better to call it Server 08:29:44 Maybe main discussion point is 1. SBus or Storlet 2. Daemon or Server 08:29:50 but ... perhaps, StorletServer could be better? 08:30:17 that is because it sounds like SBusServer provide sbus, maybe? 08:30:54 SBusServer works for request in sbus protocol, like HttpServer works for request in http protocol 08:31:29 and IMO, i has been thinking of the abstruction, BaseStorletSrever could include all things we need to run as Server process, e.g. listening, dispathing 08:31:37 and I'm thinking to have SBusClient which sends request in sbus protocol https://review.openstack.org/#/c/405937/, like we use HttpClient for http request 08:32:17 and then, all the extension like FactoryManager and StorletManager could implment just commands which are supported in the server? 08:32:49 takashi: ah, yeah, we call HTTPServer which provide http interface to connect. 08:33:08 takashi: make sense. 08:33:43 sorry, i said a few kind of things 08:34:00 1. the name, it could be SBusServer for base class? 08:34:10 I'm currently thinking to name the base class as BaseSBusServer like BaseHttpServer 08:34:15 2. which feature should be in the SBusServer 08:34:44 ^^^ for 1 08:34:48 takashi: sounds good for 1 08:35:13 and for 2, I think it is better to have all funcutions in base to start up server functions 08:35:18 for 2, IMO, all things to provide SBusServer 08:35:26 kota_: yes 08:35:49 I mean, main_loop, dispatch_command, and all command handler functions, based on currently implementation 08:35:59 i think, all things means it can run independently but no command cannot be runable with extension. 08:36:38 kota_: or we can implement some basic handler like ping in base class, as we expect same implementations for all servers 08:37:09 and if we could think of making it most likely HTTPServer, we should use populer name for each method, like "listen"? 08:37:26 kota_: maybe I need to check interface design in HTTPServer 08:37:36 takashi: me too 08:38:10 eranrom, akihito: summirize current discussion 08:38:13 , 08:38:44 eranrom, akihito: the patch is going to move... 08:38:59 1. rename the base class as BaseSBusServer 08:39:36 2. more refactor to be likely common HTTPServer (but it listens by SBus protocol) 08:39:44 takashi: correct? 08:39:55 kota_: yes 08:40:12 for 1, I think I can update my patch in not so long time. 08:40:44 for 2, I still need some more time because I need to solve interface difference between StorletDaemon and DaemonFactory 08:41:07 ok 08:41:14 kota_: takashi: This was a great discussion. I watched and learned. Thanks! 08:41:32 they will be something like, StorletServer and StorletServerFactory 08:42:21 eranrom: k, sorry we consume much time, please go ahead to the next 08:42:46 kota_: np. It was a very good usage of the time! 08:42:56 if there is more please continue! 08:43:35 you were suggesting names for the servers inheriting form BaseSBusServer 08:45:00 In my current idea, I'm just thinking to use the name corresponding to the process name (I mean StorletDaemon and StorletDaemonFactory or DaemonFactory) for each implementation class 08:45:31 If we change that name, we should change the name of the script file (files under bin), correspondingly 08:46:02 takashi: good point 08:46:02 I think we can discuss about that on gerrit. If we need some more discussions, I'll bring that topic in irc meeting again. 08:46:15 kk 08:46:57 next? 08:47:02 sure 08:47:08 yes 08:47:18 yes 08:47:23 #topic review prioritization 08:48:00 any opinions? 08:50:01 Currently I'm working about agent refactoring, and akihito is working about functional test coverages 08:50:21 yeh! My functiona tests without 'WIP' is reviewable. 08:50:39 in that point, it would be great if I can ask your reviews about them 08:50:44 akihito: :-) great! will review some more 08:50:57 Thankyou! 08:51:21 akihito: which one is the first patch for your chain? 08:52:53 AFAIK, they are basically independent 08:53:06 https://review.openstack.org/#/c/400057/ 08:53:34 talking about my patches, because I used some patches for testing config file addition for agent process https://review.openstack.org/#/c/419044/, most of them depends on another one. 08:53:45 I divide this commit. 08:53:58 takashi: yeah, i mean just which one is the most priority.... 08:54:08 kota_: Oh. got it. 08:54:11 akihito: it looks like in gate failure. 08:54:34 takashi: actually, idk if they are independent or not. 08:54:37 :P 08:54:59 kota_: Can I ask you to create a list of your patches for review? 08:55:00 takashi: any special patch to start with? Other then the ones I have reviewed 08:55:04 sorry, not for kota_ 08:55:08 ^^^ akihito 08:55:39 eranrom: about my patch, base class implementation for all agent codes are the base one 08:55:43 but that dependency is unnecessory, so will think if I can solve that long dependency in some days 08:56:04 ok! I will create patches list 08:56:14 and I'll also create patch list... 08:56:18 about mine 08:56:43 please post them on our channel once you got them. 08:56:44 thx 08:56:54 eranrom: +1 08:57:01 eranrom: +1, and ok 08:57:23 ok. 08:57:29 Thanks! We are running out of time, so I will just mention the PDT etherpad. pls have a look and add as you see fit 08:57:39 fPTG 08:57:45 https://etherpad.openstack.org/p/storlets-pike-design-summit 08:57:53 kota_: right! 08:57:56 eranrom: will check it. thanks! 08:58:10 thanks eranrom for organizing 08:58:26 Thanks you all for joining. and for the great discussion. 08:58:44 If there is anything else, we can continue on #openstack-storlets 08:59:06 #endmeeting