On 30/01/13 1:14 PM, "Mice Xia" <mice_...@tcloudcomputing.com> wrote:

>Murali,
>
>I haven¹t tested all possible cases, but due to the fact possible VM
>state transits are defined by state machine, all operations that results
>in VM state change are blocked (or fail) when VM in snapshotting or
>reverting state. 
>For operations that does not cause VM state change, it depends on the
>implementation. Let's say if moveVMToUser has no requirement to the state
>of target VM, and does not check VM state programmatically, it will
>succeed.

I agree for the operations that need state transition, by virtue of the
fact that there won't be state transition from the new states, operation
will be blocked.

For the operations that has logic to perform/reject operation on the state
of the VM is Running/Stopped, I suspect possibility of regressions. In the
e.g. moveVMToUser, it blocks the operation if VM state is Running, but
will succeed if the state is 'RunningSnapshotting' which is un-intended.

>
>-Mice
>
>-----Original Message-----
>From: Murali Reddy [mailto:murali.re...@citrix.com]
>Sent: Wednesday, January 30, 2013 3:12 PM
>To: cloudstack-dev@incubator.apache.org
>Subject: Re: [MERGE] Support VM Snapshot
>
>>>>
>>>>
>>>>
>>>> Potential impact and notes:
>>>> * 4 new states are added to VM state Machine
>
>Mice,
>
>When the VM is in transient states (RunningSnapshotting,
>StoppedSnapshotting), I see that you have taken care of vmsync. But have
>you ensured that all the concurrent operations on the VM are blocked when
>the VM is in RunningSnapshotting, StoppedSnapshotting states? For e.g.
>Can moveVMToUser can simply go ahead if the VM is in 'RunningSnapshotting'
>state but would have failed if VM was in 'Running' sate.?
>
>-Murali
>
>
>
>


Reply via email to