mirror of
https://github.com/apache/cloudstack.git
synced 2025-11-03 04:12:31 +01:00
bug 10929: allow only OperationFailedToError event to trigger transition to Error state.
This commit is contained in:
parent
80684861cf
commit
04528c821b
@ -69,7 +69,12 @@ public interface VirtualMachine extends RunningOn, ControlledEntity, StateObject
|
||||
s_fsm.addTransition(State.Stopped, VirtualMachine.Event.DestroyRequested, State.Destroyed);
|
||||
s_fsm.addTransition(State.Stopped, VirtualMachine.Event.StopRequested, State.Stopped);
|
||||
s_fsm.addTransition(State.Stopped, VirtualMachine.Event.AgentReportStopped, State.Stopped);
|
||||
s_fsm.addTransition(State.Stopped, VirtualMachine.Event.OperationFailed, State.Error);
|
||||
|
||||
// please pay attention about state transition to Error state, there should be only one case (failed in VM creation process)
|
||||
// that can have such transition
|
||||
s_fsm.addTransition(State.Stopped, VirtualMachine.Event.OperationFailedToError, State.Error);
|
||||
|
||||
s_fsm.addTransition(State.Stopped, VirtualMachine.Event.OperationFailed, State.Stopped);
|
||||
s_fsm.addTransition(State.Stopped, VirtualMachine.Event.ExpungeOperation, State.Expunging);
|
||||
s_fsm.addTransition(State.Stopped, VirtualMachine.Event.AgentReportShutdowned, State.Stopped);
|
||||
s_fsm.addTransition(State.Stopped, VirtualMachine.Event.AgentReportMigrated, State.Stopped);
|
||||
@ -156,6 +161,7 @@ public interface VirtualMachine extends RunningOn, ControlledEntity, StateObject
|
||||
ExpungeOperation,
|
||||
OperationSucceeded,
|
||||
OperationFailed,
|
||||
OperationFailedToError,
|
||||
OperationRetry,
|
||||
AgentReportShutdowned,
|
||||
AgentReportMigrated
|
||||
|
||||
@ -1646,7 +1646,7 @@ public class UserVmManagerImpl implements UserVmManager, UserVmService, Manager
|
||||
if (vm != null) {
|
||||
if (vm.getState().equals(State.Stopped)) {
|
||||
try {
|
||||
_itMgr.stateTransitTo(vm, VirtualMachine.Event.OperationFailed, null);
|
||||
_itMgr.stateTransitTo(vm, VirtualMachine.Event.OperationFailedToError, null);
|
||||
} catch (NoTransitionException e1) {
|
||||
s_logger.warn(e1.getMessage());
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user