Alena Prokharchyk created CLOUDSTACK-6660:
---------------------------------------------
Summary: updateVm: IndexOutOfBounds exception on at
com.cloud.vm.UserVmManagerImpl.updateVirtualMachine(UserVmManagerImpl.java:1857)
when root volume is detached
Key: CLOUDSTACK-6660
URL: https://issues.apache.org/jira/browse/CLOUDSTACK-6660
Project: CloudStack
Issue Type: Bug
Security Level: Public (Anyone can view this level - this is the default.)
Affects Versions: 4.4.0
Reporter: Alena Prokharchyk
Assignee: Nitin Mehta
Priority: Critical
Fix For: 4.4.0
Steps to reproduce:
1) Deploy vm
2) stop it, detach the root volume
3) Call updateVm
following happens:
WARN [c.c.a.d.ParamGenericValidationWorker] (API-Job-Executor-3:job-8460
ctx-d7ca344b) Received unknown parameters for command addResourceDetail.
Unknown parameters : ctxdetails
INFO [o.a.c.f.j.i.AsyncJobMonitor] (API-Job-Executor-3:job-8460) Remove
job-8460 from job monitoring
ERROR [c.c.a.ApiServer] (1779549015@qtp-216823969-0:ctx-af15255c ctx-d5afe83f
ctx-815989c5) unhandled exception executing api command:
[Ljava.lang.String;@1abf5125
java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
at java.util.ArrayList.rangeCheck(ArrayList.java:635)
at java.util.ArrayList.get(ArrayList.java:411)
at
com.cloud.vm.UserVmManagerImpl.updateVirtualMachine(UserVmManagerImpl.java:1857)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at
org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
at
org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
at
org.apache.cloudstack.network.contrail.management.EventUtils$EventInterceptor.invoke(EventUtils.java:106)
at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:161)
at
com.cloud.event.ActionEventInterceptor.invoke(ActionEventInterceptor.java:51)
at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:161)
at
org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:91)
at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
at com.sun.proxy.$Proxy201.updateVirtualMachine(Unknown Source)
at
org.apache.cloudstack.api.command.admin.vm.UpdateVMCmdByAdmin.execute(UpdateVMCmdByAdmin.java:44)
at com.cloud.api.ApiDispatcher.dispatch(ApiDispatcher.java:119)
at com.cloud.api.ApiServer.queueCommand(ApiServer.java:683)
Nitin, its your code. Please make sure everywhere you access the Root volume,
check if its present, and do updates only when it is.
--
This message was sent by Atlassian JIRA
(v6.2#6252)