It happens only when Vm is staring for the first time irrespective of the 
hypervisor. This is due to 6d57393629bb93fbf0944e462c841f245b40f919.
Below check on CapacityManagerImpl.java:684 should change from

if (vm.getLastHostId().equals(vm.getHostId())) {

to 

if (vm.getHostId().equals(vm.getLastHostId())) {

Last host Id is null when Vm starts for the 1st time.


> -----Original Message-----
> From: Likitha Shetty [mailto:likitha.she...@citrix.com]
> Sent: Thursday, 16 May 2013 6:22 PM
> To: dev@cloudstack.apache.org
> Cc: Sailaja Mada
> Subject: RE: [ACS42] System VM's are failed to start with NPE with latest
> master(VMWARE)
> 
> I saw the same issue with Xen.
> 
> Thanks,
> Likitha
> 
> >-----Original Message-----
> >From: Nitin Mehta [mailto:nitin.me...@citrix.com]
> >Sent: Thursday, May 16, 2013 5:54 PM
> >To: dev@cloudstack.apache.org
> >Cc: Sailaja Mada
> >Subject: Re: [ACS42] System VM's are failed to start with NPE with
> >latest
> >master(VMWARE)
> >
> >Is this only for vmware ? Did you try other hypervisors since it looks
> >generic enough ?
> >
> >On 16/05/13 5:19 PM, "Sailaja Mada" <sailaja.m...@citrix.com> wrote:
> >
> >>Hi,
> >>
> >>With latest master , System VM's are failed to start with NPE. Is
> >>there any issue with recent fixes ? ( VMWARE)
> >>
> >>2013-05-16 17:12:20,523 DEBUG [cloud.capacity.CapacityManagerImpl]
> >>(secstorage-1:null) release cpu from host: 1, old used: 0,reserved: 0,
> >>actual total: 9572, total with overprovisioning: 9572; new used:
> >>0,reserved:0; movedfromreserved: false,moveToReserveredfalse
> >>2013-05-16 17:12:20,523 DEBUG [cloud.capacity.CapacityManagerImpl]
> >>(secstorage-1:null) release mem from host: 1, old used: 0,reserved: 0,
> >>total: 17166258176; new used: 0,reserved:0; movedfromreserved:
> >>false,moveToReserveredfalse
> >>2013-05-16 17:12:20,524 WARN
> >>[storage.secondary.SecondaryStorageManagerImpl] (secstorage-1:null)
> >>Exception while trying to start secondary storage vm
> >>java.lang.NullPointerException
> >>        at
> >>com.cloud.capacity.CapacityManagerImpl.postStateTransitionEvent(Capac
> i
> >>t
> >>yMa
> >>nagerImpl.java:684)
> >>        at
> >>com.cloud.capacity.CapacityManagerImpl.postStateTransitionEvent(Capac
> i
> >>t
> >>yMa
> >>nagerImpl.java:90)
> >>        at
> >>com.cloud.utils.fsm.StateMachine2.transitTo(StateMachine2.java:117)
> >>        at
> >>com.cloud.vm.VirtualMachineManagerImpl.stateTransitTo(VirtualMachine
> Ma
> >>n
> >>age
> >>rImpl.java:1251)
> >>        at
> >>com.cloud.vm.VirtualMachineManagerImpl.changeState(VirtualMachine
> Mana
> >ge
> >>rIm
> >>pl.java:660)
> >>        at
> >>com.cloud.vm.VirtualMachineManagerImpl.advanceStart(VirtualMachine
> Mana
> >g
> >>erI
> >>mpl.java:817)
> >>        at
> >>com.cloud.vm.VirtualMachineManagerImpl.start(VirtualMachineManagerI
> mpl.
> >>jav
> >>a:547)
> >>        at
> >>com.cloud.vm.VirtualMachineManagerImpl.start(VirtualMachineManagerI
> mpl.
> >>jav
> >>a:540)
> >>        at
> >>com.cloud.storage.secondary.SecondaryStorageManagerImpl.startSecSto
> rag
> >>e
> >>Vm(
> >>SecondaryStorageManagerImpl.java:262)
> >>        at
> >>com.cloud.storage.secondary.SecondaryStorageManagerImpl.allocCapacit
> y(
> >>S
> >>eco
> >>ndaryStorageManagerImpl.java:687)
> >>        at
> >>com.cloud.storage.secondary.SecondaryStorageManagerImpl.expandPool
> (Sec
> >>o
> >>nda
> >>ryStorageManagerImpl.java:1303)
> >>        at
> >>com.cloud.secstorage.PremiumSecondaryStorageManagerImpl.scanPool(
> Premi
> >u
> >>mSe
> >>condaryStorageManagerImpl.java:123)
> >>        at
> >>com.cloud.secstorage.PremiumSecondaryStorageManagerImpl.scanPool(
> Premi
> >u
> >>mSe
> >>condaryStorageManagerImpl.java:50)
> >>        at
> >>com.cloud.vm.SystemVmLoadScanner.loadScan(SystemVmLoadScanner.j
> ava:10
> >4)
> >>        at
> >>com.cloud.vm.SystemVmLoadScanner.access$100(SystemVmLoadScanner
> .java:
> >33)
> >>        at
> >>com.cloud.vm.SystemVmLoadScanner$1.reallyRun(SystemVmLoadScanne
> r.java
> >:81)
> >>        at
> >>com.cloud.vm.SystemVmLoadScanner$1.run(SystemVmLoadScanner.java
> :72)
> >>        at
> >>java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
> >>        at
> >>java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:
> 351)
> >>        at
> >>java.util.concurrent.FutureTask.runAndReset(FutureTask.java:178)
> >>        at
> >>java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.
> a
> >>c
> >>ces
> >>s$201(ScheduledThreadPoolExecutor.java:165)
> >>        at
> >>java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.
> r
> >>u
> >>n(S
> >>cheduledThreadPoolExecutor.java:267)
> >>        at
> >>java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.
> java:
> >>1110)
> >>        at
> >>java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.
> >>j
> >>ava
> >>:603)
> >>        at java.lang.Thread.run(Thread.java:679)
> >>2013-05-16 17:12:20,526 INFO
> >>[storage.secondary.SecondaryStorageManagerImpl] (secstorage-1:null)
> >>Unable to start secondary storage vm for standby capacity,
> >>secStorageVm vm Id : 4, will recycle it and start a new one
> >>2013-05-16 17:12:20,529 DEBUG [cloud.vm.VirtualMachineManagerImpl]
> >>(secstorage-1:null) VM is already stopped:
> >>VM[SecondaryStorageVm|s-4-VM]
> >>2013-05-16 17:12:20,537 DEBUG [cloud.capacity.CapacityManagerImpl]
> >>(secstorage-1:null) VM state transitted from :Stopped to Expunging
> >>with
> >>event: ExpungeOperationvm's original host id: null new host id: null
> >>host id before state transition: null
> >>2013-05-16 17:12:20,540 DEBUG [cloud.vm.VirtualMachineManagerImpl]
> >>(secstorage-1:null) Destroying vm VM[SecondaryStorageVm|s-4-VM]
> >>
> >>Thanks,
> >>Sailaja.M

Reply via email to