Re: [Architecture] Resilient application creation process
Hi, Same as Application creation process, I encountered that we should rollback the process with the application version creation or folking when it fail. Because In these cases, we create repo in git, version in issue tracker, job in jenkins and update registry about application info. WDYT ? thanks *Harsha Thirimanna* Senior Software Engineer; WSO2, Inc.; http://wso2.com * http://www.apache.org/* * email: **hars...@wso2.com* az...@wso2.com* cell: +94 71 5186770* * twitter: **http://twitter.com/ http://twitter.com/afkham_azeez* *harshathirimann linked-in: **http: http://lk.linkedin.com/in/afkhamazeez**//www.linkedin.com/pub/harsha-thirimanna/10/ab8/122 http://www.linkedin.com/pub/harsha-thirimanna/10/ab8/122* *Lean . Enterprise . Middleware* On Sat, Jan 11, 2014 at 10:05 AM, Udara Liyanage ud...@wso2.com wrote: From a perspective of user I like to see this as a set of process and if one process is not successful,that perticular process should be able to retry rather than aborting the whole process. User should be informed of the process which is failed. If retry of a failed process(a mandatory process) is not successful, a user should be able to abort the whole process when he feels further retrying won't be successful. Additionally it is better IMO if user can be showed whether the process is mandatory or not, if not mandatory user should be able to Skipp and progress. Touched, not typed. Erroneous words are a feature, not a typo. ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
Re: [Architecture] Resilient application creation process
From a perspective of user I like to see this as a set of process and if one process is not successful,that perticular process should be able to retry rather than aborting the whole process. User should be informed of the process which is failed. If retry of a failed process(a mandatory process) is not successful, a user should be able to abort the whole process when he feels further retrying won't be successful. Additionally it is better IMO if user can be showed whether the process is mandatory or not, if not mandatory user should be able to Skipp and progress. Touched, not typed. Erroneous words are a feature, not a typo. ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
Re: [Architecture] Resilient application creation process
Hi Suresh, We have identified above fail points as mandatory to the app creation process. But as you said , for the optional cases, we can do this in configurable manner in appfactory configuration. Then user can select those optional cases as mandatory or not. But if we allow to create app creation without having some mandatory part, then we have to give options to create those in later. thanks *Harsha Thirimanna* Senior Software Engineer; WSO2, Inc.; http://wso2.com * http://www.apache.org/* * email: **hars...@wso2.com* az...@wso2.com* cell: +94 71 5186770* * twitter: **http://twitter.com/ http://twitter.com/afkham_azeez* *harshathirimann linked-in: **http: http://lk.linkedin.com/in/afkhamazeez**//www.linkedin.com/pub/harsha-thirimanna/10/ab8/122 http://www.linkedin.com/pub/harsha-thirimanna/10/ab8/122* *Lean . Enterprise . Middleware* On Mon, Jan 6, 2014 at 1:20 PM, Suresh Attanayaka sur...@wso2.com wrote: Hi, As a user I would like to continue app creation even when some steps are failed such as Issue repository creation, And then I can try those steps later to complete the app creation. On Mon, Jan 6, 2014 at 12:10 PM, Shamika Ariyawansa sham...@wso2.comwrote: Hi, Is there any possibility of showing the user that what step of this is exactly failed ?. So that user would know that due to that failure the application creation process is cancelled and rolled back. Regards On Mon, Jan 6, 2014 at 11:57 AM, Ashansa Perera asha...@wso2.com wrote: The main error situations would be the failures on any of the following actions - Repository creation - Build job creation - Issue repository creation - Authorize roles - Add users to application On Mon, Jan 6, 2014 at 11:12 AM, Samisa Abeysinghe sam...@wso2.comwrote: What are the error situations that we roll back on? Are they numerous or are they handful? Thanks, Samisa... Samisa Abeysinghe Vice President Developer Evangelism WSO2 Inc. http://wso2.com On Mon, Jan 6, 2014 at 11:04 AM, Ashansa Perera asha...@wso2.comwrote: @Ramith Application creation process do - repository creation - jenkins job creation - publish application creation ( which calls all the application event listeners ) On Mon, Jan 6, 2014 at 10:55 AM, Ashansa Perera asha...@wso2.comwrote: Agree with Janaka's idea of having rollback mechanism first and of course we can have retry logic in each operation as well. On Mon, Jan 6, 2014 at 10:48 AM, Ramith Jayasinghe ram...@wso2.comwrote: Shall we list down what are the steps involved in creating a application. then what needs to be to undo each step that was performed? On Mon, Jan 6, 2014 at 10:45 AM, Gayan Dhanushka gay...@wso2.comwrote: Hi Janaka, IMO it is ok for us to have a mechanism for retrying. If it was an intermittent issue that interrupted the system from creating the application this will solve it. If the application creation failed after retrying for a few times we can roll back the entire process. If it is some other serious issue rolling back and trying to start the application creation process from the begining still won't work. WDYT? GayanD Gayan Dhanuska Software Engineer http://wso2.com/ Lean Enterprise Middleware Mobile 071 666 2327 Office Tel : 94 11 214 5345 Fax : 94 11 214 5300 Twitter : https://twitter.com/gayanlggd On Mon, Jan 6, 2014 at 10:33 AM, Janaka Ranabahu jan...@wso2.comwrote: Hi Manjula, On Mon, Jan 6, 2014 at 10:24 AM, Manjula Rathnayake manju...@wso2.com wrote: Hi all, Another option is to retry to create the application even after failed. There we create the application again and again until it get created. If it fails, users should be able to role back. In this process, for example, if application rxt adding process succeeds but creating git repo fails, we should be able to create git repo and continue without trying to add the rxt. If I understood you correctly, then what we need to do is to retry the failed process/action a number of times. But that can not guarantee whether the app creation would complete successfully. Say that the git repo creation(or any other task) failed due to a network error or some other serious issue. Then retrying will not solve the issue. IMO, what we need in the first place is the rollback functionality and as an improvement we can do the retry logic. WDYT? Thanks, Janaka thank you. On Mon, Jan 6, 2014 at 10:06 AM, Ashansa Perera asha...@wso2.com wrote: Hi all, To make the application creation process resilient we discussed to implement a rollback mechanism so that if any resource/infrastructure creation failed while creating the application we can rollback the app creation. With this we would be able to reuse the same application key and utilize the resources. Another suggestion was to ping the external servers before starting application creation process, but since pinging servers cannot
Re: [Architecture] Resilient application creation process
Yes, I think we can add these as improvements in next milestones after discussing. On Mon, Jan 6, 2014 at 1:37 PM, Harsha Thirimanna hars...@wso2.com wrote: Hi Suresh, We have identified above fail points as mandatory to the app creation process. But as you said , for the optional cases, we can do this in configurable manner in appfactory configuration. Then user can select those optional cases as mandatory or not. But if we allow to create app creation without having some mandatory part, then we have to give options to create those in later. thanks *Harsha Thirimanna* Senior Software Engineer; WSO2, Inc.; http://wso2.com * http://www.apache.org/* * email: **hars...@wso2.com* az...@wso2.com* cell: +94 71 5186770* * twitter: **http://twitter.com/ http://twitter.com/afkham_azeez* *harshathirimann linked-in: **http: http://lk.linkedin.com/in/afkhamazeez**//www.linkedin.com/pub/harsha-thirimanna/10/ab8/122 http://www.linkedin.com/pub/harsha-thirimanna/10/ab8/122* *Lean . Enterprise . Middleware* On Mon, Jan 6, 2014 at 1:20 PM, Suresh Attanayaka sur...@wso2.com wrote: Hi, As a user I would like to continue app creation even when some steps are failed such as Issue repository creation, And then I can try those steps later to complete the app creation. On Mon, Jan 6, 2014 at 12:10 PM, Shamika Ariyawansa sham...@wso2.comwrote: Hi, Is there any possibility of showing the user that what step of this is exactly failed ?. So that user would know that due to that failure the application creation process is cancelled and rolled back. Regards On Mon, Jan 6, 2014 at 11:57 AM, Ashansa Perera asha...@wso2.comwrote: The main error situations would be the failures on any of the following actions - Repository creation - Build job creation - Issue repository creation - Authorize roles - Add users to application On Mon, Jan 6, 2014 at 11:12 AM, Samisa Abeysinghe sam...@wso2.comwrote: What are the error situations that we roll back on? Are they numerous or are they handful? Thanks, Samisa... Samisa Abeysinghe Vice President Developer Evangelism WSO2 Inc. http://wso2.com On Mon, Jan 6, 2014 at 11:04 AM, Ashansa Perera asha...@wso2.comwrote: @Ramith Application creation process do - repository creation - jenkins job creation - publish application creation ( which calls all the application event listeners ) On Mon, Jan 6, 2014 at 10:55 AM, Ashansa Perera asha...@wso2.comwrote: Agree with Janaka's idea of having rollback mechanism first and of course we can have retry logic in each operation as well. On Mon, Jan 6, 2014 at 10:48 AM, Ramith Jayasinghe ram...@wso2.comwrote: Shall we list down what are the steps involved in creating a application. then what needs to be to undo each step that was performed? On Mon, Jan 6, 2014 at 10:45 AM, Gayan Dhanushka gay...@wso2.comwrote: Hi Janaka, IMO it is ok for us to have a mechanism for retrying. If it was an intermittent issue that interrupted the system from creating the application this will solve it. If the application creation failed after retrying for a few times we can roll back the entire process. If it is some other serious issue rolling back and trying to start the application creation process from the begining still won't work. WDYT? GayanD Gayan Dhanuska Software Engineer http://wso2.com/ Lean Enterprise Middleware Mobile 071 666 2327 Office Tel : 94 11 214 5345 Fax : 94 11 214 5300 Twitter : https://twitter.com/gayanlggd On Mon, Jan 6, 2014 at 10:33 AM, Janaka Ranabahu jan...@wso2.comwrote: Hi Manjula, On Mon, Jan 6, 2014 at 10:24 AM, Manjula Rathnayake manju...@wso2.com wrote: Hi all, Another option is to retry to create the application even after failed. There we create the application again and again until it get created. If it fails, users should be able to role back. In this process, for example, if application rxt adding process succeeds but creating git repo fails, we should be able to create git repo and continue without trying to add the rxt. If I understood you correctly, then what we need to do is to retry the failed process/action a number of times. But that can not guarantee whether the app creation would complete successfully. Say that the git repo creation(or any other task) failed due to a network error or some other serious issue. Then retrying will not solve the issue. IMO, what we need in the first place is the rollback functionality and as an improvement we can do the retry logic. WDYT? Thanks, Janaka thank you. On Mon, Jan 6, 2014 at 10:06 AM, Ashansa Perera asha...@wso2.com wrote: Hi all, To make the application creation process resilient we discussed to implement a rollback mechanism so that if any resource/infrastructure creation failed while creating the application we can rollback the app creation. With this we would be able to reuse the same
Re: [Architecture] Resilient application creation process
Hi Ashansa, Now what we are going to do is deleting all the stuff related to the current failed application and give a message to the user saying failed. After refresh the page then there will not be any information regarding this failed app. Instead of doing that how about if we keep the failed application detail and show to the user that app as a failed app.then we can can offer a retry button and if user retry after resolving this problem with administrator and then we can continue the job. In that case either we can delete all the stuff and recreate or , try to continue job just checking availability of the resource. WDYT ? thanks *Harsha Thirimanna* Senior Software Engineer; WSO2, Inc.; http://wso2.com * http://www.apache.org/* * email: **hars...@wso2.com* az...@wso2.com* cell: +94 71 5186770* * twitter: **http://twitter.com/ http://twitter.com/afkham_azeez* *harshathirimann linked-in: **http: http://lk.linkedin.com/in/afkhamazeez**//www.linkedin.com/pub/harsha-thirimanna/10/ab8/122 http://www.linkedin.com/pub/harsha-thirimanna/10/ab8/122* *Lean . Enterprise . Middleware* On Mon, Jan 6, 2014 at 1:48 PM, Ashansa Perera asha...@wso2.com wrote: Yes, I think we can add these as improvements in next milestones after discussing. On Mon, Jan 6, 2014 at 1:37 PM, Harsha Thirimanna hars...@wso2.comwrote: Hi Suresh, We have identified above fail points as mandatory to the app creation process. But as you said , for the optional cases, we can do this in configurable manner in appfactory configuration. Then user can select those optional cases as mandatory or not. But if we allow to create app creation without having some mandatory part, then we have to give options to create those in later. thanks *Harsha Thirimanna* Senior Software Engineer; WSO2, Inc.; http://wso2.com * http://www.apache.org/* * email: **hars...@wso2.com* az...@wso2.com* cell: +94 71 5186770* * twitter: **http://twitter.com/ http://twitter.com/afkham_azeez* *harshathirimann linked-in: **http: http://lk.linkedin.com/in/afkhamazeez**//www.linkedin.com/pub/harsha-thirimanna/10/ab8/122 http://www.linkedin.com/pub/harsha-thirimanna/10/ab8/122* *Lean . Enterprise . Middleware* On Mon, Jan 6, 2014 at 1:20 PM, Suresh Attanayaka sur...@wso2.comwrote: Hi, As a user I would like to continue app creation even when some steps are failed such as Issue repository creation, And then I can try those steps later to complete the app creation. On Mon, Jan 6, 2014 at 12:10 PM, Shamika Ariyawansa sham...@wso2.comwrote: Hi, Is there any possibility of showing the user that what step of this is exactly failed ?. So that user would know that due to that failure the application creation process is cancelled and rolled back. Regards On Mon, Jan 6, 2014 at 11:57 AM, Ashansa Perera asha...@wso2.comwrote: The main error situations would be the failures on any of the following actions - Repository creation - Build job creation - Issue repository creation - Authorize roles - Add users to application On Mon, Jan 6, 2014 at 11:12 AM, Samisa Abeysinghe sam...@wso2.comwrote: What are the error situations that we roll back on? Are they numerous or are they handful? Thanks, Samisa... Samisa Abeysinghe Vice President Developer Evangelism WSO2 Inc. http://wso2.com On Mon, Jan 6, 2014 at 11:04 AM, Ashansa Perera asha...@wso2.comwrote: @Ramith Application creation process do - repository creation - jenkins job creation - publish application creation ( which calls all the application event listeners ) On Mon, Jan 6, 2014 at 10:55 AM, Ashansa Perera asha...@wso2.comwrote: Agree with Janaka's idea of having rollback mechanism first and of course we can have retry logic in each operation as well. On Mon, Jan 6, 2014 at 10:48 AM, Ramith Jayasinghe ram...@wso2.com wrote: Shall we list down what are the steps involved in creating a application. then what needs to be to undo each step that was performed? On Mon, Jan 6, 2014 at 10:45 AM, Gayan Dhanushka gay...@wso2.comwrote: Hi Janaka, IMO it is ok for us to have a mechanism for retrying. If it was an intermittent issue that interrupted the system from creating the application this will solve it. If the application creation failed after retrying for a few times we can roll back the entire process. If it is some other serious issue rolling back and trying to start the application creation process from the begining still won't work. WDYT? GayanD Gayan Dhanuska Software Engineer http://wso2.com/ Lean Enterprise Middleware Mobile 071 666 2327 Office Tel : 94 11 214 5345 Fax : 94 11 214 5300 Twitter : https://twitter.com/gayanlggd On Mon, Jan 6, 2014 at 10:33 AM, Janaka Ranabahu jan...@wso2.com wrote: Hi Manjula, On Mon, Jan 6, 2014 at 10:24 AM, Manjula Rathnayake manju...@wso2.com wrote: Hi all, Another option is to retry to create the application even after failed. There we
Re: [Architecture] Resilient application creation process
Hi Manjula, On Mon, Jan 6, 2014 at 10:24 AM, Manjula Rathnayake manju...@wso2.comwrote: Hi all, Another option is to retry to create the application even after failed. There we create the application again and again until it get created. If it fails, users should be able to role back. In this process, for example, if application rxt adding process succeeds but creating git repo fails, we should be able to create git repo and continue without trying to add the rxt. If I understood you correctly, then what we need to do is to retry the failed process/action a number of times. But that can not guarantee whether the app creation would complete successfully. Say that the git repo creation(or any other task) failed due to a network error or some other serious issue. Then retrying will not solve the issue. IMO, what we need in the first place is the rollback functionality and as an improvement we can do the retry logic. WDYT? Thanks, Janaka thank you. On Mon, Jan 6, 2014 at 10:06 AM, Ashansa Perera asha...@wso2.com wrote: Hi all, To make the application creation process resilient we discussed to implement a rollback mechanism so that if any resource/infrastructure creation failed while creating the application we can rollback the app creation. With this we would be able to reuse the same application key and utilize the resources. Another suggestion was to ping the external servers before starting application creation process, but since pinging servers cannot guarantee anything as server can fail in between, we will be going ahead with the rollback application creation. -- Thanks Regards, Ashansa Perera Software Engineer WSO2, Inc ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture -- Manjula Rathnayaka Software Engineer WSO2, Inc. Mobile:+94 77 743 1987 ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture -- *Janaka Ranabahu* Senior Software Engineer; WSO2 Inc.; http://wso2.com * E-mail: jan...@wso2.com http://wso2.com**M: **+94 718370861* Lean . Enterprise . Middleware ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
Re: [Architecture] Resilient application creation process
Hi Janaka, On Mon, Jan 6, 2014 at 10:33 AM, Janaka Ranabahu jan...@wso2.com wrote: Hi Manjula, On Mon, Jan 6, 2014 at 10:24 AM, Manjula Rathnayake manju...@wso2.comwrote: Hi all, Another option is to retry to create the application even after failed. There we create the application again and again until it get created. If it fails, users should be able to role back. In this process, for example, if application rxt adding process succeeds but creating git repo fails, we should be able to create git repo and continue without trying to add the rxt. If I understood you correctly, then what we need to do is to retry the failed process/action a number of times. But that can not guarantee whether the app creation would complete successfully. Say that the git repo creation(or any other task) failed due to a network error or some other serious issue. Then retrying will not solve the issue. IMO, what we need in the first place is the rollback functionality and as an improvement we can do the retry logic. Yes, correct. But if retrying fails means, something is wrong in the setup. We need to fix that before creating apps again. However, yes, roll back helps to get the appId back, so you can create the application with same appId even after it failed. However retrying will help in case of intermittent issues. thank you. WDYT? Thanks, Janaka thank you. On Mon, Jan 6, 2014 at 10:06 AM, Ashansa Perera asha...@wso2.com wrote: Hi all, To make the application creation process resilient we discussed to implement a rollback mechanism so that if any resource/infrastructure creation failed while creating the application we can rollback the app creation. With this we would be able to reuse the same application key and utilize the resources. Another suggestion was to ping the external servers before starting application creation process, but since pinging servers cannot guarantee anything as server can fail in between, we will be going ahead with the rollback application creation. -- Thanks Regards, Ashansa Perera Software Engineer WSO2, Inc ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture -- Manjula Rathnayaka Software Engineer WSO2, Inc. Mobile:+94 77 743 1987 ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture -- *Janaka Ranabahu* Senior Software Engineer; WSO2 Inc.; http://wso2.com * E-mail: jan...@wso2.com http://wso2.com**M: **+94 718370861 %2B94%20718370861* Lean . Enterprise . Middleware ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture -- Manjula Rathnayaka Software Engineer WSO2, Inc. Mobile:+94 77 743 1987 ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
Re: [Architecture] Resilient application creation process
Hi Janaka, IMO it is ok for us to have a mechanism for retrying. If it was an intermittent issue that interrupted the system from creating the application this will solve it. If the application creation failed after retrying for a few times we can roll back the entire process. If it is some other serious issue rolling back and trying to start the application creation process from the begining still won't work. WDYT? GayanD Gayan Dhanuska Software Engineer http://wso2.com/ Lean Enterprise Middleware Mobile 071 666 2327 Office Tel : 94 11 214 5345 Fax : 94 11 214 5300 Twitter : https://twitter.com/gayanlggd On Mon, Jan 6, 2014 at 10:33 AM, Janaka Ranabahu jan...@wso2.com wrote: Hi Manjula, On Mon, Jan 6, 2014 at 10:24 AM, Manjula Rathnayake manju...@wso2.comwrote: Hi all, Another option is to retry to create the application even after failed. There we create the application again and again until it get created. If it fails, users should be able to role back. In this process, for example, if application rxt adding process succeeds but creating git repo fails, we should be able to create git repo and continue without trying to add the rxt. If I understood you correctly, then what we need to do is to retry the failed process/action a number of times. But that can not guarantee whether the app creation would complete successfully. Say that the git repo creation(or any other task) failed due to a network error or some other serious issue. Then retrying will not solve the issue. IMO, what we need in the first place is the rollback functionality and as an improvement we can do the retry logic. WDYT? Thanks, Janaka thank you. On Mon, Jan 6, 2014 at 10:06 AM, Ashansa Perera asha...@wso2.com wrote: Hi all, To make the application creation process resilient we discussed to implement a rollback mechanism so that if any resource/infrastructure creation failed while creating the application we can rollback the app creation. With this we would be able to reuse the same application key and utilize the resources. Another suggestion was to ping the external servers before starting application creation process, but since pinging servers cannot guarantee anything as server can fail in between, we will be going ahead with the rollback application creation. -- Thanks Regards, Ashansa Perera Software Engineer WSO2, Inc ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture -- Manjula Rathnayaka Software Engineer WSO2, Inc. Mobile:+94 77 743 1987 ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture -- *Janaka Ranabahu* Senior Software Engineer; WSO2 Inc.; http://wso2.com * E-mail: jan...@wso2.com http://wso2.com**M: **+94 718370861 %2B94%20718370861* Lean . Enterprise . Middleware ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
Re: [Architecture] Resilient application creation process
Shall we list down what are the steps involved in creating a application. then what needs to be to undo each step that was performed? On Mon, Jan 6, 2014 at 10:45 AM, Gayan Dhanushka gay...@wso2.com wrote: Hi Janaka, IMO it is ok for us to have a mechanism for retrying. If it was an intermittent issue that interrupted the system from creating the application this will solve it. If the application creation failed after retrying for a few times we can roll back the entire process. If it is some other serious issue rolling back and trying to start the application creation process from the begining still won't work. WDYT? GayanD Gayan Dhanuska Software Engineer http://wso2.com/ Lean Enterprise Middleware Mobile 071 666 2327 Office Tel : 94 11 214 5345 Fax : 94 11 214 5300 Twitter : https://twitter.com/gayanlggd On Mon, Jan 6, 2014 at 10:33 AM, Janaka Ranabahu jan...@wso2.com wrote: Hi Manjula, On Mon, Jan 6, 2014 at 10:24 AM, Manjula Rathnayake manju...@wso2.comwrote: Hi all, Another option is to retry to create the application even after failed. There we create the application again and again until it get created. If it fails, users should be able to role back. In this process, for example, if application rxt adding process succeeds but creating git repo fails, we should be able to create git repo and continue without trying to add the rxt. If I understood you correctly, then what we need to do is to retry the failed process/action a number of times. But that can not guarantee whether the app creation would complete successfully. Say that the git repo creation(or any other task) failed due to a network error or some other serious issue. Then retrying will not solve the issue. IMO, what we need in the first place is the rollback functionality and as an improvement we can do the retry logic. WDYT? Thanks, Janaka thank you. On Mon, Jan 6, 2014 at 10:06 AM, Ashansa Perera asha...@wso2.comwrote: Hi all, To make the application creation process resilient we discussed to implement a rollback mechanism so that if any resource/infrastructure creation failed while creating the application we can rollback the app creation. With this we would be able to reuse the same application key and utilize the resources. Another suggestion was to ping the external servers before starting application creation process, but since pinging servers cannot guarantee anything as server can fail in between, we will be going ahead with the rollback application creation. -- Thanks Regards, Ashansa Perera Software Engineer WSO2, Inc ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture -- Manjula Rathnayaka Software Engineer WSO2, Inc. Mobile:+94 77 743 1987 ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture -- *Janaka Ranabahu* Senior Software Engineer; WSO2 Inc.; http://wso2.com * E-mail: jan...@wso2.com http://wso2.com**M: **+94 718370861 %2B94%20718370861* Lean . Enterprise . Middleware ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture -- Ramith Jayasinghe Technical Lead WSO2 Inc., http://wso2.com lean.enterprise.middleware E: ram...@wso2.com P: +94 776715671 ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
Re: [Architecture] Resilient application creation process
Agree with Janaka's idea of having rollback mechanism first and of course we can have retry logic in each operation as well. On Mon, Jan 6, 2014 at 10:48 AM, Ramith Jayasinghe ram...@wso2.com wrote: Shall we list down what are the steps involved in creating a application. then what needs to be to undo each step that was performed? On Mon, Jan 6, 2014 at 10:45 AM, Gayan Dhanushka gay...@wso2.com wrote: Hi Janaka, IMO it is ok for us to have a mechanism for retrying. If it was an intermittent issue that interrupted the system from creating the application this will solve it. If the application creation failed after retrying for a few times we can roll back the entire process. If it is some other serious issue rolling back and trying to start the application creation process from the begining still won't work. WDYT? GayanD Gayan Dhanuska Software Engineer http://wso2.com/ Lean Enterprise Middleware Mobile 071 666 2327 Office Tel : 94 11 214 5345 Fax : 94 11 214 5300 Twitter : https://twitter.com/gayanlggd On Mon, Jan 6, 2014 at 10:33 AM, Janaka Ranabahu jan...@wso2.com wrote: Hi Manjula, On Mon, Jan 6, 2014 at 10:24 AM, Manjula Rathnayake manju...@wso2.comwrote: Hi all, Another option is to retry to create the application even after failed. There we create the application again and again until it get created. If it fails, users should be able to role back. In this process, for example, if application rxt adding process succeeds but creating git repo fails, we should be able to create git repo and continue without trying to add the rxt. If I understood you correctly, then what we need to do is to retry the failed process/action a number of times. But that can not guarantee whether the app creation would complete successfully. Say that the git repo creation(or any other task) failed due to a network error or some other serious issue. Then retrying will not solve the issue. IMO, what we need in the first place is the rollback functionality and as an improvement we can do the retry logic. WDYT? Thanks, Janaka thank you. On Mon, Jan 6, 2014 at 10:06 AM, Ashansa Perera asha...@wso2.comwrote: Hi all, To make the application creation process resilient we discussed to implement a rollback mechanism so that if any resource/infrastructure creation failed while creating the application we can rollback the app creation. With this we would be able to reuse the same application key and utilize the resources. Another suggestion was to ping the external servers before starting application creation process, but since pinging servers cannot guarantee anything as server can fail in between, we will be going ahead with the rollback application creation. -- Thanks Regards, Ashansa Perera Software Engineer WSO2, Inc ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture -- Manjula Rathnayaka Software Engineer WSO2, Inc. Mobile:+94 77 743 1987 ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture -- *Janaka Ranabahu* Senior Software Engineer; WSO2 Inc.; http://wso2.com * E-mail: jan...@wso2.com http://wso2.com**M: **+94 718370861 %2B94%20718370861* Lean . Enterprise . Middleware ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture -- Ramith Jayasinghe Technical Lead WSO2 Inc., http://wso2.com lean.enterprise.middleware E: ram...@wso2.com P: +94 776715671 ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture -- Thanks Regards, Ashansa Perera Software Engineer WSO2, Inc ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
Re: [Architecture] Resilient application creation process
@Ramith Application creation process do - repository creation - jenkins job creation - publish application creation ( which calls all the application event listeners ) On Mon, Jan 6, 2014 at 10:55 AM, Ashansa Perera asha...@wso2.com wrote: Agree with Janaka's idea of having rollback mechanism first and of course we can have retry logic in each operation as well. On Mon, Jan 6, 2014 at 10:48 AM, Ramith Jayasinghe ram...@wso2.comwrote: Shall we list down what are the steps involved in creating a application. then what needs to be to undo each step that was performed? On Mon, Jan 6, 2014 at 10:45 AM, Gayan Dhanushka gay...@wso2.com wrote: Hi Janaka, IMO it is ok for us to have a mechanism for retrying. If it was an intermittent issue that interrupted the system from creating the application this will solve it. If the application creation failed after retrying for a few times we can roll back the entire process. If it is some other serious issue rolling back and trying to start the application creation process from the begining still won't work. WDYT? GayanD Gayan Dhanuska Software Engineer http://wso2.com/ Lean Enterprise Middleware Mobile 071 666 2327 Office Tel : 94 11 214 5345 Fax : 94 11 214 5300 Twitter : https://twitter.com/gayanlggd On Mon, Jan 6, 2014 at 10:33 AM, Janaka Ranabahu jan...@wso2.comwrote: Hi Manjula, On Mon, Jan 6, 2014 at 10:24 AM, Manjula Rathnayake manju...@wso2.comwrote: Hi all, Another option is to retry to create the application even after failed. There we create the application again and again until it get created. If it fails, users should be able to role back. In this process, for example, if application rxt adding process succeeds but creating git repo fails, we should be able to create git repo and continue without trying to add the rxt. If I understood you correctly, then what we need to do is to retry the failed process/action a number of times. But that can not guarantee whether the app creation would complete successfully. Say that the git repo creation(or any other task) failed due to a network error or some other serious issue. Then retrying will not solve the issue. IMO, what we need in the first place is the rollback functionality and as an improvement we can do the retry logic. WDYT? Thanks, Janaka thank you. On Mon, Jan 6, 2014 at 10:06 AM, Ashansa Perera asha...@wso2.comwrote: Hi all, To make the application creation process resilient we discussed to implement a rollback mechanism so that if any resource/infrastructure creation failed while creating the application we can rollback the app creation. With this we would be able to reuse the same application key and utilize the resources. Another suggestion was to ping the external servers before starting application creation process, but since pinging servers cannot guarantee anything as server can fail in between, we will be going ahead with the rollback application creation. -- Thanks Regards, Ashansa Perera Software Engineer WSO2, Inc ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture -- Manjula Rathnayaka Software Engineer WSO2, Inc. Mobile:+94 77 743 1987 ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture -- *Janaka Ranabahu* Senior Software Engineer; WSO2 Inc.; http://wso2.com * E-mail: jan...@wso2.com http://wso2.com**M: **+94 718370861 %2B94%20718370861* Lean . Enterprise . Middleware ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture -- Ramith Jayasinghe Technical Lead WSO2 Inc., http://wso2.com lean.enterprise.middleware E: ram...@wso2.com P: +94 776715671 ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture -- Thanks Regards, Ashansa Perera Software Engineer WSO2, Inc -- Thanks Regards, Ashansa Perera Software Engineer WSO2, Inc ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
Re: [Architecture] Resilient application creation process
What are the error situations that we roll back on? Are they numerous or are they handful? Thanks, Samisa... Samisa Abeysinghe Vice President Developer Evangelism WSO2 Inc. http://wso2.com On Mon, Jan 6, 2014 at 11:04 AM, Ashansa Perera asha...@wso2.com wrote: @Ramith Application creation process do - repository creation - jenkins job creation - publish application creation ( which calls all the application event listeners ) On Mon, Jan 6, 2014 at 10:55 AM, Ashansa Perera asha...@wso2.com wrote: Agree with Janaka's idea of having rollback mechanism first and of course we can have retry logic in each operation as well. On Mon, Jan 6, 2014 at 10:48 AM, Ramith Jayasinghe ram...@wso2.comwrote: Shall we list down what are the steps involved in creating a application. then what needs to be to undo each step that was performed? On Mon, Jan 6, 2014 at 10:45 AM, Gayan Dhanushka gay...@wso2.comwrote: Hi Janaka, IMO it is ok for us to have a mechanism for retrying. If it was an intermittent issue that interrupted the system from creating the application this will solve it. If the application creation failed after retrying for a few times we can roll back the entire process. If it is some other serious issue rolling back and trying to start the application creation process from the begining still won't work. WDYT? GayanD Gayan Dhanuska Software Engineer http://wso2.com/ Lean Enterprise Middleware Mobile 071 666 2327 Office Tel : 94 11 214 5345 Fax : 94 11 214 5300 Twitter : https://twitter.com/gayanlggd On Mon, Jan 6, 2014 at 10:33 AM, Janaka Ranabahu jan...@wso2.comwrote: Hi Manjula, On Mon, Jan 6, 2014 at 10:24 AM, Manjula Rathnayake manju...@wso2.com wrote: Hi all, Another option is to retry to create the application even after failed. There we create the application again and again until it get created. If it fails, users should be able to role back. In this process, for example, if application rxt adding process succeeds but creating git repo fails, we should be able to create git repo and continue without trying to add the rxt. If I understood you correctly, then what we need to do is to retry the failed process/action a number of times. But that can not guarantee whether the app creation would complete successfully. Say that the git repo creation(or any other task) failed due to a network error or some other serious issue. Then retrying will not solve the issue. IMO, what we need in the first place is the rollback functionality and as an improvement we can do the retry logic. WDYT? Thanks, Janaka thank you. On Mon, Jan 6, 2014 at 10:06 AM, Ashansa Perera asha...@wso2.comwrote: Hi all, To make the application creation process resilient we discussed to implement a rollback mechanism so that if any resource/infrastructure creation failed while creating the application we can rollback the app creation. With this we would be able to reuse the same application key and utilize the resources. Another suggestion was to ping the external servers before starting application creation process, but since pinging servers cannot guarantee anything as server can fail in between, we will be going ahead with the rollback application creation. -- Thanks Regards, Ashansa Perera Software Engineer WSO2, Inc ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture -- Manjula Rathnayaka Software Engineer WSO2, Inc. Mobile:+94 77 743 1987 ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture -- *Janaka Ranabahu* Senior Software Engineer; WSO2 Inc.; http://wso2.com * E-mail: jan...@wso2.com http://wso2.com**M: **+94 718370861 %2B94%20718370861* Lean . Enterprise . Middleware ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture -- Ramith Jayasinghe Technical Lead WSO2 Inc., http://wso2.com lean.enterprise.middleware E: ram...@wso2.com P: +94 776715671 ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture -- Thanks Regards, Ashansa Perera Software Engineer WSO2, Inc -- Thanks Regards, Ashansa Perera Software Engineer WSO2, Inc ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture ___ Architecture mailing list Architecture@wso2.org
Re: [Architecture] Resilient application creation process
The main error situations would be the failures on any of the following actions - Repository creation - Build job creation - Issue repository creation - Authorize roles - Add users to application On Mon, Jan 6, 2014 at 11:12 AM, Samisa Abeysinghe sam...@wso2.com wrote: What are the error situations that we roll back on? Are they numerous or are they handful? Thanks, Samisa... Samisa Abeysinghe Vice President Developer Evangelism WSO2 Inc. http://wso2.com On Mon, Jan 6, 2014 at 11:04 AM, Ashansa Perera asha...@wso2.com wrote: @Ramith Application creation process do - repository creation - jenkins job creation - publish application creation ( which calls all the application event listeners ) On Mon, Jan 6, 2014 at 10:55 AM, Ashansa Perera asha...@wso2.com wrote: Agree with Janaka's idea of having rollback mechanism first and of course we can have retry logic in each operation as well. On Mon, Jan 6, 2014 at 10:48 AM, Ramith Jayasinghe ram...@wso2.comwrote: Shall we list down what are the steps involved in creating a application. then what needs to be to undo each step that was performed? On Mon, Jan 6, 2014 at 10:45 AM, Gayan Dhanushka gay...@wso2.comwrote: Hi Janaka, IMO it is ok for us to have a mechanism for retrying. If it was an intermittent issue that interrupted the system from creating the application this will solve it. If the application creation failed after retrying for a few times we can roll back the entire process. If it is some other serious issue rolling back and trying to start the application creation process from the begining still won't work. WDYT? GayanD Gayan Dhanuska Software Engineer http://wso2.com/ Lean Enterprise Middleware Mobile 071 666 2327 Office Tel : 94 11 214 5345 Fax : 94 11 214 5300 Twitter : https://twitter.com/gayanlggd On Mon, Jan 6, 2014 at 10:33 AM, Janaka Ranabahu jan...@wso2.comwrote: Hi Manjula, On Mon, Jan 6, 2014 at 10:24 AM, Manjula Rathnayake manju...@wso2.com wrote: Hi all, Another option is to retry to create the application even after failed. There we create the application again and again until it get created. If it fails, users should be able to role back. In this process, for example, if application rxt adding process succeeds but creating git repo fails, we should be able to create git repo and continue without trying to add the rxt. If I understood you correctly, then what we need to do is to retry the failed process/action a number of times. But that can not guarantee whether the app creation would complete successfully. Say that the git repo creation(or any other task) failed due to a network error or some other serious issue. Then retrying will not solve the issue. IMO, what we need in the first place is the rollback functionality and as an improvement we can do the retry logic. WDYT? Thanks, Janaka thank you. On Mon, Jan 6, 2014 at 10:06 AM, Ashansa Perera asha...@wso2.comwrote: Hi all, To make the application creation process resilient we discussed to implement a rollback mechanism so that if any resource/infrastructure creation failed while creating the application we can rollback the app creation. With this we would be able to reuse the same application key and utilize the resources. Another suggestion was to ping the external servers before starting application creation process, but since pinging servers cannot guarantee anything as server can fail in between, we will be going ahead with the rollback application creation. -- Thanks Regards, Ashansa Perera Software Engineer WSO2, Inc ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture -- Manjula Rathnayaka Software Engineer WSO2, Inc. Mobile:+94 77 743 1987 ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture -- *Janaka Ranabahu* Senior Software Engineer; WSO2 Inc.; http://wso2.com * E-mail: jan...@wso2.com http://wso2.com**M: **+94 718370861 %2B94%20718370861* Lean . Enterprise . Middleware ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture -- Ramith Jayasinghe Technical Lead WSO2 Inc., http://wso2.com lean.enterprise.middleware E: ram...@wso2.com P: +94 776715671 ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture -- Thanks Regards, Ashansa Perera Software Engineer WSO2, Inc -- Thanks Regards, Ashansa Perera
Re: [Architecture] Resilient application creation process
Hi, Is there any possibility of showing the user that what step of this is exactly failed ?. So that user would know that due to that failure the application creation process is cancelled and rolled back. Regards On Mon, Jan 6, 2014 at 11:57 AM, Ashansa Perera asha...@wso2.com wrote: The main error situations would be the failures on any of the following actions - Repository creation - Build job creation - Issue repository creation - Authorize roles - Add users to application On Mon, Jan 6, 2014 at 11:12 AM, Samisa Abeysinghe sam...@wso2.comwrote: What are the error situations that we roll back on? Are they numerous or are they handful? Thanks, Samisa... Samisa Abeysinghe Vice President Developer Evangelism WSO2 Inc. http://wso2.com On Mon, Jan 6, 2014 at 11:04 AM, Ashansa Perera asha...@wso2.com wrote: @Ramith Application creation process do - repository creation - jenkins job creation - publish application creation ( which calls all the application event listeners ) On Mon, Jan 6, 2014 at 10:55 AM, Ashansa Perera asha...@wso2.comwrote: Agree with Janaka's idea of having rollback mechanism first and of course we can have retry logic in each operation as well. On Mon, Jan 6, 2014 at 10:48 AM, Ramith Jayasinghe ram...@wso2.comwrote: Shall we list down what are the steps involved in creating a application. then what needs to be to undo each step that was performed? On Mon, Jan 6, 2014 at 10:45 AM, Gayan Dhanushka gay...@wso2.comwrote: Hi Janaka, IMO it is ok for us to have a mechanism for retrying. If it was an intermittent issue that interrupted the system from creating the application this will solve it. If the application creation failed after retrying for a few times we can roll back the entire process. If it is some other serious issue rolling back and trying to start the application creation process from the begining still won't work. WDYT? GayanD Gayan Dhanuska Software Engineer http://wso2.com/ Lean Enterprise Middleware Mobile 071 666 2327 Office Tel : 94 11 214 5345 Fax : 94 11 214 5300 Twitter : https://twitter.com/gayanlggd On Mon, Jan 6, 2014 at 10:33 AM, Janaka Ranabahu jan...@wso2.comwrote: Hi Manjula, On Mon, Jan 6, 2014 at 10:24 AM, Manjula Rathnayake manju...@wso2.com wrote: Hi all, Another option is to retry to create the application even after failed. There we create the application again and again until it get created. If it fails, users should be able to role back. In this process, for example, if application rxt adding process succeeds but creating git repo fails, we should be able to create git repo and continue without trying to add the rxt. If I understood you correctly, then what we need to do is to retry the failed process/action a number of times. But that can not guarantee whether the app creation would complete successfully. Say that the git repo creation(or any other task) failed due to a network error or some other serious issue. Then retrying will not solve the issue. IMO, what we need in the first place is the rollback functionality and as an improvement we can do the retry logic. WDYT? Thanks, Janaka thank you. On Mon, Jan 6, 2014 at 10:06 AM, Ashansa Perera asha...@wso2.comwrote: Hi all, To make the application creation process resilient we discussed to implement a rollback mechanism so that if any resource/infrastructure creation failed while creating the application we can rollback the app creation. With this we would be able to reuse the same application key and utilize the resources. Another suggestion was to ping the external servers before starting application creation process, but since pinging servers cannot guarantee anything as server can fail in between, we will be going ahead with the rollback application creation. -- Thanks Regards, Ashansa Perera Software Engineer WSO2, Inc ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture -- Manjula Rathnayaka Software Engineer WSO2, Inc. Mobile:+94 77 743 1987 ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture -- *Janaka Ranabahu* Senior Software Engineer; WSO2 Inc.; http://wso2.com * E-mail: jan...@wso2.com http://wso2.com**M: **+94 718370861 %2B94%20718370861* Lean . Enterprise . Middleware ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture -- Ramith Jayasinghe Technical Lead WSO2 Inc., http://wso2.com lean.enterprise.middleware E:
Re: [Architecture] Resilient application creation process
Hi, On Mon, Jan 6, 2014 at 12:17 PM, Janaka Ranabahu jan...@wso2.com wrote: On Mon, Jan 6, 2014 at 12:10 PM, Shamika Ariyawansa sham...@wso2.comwrote: Hi, Is there any possibility of showing the user that what step of this is exactly failed ?. So that user would know that due to that failure the application creation process is cancelled and rolled back. +1. That would help the user to get an understanding on why(or where) the app creation failed. +1 since this would also help to understand where it failed when fixing the setup. Thanks, Janaka Regards On Mon, Jan 6, 2014 at 11:57 AM, Ashansa Perera asha...@wso2.com wrote: The main error situations would be the failures on any of the following actions - Repository creation - Build job creation - Issue repository creation - Authorize roles - Add users to application Can the activities of the creation process be drawn diagrammatically where the various error situations are also included - we might find more error situations or different flavors while doing this. We should also identify what errors can be lived with and what cannot be. A retry mechanism for each activity should be included and the number can be configurable. On failure rollback should be done. When saying rollback, again we should ideally clearly identify what the rollback steps will be at each activity point. Thank you, Shiro On Mon, Jan 6, 2014 at 11:12 AM, Samisa Abeysinghe sam...@wso2.comwrote: What are the error situations that we roll back on? Are they numerous or are they handful? Thanks, Samisa... Samisa Abeysinghe Vice President Developer Evangelism WSO2 Inc. http://wso2.com On Mon, Jan 6, 2014 at 11:04 AM, Ashansa Perera asha...@wso2.comwrote: @Ramith Application creation process do - repository creation - jenkins job creation - publish application creation ( which calls all the application event listeners ) On Mon, Jan 6, 2014 at 10:55 AM, Ashansa Perera asha...@wso2.comwrote: Agree with Janaka's idea of having rollback mechanism first and of course we can have retry logic in each operation as well. On Mon, Jan 6, 2014 at 10:48 AM, Ramith Jayasinghe ram...@wso2.comwrote: Shall we list down what are the steps involved in creating a application. then what needs to be to undo each step that was performed? On Mon, Jan 6, 2014 at 10:45 AM, Gayan Dhanushka gay...@wso2.comwrote: Hi Janaka, IMO it is ok for us to have a mechanism for retrying. If it was an intermittent issue that interrupted the system from creating the application this will solve it. If the application creation failed after retrying for a few times we can roll back the entire process. If it is some other serious issue rolling back and trying to start the application creation process from the begining still won't work. WDYT? GayanD Gayan Dhanuska Software Engineer http://wso2.com/ Lean Enterprise Middleware Mobile 071 666 2327 Office Tel : 94 11 214 5345 Fax : 94 11 214 5300 Twitter : https://twitter.com/gayanlggd On Mon, Jan 6, 2014 at 10:33 AM, Janaka Ranabahu jan...@wso2.comwrote: Hi Manjula, On Mon, Jan 6, 2014 at 10:24 AM, Manjula Rathnayake manju...@wso2.com wrote: Hi all, Another option is to retry to create the application even after failed. There we create the application again and again until it get created. If it fails, users should be able to role back. In this process, for example, if application rxt adding process succeeds but creating git repo fails, we should be able to create git repo and continue without trying to add the rxt. If I understood you correctly, then what we need to do is to retry the failed process/action a number of times. But that can not guarantee whether the app creation would complete successfully. Say that the git repo creation(or any other task) failed due to a network error or some other serious issue. Then retrying will not solve the issue. IMO, what we need in the first place is the rollback functionality and as an improvement we can do the retry logic. WDYT? Thanks, Janaka thank you. On Mon, Jan 6, 2014 at 10:06 AM, Ashansa Perera asha...@wso2.com wrote: Hi all, To make the application creation process resilient we discussed to implement a rollback mechanism so that if any resource/infrastructure creation failed while creating the application we can rollback the app creation. With this we would be able to reuse the same application key and utilize the resources. Another suggestion was to ping the external servers before starting application creation process, but since pinging servers cannot guarantee anything as server can fail in between, we will be going ahead with the rollback application creation. -- Thanks Regards, Ashansa Perera Software Engineer WSO2, Inc ___ Architecture mailing list Architecture@wso2.org
Re: [Architecture] Resilient application creation process
Hi, As a user I would like to continue app creation even when some steps are failed such as Issue repository creation, And then I can try those steps later to complete the app creation. On Mon, Jan 6, 2014 at 12:10 PM, Shamika Ariyawansa sham...@wso2.comwrote: Hi, Is there any possibility of showing the user that what step of this is exactly failed ?. So that user would know that due to that failure the application creation process is cancelled and rolled back. Regards On Mon, Jan 6, 2014 at 11:57 AM, Ashansa Perera asha...@wso2.com wrote: The main error situations would be the failures on any of the following actions - Repository creation - Build job creation - Issue repository creation - Authorize roles - Add users to application On Mon, Jan 6, 2014 at 11:12 AM, Samisa Abeysinghe sam...@wso2.comwrote: What are the error situations that we roll back on? Are they numerous or are they handful? Thanks, Samisa... Samisa Abeysinghe Vice President Developer Evangelism WSO2 Inc. http://wso2.com On Mon, Jan 6, 2014 at 11:04 AM, Ashansa Perera asha...@wso2.comwrote: @Ramith Application creation process do - repository creation - jenkins job creation - publish application creation ( which calls all the application event listeners ) On Mon, Jan 6, 2014 at 10:55 AM, Ashansa Perera asha...@wso2.comwrote: Agree with Janaka's idea of having rollback mechanism first and of course we can have retry logic in each operation as well. On Mon, Jan 6, 2014 at 10:48 AM, Ramith Jayasinghe ram...@wso2.comwrote: Shall we list down what are the steps involved in creating a application. then what needs to be to undo each step that was performed? On Mon, Jan 6, 2014 at 10:45 AM, Gayan Dhanushka gay...@wso2.comwrote: Hi Janaka, IMO it is ok for us to have a mechanism for retrying. If it was an intermittent issue that interrupted the system from creating the application this will solve it. If the application creation failed after retrying for a few times we can roll back the entire process. If it is some other serious issue rolling back and trying to start the application creation process from the begining still won't work. WDYT? GayanD Gayan Dhanuska Software Engineer http://wso2.com/ Lean Enterprise Middleware Mobile 071 666 2327 Office Tel : 94 11 214 5345 Fax : 94 11 214 5300 Twitter : https://twitter.com/gayanlggd On Mon, Jan 6, 2014 at 10:33 AM, Janaka Ranabahu jan...@wso2.comwrote: Hi Manjula, On Mon, Jan 6, 2014 at 10:24 AM, Manjula Rathnayake manju...@wso2.com wrote: Hi all, Another option is to retry to create the application even after failed. There we create the application again and again until it get created. If it fails, users should be able to role back. In this process, for example, if application rxt adding process succeeds but creating git repo fails, we should be able to create git repo and continue without trying to add the rxt. If I understood you correctly, then what we need to do is to retry the failed process/action a number of times. But that can not guarantee whether the app creation would complete successfully. Say that the git repo creation(or any other task) failed due to a network error or some other serious issue. Then retrying will not solve the issue. IMO, what we need in the first place is the rollback functionality and as an improvement we can do the retry logic. WDYT? Thanks, Janaka thank you. On Mon, Jan 6, 2014 at 10:06 AM, Ashansa Perera asha...@wso2.comwrote: Hi all, To make the application creation process resilient we discussed to implement a rollback mechanism so that if any resource/infrastructure creation failed while creating the application we can rollback the app creation. With this we would be able to reuse the same application key and utilize the resources. Another suggestion was to ping the external servers before starting application creation process, but since pinging servers cannot guarantee anything as server can fail in between, we will be going ahead with the rollback application creation. -- Thanks Regards, Ashansa Perera Software Engineer WSO2, Inc ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture -- Manjula Rathnayaka Software Engineer WSO2, Inc. Mobile:+94 77 743 1987 ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture -- *Janaka Ranabahu* Senior Software Engineer; WSO2 Inc.; http://wso2.com * E-mail: jan...@wso2.com http://wso2.com**M: **+94 718370861 %2B94%20718370861* Lean . Enterprise . Middleware ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture