
On 10/08/12 03:40, Eli Mesika wrote:
----- Original Message -----
From: "Allon Mureinik" <amureini@redhat.com> To: "engine-devel" <engine-devel@ovirt.org> Cc: "Eduardo Warszawski" <ewarszaw@redhat.com>, "Yeela Kaplan" <ykaplan@redhat.com>, "Federico Simoncelli" <fsimonce@redhat.com>, "Liron Aravot" <laravot@redhat.com> 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_D...
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 Engine-devel@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-devel
_______________________________________________ Engine-devel mailing list Engine-devel@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-devel