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.
-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