Sanjeev N created CLOUDSTACK-5658:
-------------------------------------
Summary: [Hyper-v] Template created from root volume has size set
to NULL hence failed to deploy VM from that template
Key: CLOUDSTACK-5658
URL: https://issues.apache.org/jira/browse/CLOUDSTACK-5658
Project: CloudStack
Issue Type: Bug
Security Level: Public (Anyone can view this level - this is the default.)
Components: Hypervisor Controller, Template
Affects Versions: 4.3.0
Environment: Latest build from 4.3 branch with commit:
3282d19cca4afe65d049c2db9b63f0ef528e81e1
Storage: SMB for both primary and secondary
Hypervisor: Hyper-v
Reporter: Sanjeev N
Priority: Critical
Fix For: 4.3.0
[Hyper-v] Template created from root volume has size set to NULL hence failed
to deploy VM from that template
Steps to Reproduce:
==================
1.Bring up CS in advanced zone with Hyper-v host using SMB shares for primary
and secondary
2.Deploy one or more guest vms with the default cent of template
3.Stop the vm
4.Create template from the root disk of the vm
Expected Result:
==============
Template creation should be successful and size of the template should be equal
to the root volume size
Actual Result:
============
Template creation succeeded however template size was set to NULL
Impact:
======
1.VM creation failed at allocating disks for VM with NPE
2.Since usage is NULL TEMPLATE_CREATE event got generated with size set to 0
which will have huge impact on the billing.
Following is the log snippet while deploying a vm with the template:
2013-12-27 16:02:00,874 DEBUG [c.c.a.ApiServlet]
(catalina-exec-21:ctx-1b6ca1b9) ===START=== 10.146.0.134 -- GET
command=deployVirtualMachine&response=json&sessionkey=0Is7NdFczbwiApJPUUVO8LG1Lj4%3D&zoneid=20042051-b332-497b-a0cd-57078d9f423a&templateid=c0d9df5d-e782-47b8-8479-d39f8a69864c&hypervisor=Hyperv&serviceofferingid=d2b5b96b-b042-405e-aafb-be7ea95ab1be&networkids=63660749-0d6b-457a-b6c2-1d80a9ae2b70&displayname=ex1&name=ex1&_=1388140306272
2013-12-27 16:02:00,881 DEBUG [c.c.a.ApiDispatcher]
(catalina-exec-21:ctx-1b6ca1b9 ctx-ab3dd031) InfrastructureEntity name
is:com.cloud.offering.ServiceOffering
2013-12-27 16:02:00,884 DEBUG [c.c.a.ApiDispatcher]
(catalina-exec-21:ctx-1b6ca1b9 ctx-ab3dd031) ControlledEntity name
is:com.cloud.template.VirtualMachineTemplate
2013-12-27 16:02:00,886 DEBUG [c.c.a.ApiDispatcher]
(catalina-exec-21:ctx-1b6ca1b9 ctx-ab3dd031) ControlledEntity name
is:com.cloud.network.Network
2013-12-27 16:02:00,897 DEBUG [c.c.n.NetworkModelImpl]
(catalina-exec-21:ctx-1b6ca1b9 ctx-ab3dd031) Service SecurityGroup is not
supported in the network id=204
2013-12-27 16:02:00,971 DEBUG [c.c.v.UserVmManagerImpl]
(catalina-exec-21:ctx-1b6ca1b9 ctx-ab3dd031) Allocating in the DB for vm
2013-12-27 16:02:00,979 DEBUG [c.c.v.VirtualMachineManagerImpl]
(catalina-exec-21:ctx-1b6ca1b9 ctx-ab3dd031) Allocating entries for VM:
VM[User|ex1]
2013-12-27 16:02:00,980 DEBUG [c.c.v.VirtualMachineManagerImpl]
(catalina-exec-21:ctx-1b6ca1b9 ctx-ab3dd031) Allocating nics for VM[User|ex1]
2013-12-27 16:02:00,980 DEBUG [o.a.c.e.o.NetworkOrchestrator]
(catalina-exec-21:ctx-1b6ca1b9 ctx-ab3dd031) Allocating nic for vm VM[User|ex1]
in network Ntwk[204|Guest|8] with requested profile
NicProfile[0-0-null-null-null
2013-12-27 16:02:01,053 DEBUG [c.c.n.NetworkModelImpl]
(catalina-exec-21:ctx-1b6ca1b9 ctx-ab3dd031) Service SecurityGroup is not
supported in the network id=204
2013-12-27 16:02:01,054 DEBUG [c.c.v.VirtualMachineManagerImpl]
(catalina-exec-21:ctx-1b6ca1b9 ctx-ab3dd031) Allocating disks for VM[User|ex1]
2013-12-27 16:02:01,057 DEBUG [c.c.u.d.T.Transaction]
(catalina-exec-21:ctx-1b6ca1b9 ctx-ab3dd031) Rolling back the transaction: Time
= 89 Name = catalina-exec-21; called by
-TransactionLegacy.rollback:896-TransactionLegacy.removeUpTo:839-TransactionLegacy.close:663-Transaction.execute:41-VirtualMachineManagerImpl.allocate:386-CloudOrchestrator.createVirtualMachine:217-UserVmManagerImpl$3.doInTransaction:3055-UserVmManagerImpl$3.doInTransaction:2971-Transaction.execute:37-UserVmManagerImpl.commitUserVm:2971-UserVmManagerImpl.createVirtualMachine:2935-UserVmManagerImpl.createAdvancedVirtualMachine:2591
2013-12-27 16:02:01,157 ERROR [c.c.a.ApiServer] (catalina-exec-21:ctx-1b6ca1b9
ctx-ab3dd031) unhandled exception executing api command: deployVirtualMachine
java.lang.NullPointerException
at
org.apache.cloudstack.storage.datastore.db.TemplateDataStoreVO.getSize(TemplateDataStoreVO.java:270)
at
com.cloud.template.TemplateManagerImpl.getTemplateSize(TemplateManagerImpl.java:1748)
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:616)
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 $Proxy158.getTemplateSize(Unknown Source)
at
org.apache.cloudstack.engine.orchestration.VolumeOrchestrator.allocateTemplatedVolume(VolumeOrchestrator.java:638)
at
com.cloud.vm.VirtualMachineManagerImpl$1.doInTransactionWithoutResult(VirtualMachineManagerImpl.java:408)
at
com.cloud.utils.db.TransactionCallbackWithExceptionNoReturn.doInTransaction(TransactionCallbackWithExceptionNoReturn.java:25)
at
com.cloud.utils.db.TransactionCallbackWithExceptionNoReturn.doInTransaction(TransactionCallbackWithExceptionNoReturn.java:21)
at com.cloud.utils.db.Transaction.execute(Transaction.java:37)
at
com.cloud.vm.VirtualMachineManagerImpl.allocate(VirtualMachineManagerImpl.java:386)
at
org.apache.cloudstack.engine.orchestration.CloudOrchestrator.createVirtualMachine(CloudOrchestrator.java:217)
at
com.cloud.vm.UserVmManagerImpl$3.doInTransaction(UserVmManagerImpl.java:3055)
at
com.cloud.vm.UserVmManagerImpl$3.doInTransaction(UserVmManagerImpl.java:2971)
at com.cloud.utils.db.Transaction.execute(Transaction.java:37)
at
com.cloud.vm.UserVmManagerImpl.commitUserVm(UserVmManagerImpl.java:2971)
at
com.cloud.vm.UserVmManagerImpl.createVirtualMachine(UserVmManagerImpl.java:2935)
at
com.cloud.vm.UserVmManagerImpl.createAdvancedVirtualMachine(UserVmManagerImpl.java:2591)
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:616)
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
com.cloud.event.ActionEventInterceptor.invoke(ActionEventInterceptor.java:50)
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 $Proxy169.createAdvancedVirtualMachine(Unknown Source)
at
org.apache.cloudstack.api.command.user.vm.DeployVMCmd.create(DeployVMCmd.java:535)
at com.cloud.api.ApiDispatcher.dispatchCreateCmd(ApiDispatcher.java:104)
at com.cloud.api.ApiServer.queueCommand(ApiServer.java:476)
at com.cloud.api.ApiServer.handleRequest(ApiServer.java:373)
at com.cloud.api.ApiServlet.processRequestInContext(ApiServlet.java:322)
at com.cloud.api.ApiServlet.access$000(ApiServlet.java:52)
at com.cloud.api.ApiServlet$1.run(ApiServlet.java:114)
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:111)
at com.cloud.api.ApiServlet.doGet(ApiServlet.java:73)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:555)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at
org.apache.coyote.http11.Http11NioProcessor.process(Http11NioProcessor.java:889)
at
org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionHandler.process(Http11NioProtocol.java:721)
at
org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:2260)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:679)
2013-12-27 16:02:01,160 DEBUG [c.c.a.ApiServlet] (catalina-exec-21:ctx-1b6ca1b9
ctx-ab3dd031) ===END=== 10.146.0.134 -- GET
command=deployVirtualMachine&response=json&sessionkey=0Is7NdFczbwiApJPUUVO8LG1Lj4%3D&zoneid=20042051-b332-497b-a0cd-57078d9f423a&templateid=c0d9df5d-e782-47b8-8479-d39f8a69864c&hypervisor=Hyperv&serviceofferingid=d2b5b96b-b042-405e-aafb-be7ea95ab1be&networkids=63660749-0d6b-457a-b6c2-1d80a9ae2b70&displayname=ex1&name=ex1&_=1388140306272
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)