08:05:36 #startmeeting multisite 08:05:36 Meeting started Thu Dec 22 08:05:36 2016 UTC. The chair is joehuang. Information about MeetBot at http://wiki.debian.org/MeetBot. 08:05:36 Useful Commands: #action #agreed #help #info #idea #link #topic. 08:05:36 The meeting name has been set to 'multisite' 08:05:46 Dimitri is on holiday now 08:05:48 let 08:05:55 let's have a short chat 08:05:56 yes 08:06:12 i have updated the patch set 08:06:13 I saw that you have updated the patch 08:06:27 but I have not reviewed that yet 08:06:31 yea 08:06:42 i will just breif through what i think 08:06:50 please 08:07:28 if a user fires keypair-sync then region must sync into the regions where keypair is not present 08:07:40 keypair must sync** 08:08:01 yes 08:08:20 if Force is True, override existing one 08:08:26 if keypair is already present then keypair sync must not be done in that region and continue with the rest 08:08:49 yes if force is true. 08:08:55 if Force is False, then skip the overlapping one, but continue for the rest 08:08:55 then override. 08:09:04 https://hastebin.com/kihaxipugo.rb 08:09:14 this is what i am expecting as the out put 08:09:26 please go through and comment :) 08:09:45 i mean im visualizing this as an output 08:10:03 #link https://hastebin.com/kihaxipugo.rb 08:10:20 should we let the job failed if there is overlapping one, or just skip that and still think the job is successful one? 08:10:45 just skip and continue with the rest .. 08:11:12 Do we have acommand to show the difference after sync? 08:11:24 we will display fail -- fail means keypair wasnot synced in that region 08:11:37 We may need some command to show the difference 08:12:37 yes 08:13:21 the failure could be in more detail, which keypair is overlapping in which region 08:13:46 but not just failed 08:14:24 if just failure, the end user can't understand it's all failure or just part failure 08:14:33 currently,while doing keypair sync.if sync in a region is a failure we are displaying that 08:14:38 yes i agree 08:14:52 but as off now we are syncing only single keypair 08:15:30 even for single keypair, we may let the user know the detail failure, 08:15:32 so if it is a failure i think it means that keypair is already present 08:15:50 ohkk fine actually your suggestion looks good 08:16:02 we will go through that only 08:16:13 we will go with that** only 08:16:18 it's async job, how do we know the failure result 08:17:06 currently we are doing some validation and getting the region where keypair is not present and then syncing in that particular region 08:18:16 yes, if the validation is done in sync way, we can report the failure 08:18:30 but what happened if failure happened in the async. job 08:19:20 actually i am thinking of that . 08:19:53 dimitri was suggesting multi status responses 08:20:12 it should like a job in the db 08:20:53 commit and roll back approach?? 08:21:05 with a list of region is in processing, and marked with success if succeed in the sync, otherwise this region is stistill in processing 08:21:08 commit or roll-back approach? 08:21:17 no roll-back needed 08:21:29 ohkk 08:21:38 just that the enduser can have a way to know the progress of the async. job 08:22:05 for example, if I sync the keypair to 10 regions, it's a job 08:22:28 during the query, may be 5 finished, 5 are processing 08:22:48 and next time, 8 finished, 2 are processing 08:23:01 at last, all finished 08:23:43 ohkk 08:23:59 so, we need to return a job handle(for example, the job id) to the end user, and end user can query the status of the 08:24:07 job through the handle 08:24:55 otherwise, we currently just use sync job in kb-api is better than to start async job and handle in kb-engine 08:25:30 this "sync" is not sync keypair, :) 08:25:53 yea i understood. 08:26:50 but for sync job, the end user has to wait for the response from all other regions 08:28:10 then it means when we create a keypair in each region then we even have to analyze the response which nova is returning 08:28:54 and then based on responses provided by each region we have to display output? 08:29:53 the user experice is not good 08:30:26 if some region is timeout, then the response has to wait for longtime, even other succeed 08:31:28 ok 08:33:06 in fact, each "sync keypair"(or other resource") is more like to trigger a job 08:33:23 may take time to finish the job 08:34:07 especially for time consuming sync api calling 08:34:11 yes i agree 08:36:05 if it's a job, even the validation could be put in the async job done by kb-engine 08:36:41 currently validation is a part of kb-engine 08:36:48 kb-engine to record the validation result into the job status 08:37:10 so that when the end user check the job, know what happened in each region 08:38:22 ok i will go through what i have done till now and what has to be done .. 08:38:34 please correct me if i am wrong 08:38:44 ok, let's check the code and to see if design update is needed 08:39:48 so let's continue work offline 08:39:54 currently when user sends a curl request.. it will do basic validation like check for keypair in the api-side, bad resource_type etc.. 08:40:17 then the request goes to the kb-engine and there 08:41:30 we check for keypairs in alll regions and filter out the regions where keypair is not present by creating threads for each region 08:42:52 use call or cast from api to engine? 08:43:16 we use call not cast. and once we get the list of regions (sync_regions)where keypair is not present there we create keypairs by creating multiple threads for that filtered regions 08:43:46 filtered-regions-- sync-regions 08:43:53 ok, it'ok for the keypair sync job 08:43:59 currently 08:44:18 we may introduce job for long-run task later 08:44:28 at least currently, call should be enough 08:44:39 yes, 08:45:05 improve step by step 08:45:11 yes.. 08:45:21 ok, I'll review the patch 08:45:26 sure.. 08:45:43 thank you, merry christmas 08:46:11 jus a sec 08:46:17 fortunaetly single keypair sync is a short task 08:46:19 please 08:46:38 i will even improve the way we display 08:46:45 the error.. 08:46:54 cool 08:47:12 i mean detailed explanation of why the sync failed instead of just displaying fail 08:47:24 I understoo 08:47:27 u review the patch and drop comments 08:47:40 sure 08:47:57 i will take this its a good way of showing the output.. 08:48:33 ok 08:48:35 Merry christmas.. again :) 08:48:51 Thanks, enjoy 08:48:59 bye :) 08:49:06 bye :) 08:49:10 #endmeeting