Bug 799894

Summary: [ovirt] [engine-core] NPE (cannot run vms) when changing cluster from 3.0 to 3.1
Product: [Retired] oVirt Reporter: Haim <hateya>
Component: ovirt-engine-coreAssignee: Eli Mesika <emesika>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: high Docs Contact:
Priority: medium    
Version: unspecifiedCC: acathrow, derez, ecohen, hateya, iheim, mgoldboi, oramraz, yeylon, ykaul
Target Milestone: ---   
Target Release: 3.1   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-08-09 08:06:34 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Haim 2012-03-05 11:14:26 UTC
Description of problem:

scenario: 

- create data-center 3.0
- create cluster 3.0
- create storage domain 
- create vm
- create template from vm
- create vm from template
- change cluster level to 3.1 
- try to run vm


2012-03-05 12:30:49,337 ERROR [org.ovirt.engine.core.vdsbroker.VDSCommandBase] (pool-5-thread-5) [62fdda02] Command CreateVmVDS execution failed. Exception: RuntimeException: java.lang.NullPointerException
2012-03-05 12:30:49,338 INFO  [org.ovirt.engine.core.vdsbroker.CreateVmVDSCommand] (pool-5-thread-5) [62fdda02] FINISH, CreateVmVDSCommand, log id: 79934b7c
2012-03-05 12:30:49,338 ERROR [org.ovirt.engine.core.bll.RunVmCommand] (pool-5-thread-5) [62fdda02] Command org.ovirt.engine.core.bll.RunVmCommand throw Vdc Bll exception. With error message VdcBLLException: java.lang.RuntimeException: java.lang.NullPointerException
2012-03-05 12:30:49,348 ERROR [org.ovirt.engine.core.bll.RunVmCommand] (pool-5-thread-5) [62fdda02] Transaction rolled-back for command: org.ovirt.engine.core.bll.RunVmCommand.
2012-03-05 12:31:23,778 INFO  [org.ovirt.engine.core.vdsbroker.irsbroker.IsValidVDSCommand] (http--0.0.0.0-8080-1) START, IsValidVDSCommand(storagePoolId = 711a080f-4702-450c-9f5f-bf54f1e99383, ignoreFailoverLimit = false, compatabilityVersion = null), log id: 2849cf01
2012-03-05 12:31:23,780 INFO  [org.ovirt.engine.core.vdsbroker.irsbroker.IsValidVDSCommand] (http--0.0.0.0-8080-1) FINISH, IsValidVDSCommand, return: true, log id: 2849cf01
2012-03-05 12:31:23,831 INFO  [org.ovirt.engine.core.vdsbroker.IsVmDuringInitiatingVDSCommand] (http--0.0.0.0-8080-1) START, IsVmDuringInitiatingVDSCommand(vmId = 5aec5b13-255b-487c-98bc-2e7dbcc94c6e), log id: 616aee10
2012-03-05 12:31:23,831 INFO  [org.ovirt.engine.core.vdsbroker.IsVmDuringInitiatingVDSCommand] (http--0.0.0.0-8080-1) FINISH, IsVmDuringInitiatingVDSCommand, return: false, log id: 616aee10
2012-03-05 12:31:23,879 INFO  [org.ovirt.engine.core.bll.RunVmCommand] (pool-5-thread-5) [7d635c55] Running command: RunVmCommand internal: false. Entities affected :  ID: 5aec5b13-255b-487c-98bc-2e7dbcc94c6e Type: VM
2012-03-05 12:31:23,917 INFO  [org.ovirt.engine.core.vdsbroker.CreateVmVDSCommand] (pool-5-thread-5) [7d635c55] START, CreateVmVDSCommand(vdsId = a2859be4-5d35-11e1-886f-af102fbd5669, vmId=5aec5b13-255b-487c-98bc-2e7dbcc94c6e, vm=org.ovirt.engine.core.common.businessentities.VM@497fd954), log id: 21b654e6
2012-03-05 12:31:23,961 INFO  [org.ovirt.engine.core.vdsbroker.vdsbroker.CreateVDSCommand] (pool-5-thread-5) [7d635c55] START, CreateVDSCommand(vdsId = a2859be4-5d35-11e1-886f-af102fbd5669, vmId=5aec5b13-255b-487c-98bc-2e7dbcc94c6e, vm=org.ovirt.engine.core.common.businessentities.VM@497fd954), log id: 6a5ad4aa
2012-03-05 12:31:23,981 ERROR [org.ovirt.engine.core.vdsbroker.vdsbroker.VdsBrokerCommand] (pool-5-thread-5) [7d635c55] Failed in CreateVDS method, for vds: nott-vds1.qa.lab.tlv.redhat.com; host: nott-vds1.qa.lab.tlv.redhat.com
2012-03-05 12:31:23,982 ERROR [org.ovirt.engine.core.vdsbroker.VDSCommandBase] (pool-5-thread-5) [7d635c55] Command CreateVDS execution failed. Exception: NullPointerException: 
2012-03-05 12:31:23,982 INFO  [org.ovirt.engine.core.vdsbroker.vdsbroker.CreateVDSCommand] (pool-5-thread-5) [7d635c55] FINISH, CreateVDSCommand, log id: 6a5ad4aa
2012-03-05 12:31:23,982 ERROR [org.ovirt.engine.core.vdsbroker.CreateVmVDSCommand] (pool-5-thread-5) [7d635c55] Error in excuting CreateVmVDSCommand: java.lang.NullPointerException
        at org.ovirt.engine.core.vdsbroker.vdsbroker.VmInfoBuilder.addNetworkInterfaceProperties(VmInfoBuilder.java:290) [vdsbroker-3.0.0-0001.jar:]
        at org.ovirt.engine.core.vdsbroker.vdsbroker.VmInfoBuilder.buildVmNetworkInterfaces(VmInfoBuilder.java:213) [vdsbroker-3.0.0-0001.jar:]
        at org.ovirt.engine.core.vdsbroker.vdsbroker.CreateVDSCommand.buildVmData(CreateVDSCommand.java:63) [vdsbroker-3.0.0-0001.jar:]
        at org.ovirt.engine.core.vdsbroker.vdsbroker.CreateVDSCommand.ExecuteVdsBrokerCommand(CreateVDSCommand.java:21) [vdsbroker-3.0.0-0001.jar:]
        at org.ovirt.engine.core.vdsbroker.vdsbroker.VdsBrokerCommand.ExecuteVDSCommand(VdsBrokerCommand.java:75) [vdsbroker-3.0.0-0001.jar:]
        at org.ovirt.engine.core.vdsbroker.VDSCommandBase.ExecuteCommand(VDSCommandBase.java:60) [vdsbroker-3.0.0-0001.jar:]
        at org.ovirt.engine.core.dal.VdcCommandBase.Execute(VdcCommandBase.java:41) [engine-dal.jar:]
        at org.ovirt.engine.core.vdsbroker.CreateVmVDSCommand.ExecuteVdsIdCommand(CreateVmVDSCommand.java:67) [vdsbroker-3.0.0-0001.jar:]
        at org.ovirt.engine.core.vdsbroker.VdsIdVDSCommandBase.ExecuteVDSCommand(VdsIdVDSCommandBase.java:40) [vdsbroker-3.0.0-0001.jar:]
        at org.ovirt.engine.core.vdsbroker.VDSCommandBase.ExecuteCommand(VDSCommandBase.java:60) [vdsbroker-3.0.0-0001.jar:]
        at org.ovirt.engine.core.dal.VdcCommandBase.Execute(VdcCommandBase.java:41) [engine-dal.jar:]
        at org.ovirt.engine.core.vdsbroker.ResourceManager.runVdsCommand(ResourceManager.java:414) [vdsbroker-3.0.0-0001.jar:]
        at org.ovirt.engine.core.vdsbroker.proxy.ResourceManagerProxy.runVdsCommand(ResourceManagerProxy.java:24) [engine-vdsbroker.jar:]
        at sun.reflect.GeneratedMethodAccessor95.invoke(Unknown Source) [:1.6.0_22]
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [:1.6.0_22]
        at java.lang.reflect.Method.invoke(Method.java:616) [:1.6.0_22]
        at org.jboss.as.ee.component.ManagedReferenceMethodInterceptorFactory$ManagedReferenceMethodInterceptor.processInvocation(ManagedReferenceMethodInterceptorFactory.java:72) [jboss-as-ee-7.1.0.Beta1b.jar:]
        at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.1.Final.jar:]
        at org.jboss.invocation.WeavedInterceptor.processInvocation(WeavedInterceptor.java:53) [jboss-invocation-1.1.1.Final.jar:]
        at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.1.Final.jar:]
        at org.jboss.as.jpa.interceptor.SBInvocationInterceptor.processInvocation(SBInvocationInterceptor.java:45)
        at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.1.Final.jar:]
        at org.jboss.as.ee.component.TCCLInterceptor.processInvocation(TCCLInterceptor.java:45) [jboss-as-ee-7.1.0.Beta1b.jar:]
        at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.1.Final.jar:]
        at org.jboss.invocation.InitialInterceptor.processInvocation(InitialInterceptor.java:21) [jboss-invocation-1.1.1.Final.jar:]
        at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.1.Final.jar:]
        at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61) [jboss-invocation-1.1.1.Final.jar:]
        at org.jboss.as.ee.component.interceptors.ComponentDispatcherInterceptor.processInvocation(ComponentDispatcherInterceptor.java:53) [jboss-as-ee-7.1.0.Beta1b.jar:]
        at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.1.Final.jar:]
        at org.jboss.as.ejb3.component.pool.PooledInstanceInterceptor.processInvocation(PooledInstanceInterceptor.java:51) [jboss-as-ejb3-7.1.0.Beta1b.jar:]
        at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.1.Final.jar:]
        at org.jboss.as.ejb3.tx.CMTTxInterceptor.invokeInCallerTx(CMTTxInterceptor.java:213) [jboss-as-ejb3-7.1.0.Beta1b.jar:]
        at org.jboss.as.ejb3.tx.CMTTxInterceptor.supports(CMTTxInterceptor.java:369) [jboss-as-ejb3-7.1.0.Beta1b.jar:]
        at org.jboss.as.ejb3.tx.CMTTxInterceptor.processInvocation(CMTTxInterceptor.java:205) [jboss-as-ejb3-7.1.0.Beta1b.jar:]
        at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.1.Final.jar:]
        at org.jboss.as.ejb3.component.interceptors.CurrentInvocationContextInterceptor.processInvocation(CurrentInvocationContextInterceptor.java:41) [jboss-as-ejb3-7.1.0.Beta1b.jar:]
        at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.1.Final.jar:]
        at org.jboss.as.ee.component.NamespaceContextInterceptor.processInvocation(NamespaceContextInterceptor.java:44) [jboss-as-ee-7.1.0.Beta1b.jar:]
        at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.1.Final.jar:]
        at org.jboss.as.ejb3.component.interceptors.LoggingInterceptor.processInvocation(LoggingInterceptor.java:55) [jboss-as-ejb3-7.1.0.Beta1b.jar:]
        at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.1.Final.jar:]
        at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61) [jboss-invocation-1.1.1.Final.jar:]
        at org.jboss.as.ee.component.ViewService$View.invoke(ViewService.java:165) [jboss-as-ee-7.1.0.Beta1b.jar:]
        at org.jboss.as.ee.component.ViewDescription$1.processInvocation(ViewDescription.java:173) [jboss-as-ee-7.1.0.Beta1b.jar:]
        at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.1.Final.jar:]
        at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61) [jboss-invocation-1.1.1.Final.jar:]
        at org.jboss.as.ee.component.ProxyInvocationHandler.invoke(ProxyInvocationHandler.java:72) [jboss-as-ee-7.1.0.Beta1b.jar:]
        at org.ovirt.engine.core.common.backendinterfaces.IResourceManager$$$view1.runVdsCommand(Unknown Source) [engine-common.jar:]
        at org.ovirt.engine.core.bll.VDSBrokerFrontendImpl.RunVdsCommand(VDSBrokerFrontendImpl.java:38) [engine-bll.jar:]
        at org.ovirt.engine.core.bll.VDSBrokerFrontendImpl.RunAsyncVdsCommand(VDSBrokerFrontendImpl.java:74) [engine-bll.jar:]
        at org.ovirt.engine.core.bll.RunVmCommand.CreateVm(RunVmCommand.java:393) [engine-bll.jar:]
        at org.ovirt.engine.core.bll.RunVmCommand.RunVm(RunVmCommand.java:207) [engine-bll.jar:]
        at org.ovirt.engine.core.bll.RunVmCommand.ExecuteVmCommand(RunVmCommand.java:252) [engine-bll.jar:]
        at org.ovirt.engine.core.bll.VmCommand.executeCommand(VmCommand.java:90) [engine-bll.jar:]
        at org.ovirt.engine.core.bll.CommandBase.ExecuteWithoutTransaction(CommandBase.java:674) [engine-bll.jar:]
        at org.ovirt.engine.core.bll.CommandBase.executeActionInTransactionScope(CommandBase.java:766) [engine-bll.jar:]
        at org.ovirt.engine.core.bll.CommandBase.runInTransaction(CommandBase.java:1068) [engine-bll.jar:]
        at org.ovirt.engine.core.utils.transaction.TransactionSupport.executeInNewTransaction(TransactionSupport.java:204) [engine-utils.jar:]
        at org.ovirt.engine.core.utils.transaction.TransactionSupport.executeInRequired(TransactionSupport.java:142) [engine-utils.jar:]
        at org.ovirt.engine.core.utils.transaction.TransactionSupport.executeInScope(TransactionSupport.java:109) [engine-utils.jar:]
        at org.ovirt.engine.core.bll.CommandBase.Execute(CommandBase.java:781) [engine-bll.jar:]
        at org.ovirt.engine.core.bll.CommandBase.ExecuteAction(CommandBase.java:209) [engine-bll.jar:]
        at org.ovirt.engine.core.bll.MultipleActionsRunner.executeValidatedCommands(MultipleActionsRunner.java:174) [engine-bll.jar:]
        at org.ovirt.engine.core.bll.MultipleActionsRunner.RunCommands(MultipleActionsRunner.java:155) [engine-bll.jar:]
        at org.ovirt.engine.core.bll.SortedMultipleActionsRunnerBase.RunCommands(SortedMultipleActionsRunnerBase.java:16) [engine-bll.jar:]
        at org.ovirt.engine.core.bll.MultipleActionsRunner$1.run(MultipleActionsRunner.java:77) [engine-bll.jar:]
        at org.ovirt.engine.core.utils.threadpool.ThreadPoolUtil$InternalWrapperRunnable.run(ThreadPoolUtil.java:64) [engine-utils.jar:]
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) [:1.6.0_22]
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) [:1.6.0_22]
        at java.util.concurrent.FutureTask.run(FutureTask.java:166) [:1.6.0_22]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) [:1.6.0_22]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) [:1.6.0_22]
        at java.lang.Thread.run(Thread.java:679) [:1.6.0_22]

2012-03-05 12:31:23,996 ERROR [org.ovirt.engine.core.vdsbroker.VDSCommandBase] (pool-5-thread-5) [7d635c55] Command CreateVmVDS execution failed. Exception: RuntimeException: java.lang.NullPointerException
2012-03-05 12:31:23,997 INFO  [org.ovirt.engine.core.vdsbroker.CreateVmVDSCommand] (pool-5-thread-5) [7d635c55] FINISH, CreateVmVDSCommand, log id: 21b654e6
2012-03-05 12:31:23,997 ERROR [org.ovirt.engine.core.bll.RunVmCommand] (pool-5-thread-5) [7d635c55] Command org.ovirt.engine.core.bll.RunVmCommand throw Vdc Bll exception. With error message VdcBLLException: java.lang.RuntimeException: java.lang.NullPointerException

Comment 1 Haim 2012-03-05 11:15:47 UTC
git: 479b2a998f0f084d70dc6425d9441a9f5774de22

Comment 2 Eli Mesika 2012-03-05 12:52:50 UTC
Can not reproduce with the given scenario on latest.
Lowering priority

Comment 3 Haim 2012-03-06 07:13:45 UTC
(In reply to comment #2)
> Can not reproduce with the given scenario on latest.
> Lowering priority

I think there is a problem with UI (webadmin) - on cluster's tab, cluster level for given cluster is set on 3.1, but when i edit it, ui shows me 3.0 ...

Comment 4 Haim 2012-03-06 07:25:01 UTC
(In reply to comment #3)
> (In reply to comment #2)
> > Can not reproduce with the given scenario on latest.
> > Lowering priority
> 
> I think there is a problem with UI (webadmin) - on cluster's tab, cluster level
> for given cluster is set on 3.1, but when i edit it, ui shows me 3.0 ...

tested again: 

- had to manually alter database and restore cluster level from 3.1 to 3.0
- using web-admin, changed it again from 3.0 to 3.1
- using web-admin, edit cluster = i see 3.0 altough data-base shows 3.1 ...

Comment 5 Eli Mesika 2012-03-18 17:20:35 UTC
See no problem , scenario works on latest.
Please retest

Regarding the UI Issue, you have to change first the DC comparability language and then the cluster shows the right version

Comment 6 Eli Mesika 2012-03-18 17:21:29 UTC
sorry , in previous comment comparability language = > comparability version

Comment 7 Itamar Heim 2012-08-09 08:06:34 UTC
closing ON_QA bugs as oVirt 3.1 was released:
http://www.ovirt.org/get-ovirt/