On 10/08/12 03:40, Eli Mesika wrote: > > > ----- Original Message ----- >> From: "Allon Mureinik" <[email protected]> >> To: "engine-devel" <[email protected]> >> Cc: "Eduardo Warszawski" <[email protected]>, "Yeela Kaplan" >> <[email protected]>, "Federico Simoncelli" >> <[email protected]>, "Liron Aravot" <[email protected]> >> Sent: Thursday, August 9, 2012 6:41:09 PM >> Subject: [Engine-devel] Serial Execution of Async Tasks >> >> Hi guys, >> >> As you may know the engine currently has the ability to fire an SPM >> task, and be asynchronously be "woken-up" when it ends. >> This is great, but we found the for the Live Storage Migration >> feature we need something a bit complex - the ability to have a >> series of async tasks in a single control flow. >> >> Here's my initial design for this, your comments and criticism would >> be welcome: >> http://wiki.ovirt.org/wiki/Features/Serial_Execution_of_Asynchronous_Tasks_Detailed_Design > > Apart from the short explanation & flow , since this is a detailed design , I > would add > 1) Class diagram > 2) Flow diagram >
+1, it would help understanding the flow. - It looks like you chose not re-use/extend the ExecutionHandler (the entity used for building the tasks view exposed to the users). It might be a good idea to keep the separation between the engine Jobs and the underlying vdsm tasks, but I want to make sure you are familiar with this mechanism and ruled it out with a reason. If this is the case please share why you decided not to use it. - how does this design survives a jboss restart? Can you please a section in the wiki to explain that. -successful execution - * "CommandBase iterates over its SPMAsyncTaskHandlers" - when? * If the second task is an HSM command (vs. SPM command), I think you should explain in the design how to handle such flows as well. * Why do we need before task? can you give a concrete example of what would you do in such a method. - I see you added SPMAsyncTaskHandler, any reason not to use SPMAsyncTasK to manage it own life-cycle? - In the life-cycle managed by the SPMAsyncTaskHandler there is a step 'createTask - how to create the async task' can you please elaborate what are the options. Livnat >> >> >> -Allon >> _______________________________________________ >> Engine-devel mailing list >> [email protected] >> http://lists.ovirt.org/mailman/listinfo/engine-devel >> > _______________________________________________ > Engine-devel mailing list > [email protected] > http://lists.ovirt.org/mailman/listinfo/engine-devel > _______________________________________________ Engine-devel mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-devel
