Details
Description
Steps to reproduce this issue
Step 1 : Deploy VM
Step 2 : Create snapshot of ROOT disk
Step 3 : Create template from snapshot
Result
Creating template from snapshot fails with NPE
hosts for clusters not owned by any management server
2014-06-02 12:03:34,564 DEBUG [c.c.a.ApiServlet] (catalina-exec-8:ctx-45977b95) ===START=== 10.216.50.29 – GET command=createTemplate&response=json&sessionkey=yTvMoOgQNxo03BBHtLaCrlOUYXE%3D&snapshotid=df67cca3-c88e-42dc-9e40-7798e6ddd601&name=Rayees&displayText=Rayees&osTypeId=5f981174-e891-11e3-b2ef-1a6f7bb0d0a8&isPublic=true&passwordEnabled=false&isdynamicallyscalable=false&_=1401735816975
2014-06-02 12:03:34,573 ERROR [c.c.a.ApiServer] (catalina-exec-8:ctx-45977b95 ctx-eeca4b45) unhandled exception executing api command: [Ljava.lang.String;@4f901948
java.lang.NullPointerException
at com.cloud.user.AccountManagerImpl.checkAccess(AccountManagerImpl.java:498)
at com.cloud.user.AccountManagerImpl.checkAccess(AccountManagerImpl.java:486)
at sun.reflect.GeneratedMethodAccessor139.invoke(Unknown Source)
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.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.$Proxy100.checkAccess(Unknown Source)
at com.cloud.api.dispatch.ParamProcessWorker.doAccessChecks(ParamProcessWorker.java:226)
at com.cloud.api.dispatch.ParamProcessWorker.processParameters(ParamProcessWorker.java:216)
at com.cloud.api.dispatch.ParamProcessWorker.handle(ParamProcessWorker.java:88)
at com.cloud.api.dispatch.DispatchChain.dispatch(DispatchChain.java:37)
at com.cloud.api.ApiDispatcher.dispatchCreateCmd(ApiDispatcher.java:79)
at com.cloud.api.ApiServer.queueCommand(ApiServer.java:614)
at com.cloud.api.ApiServer.handleRequest(ApiServer.java:506)
at com.cloud.api.ApiServlet.processRequestInContext(ApiServlet.java:330)
at com.cloud.api.ApiServlet.access$000(ApiServlet.java:54)
at com.cloud.api.ApiServlet$1.run(ApiServlet.java:118)
at org.apache.cloudstack.managed.context.impl.DefaultManagedContext$1.call(DefaultManagedContext.java:56)
at org.apache.cloudstack.managed.context.impl.DefaultManagedContext.callWithContext(DefaultManagedContext.java:103)
at org.apache.cloudstack.managed.context.impl.DefaultManagedContext.runWithContext(DefaultManagedContext.java:53)
at com.cloud.api.ApiServlet.processRequest(ApiServlet.java:115)
at com.cloud.api.ApiServlet.doGet(ApiServlet.java:77)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)