Sanjay Tripathi created CLOUDSTACK-6510:
-------------------------------------------
Summary: java.lang.IllegalStateException: circular reference error
during live migration of VM.
Key: CLOUDSTACK-6510
URL: https://issues.apache.org/jira/browse/CLOUDSTACK-6510
Project: CloudStack
Issue Type: Bug
Security Level: Public (Anyone can view this level - this is the default.)
Affects Versions: 4.4.0
Environment: MS 4.4
XS 6.2.0
Reporter: Sanjay Tripathi
Fix For: 4.4.0
Getting the following exception during live migration of VM, though this is not
affecting live migration functionality:
2014-04-25 13:59:27,699 DEBUG [c.c.a.t.Request]
(Work-Job-Executor-2:job-71/job-72 ctx-1920db32) Seq 4-3947968023343661101:
Executing: { Cmd , MgmtId: 116698015432997, via: 4(xen20.cloud.com), Ver: v1,
Flags: 100011,
[{"com.cloud.agent.api.CheckVirtualMachineCommand":{"vmName":"i-2-9-VM","wait":20}}]
}
2014-04-25 13:59:27,700 DEBUG [c.c.a.m.DirectAgentAttache]
(DirectAgent-36:ctx-a412b1b1) Seq 4-3947968023343661101: Executing request
2014-04-25 13:59:27,718 DEBUG [c.c.h.x.r.CitrixResourceBase]
(DirectAgent-36:ctx-a412b1b1) 3. The VM i-2-9-VM is in Running state
2014-04-25 13:59:27,719 DEBUG [c.c.a.m.DirectAgentAttache]
(DirectAgent-36:ctx-a412b1b1) Seq 4-3947968023343661101: Response Received:
2014-04-25 13:59:27,719 DEBUG [c.c.a.t.Request] (DirectAgent-36:ctx-a412b1b1)
Seq 4-3947968023343661101: Processing: { Ans: , MgmtId: 116698015432997, via:
4, Ver: v1, Flags: 10,
[{"com.cloud.agent.api.CheckVirtualMachineAnswer":{"state":"Running","result":true,"wait":0}}]
}
2014-04-25 13:59:27,721 DEBUG [c.c.a.t.Request]
(Work-Job-Executor-2:job-71/job-72 ctx-1920db32) Seq 4-3947968023343661101:
Received: { Ans: , MgmtId: 116698015432997, via: 4, Ver: v1, Flags: 10, {
CheckVirtualMachineAnswer } }
2014-04-25 13:59:27,735 DEBUG [c.c.a.m.DirectAgentAttache]
(DirectAgent-59:ctx-3603e975) Seq 1-2562829662950522954: Response Received:
2014-04-25 13:59:27,736 DEBUG [c.c.a.t.Request] (StatsCollector-1:ctx-8f878bfd)
Seq 1-2562829662950522954: Received: { Ans: , MgmtId: 116698015432997, via: 1,
Ver: v1, Flags: 10, { GetGPUStatsAnswer } }
2014-04-25 13:59:27,807 DEBUG [c.c.v.VmWorkJobDispatcher]
(Work-Job-Executor-2:job-71/job-72) Done with run of VM work job:
com.cloud.vm.VmWorkMigrate for VM 9, job origin: 71
2014-04-25 13:59:27,807 ERROR [c.c.v.VmWorkJobDispatcher]
(Work-Job-Executor-2:job-71/job-72) Unable to complete AsyncJobVO {id:72,
userId: 2, accountId: 2, instanceType: null, instanceId: null, cmd:
com.cloud.vm.VmWorkMigrate, cmdInfo:
rO0ABXNyACVjb20uY2xvdWQudm0uVm1Xb3JrTWlncmF0ZVdpdGhTdG9yYWdlsew9z6UxtXMCAANKAApkZXN0SG9zdElkSgAJc3JjSG9zdElkTAAMdm9sdW1lVG9Qb29sdAAPTGphdmEvdXRpbC9NYXA7eHIAE2NvbS5jbG91ZC52bS5WbVdvcmufmbZW8CVnawIABEoACWFjY291bnRJZEoABnVzZXJJZEoABHZtSWRMAAtoYW5kbGVyTmFtZXQAEkxqYXZhL2xhbmcvU3RyaW5nO3hwAAAAAAAAAAIAAAAAAAAAAgAAAAAAAAAJdAAZVmlydHVhbE1hY2hpbmVNYW5hZ2VySW1wbAAAAAAAAAAEAAAAAAAAAAVzcgARamF2YS51dGlsLkhhc2hNYXAFB9rBwxZg0QMAAkYACmxvYWRGYWN0b3JJAAl0aHJlc2hvbGR4cD9AAAAAAAAMdwgAAAAQAAAAAHg,
cmdVersion: 0, status: IN_PROGRESS, processStatus: 0, resultCode: 0, result:
null, initMsid: 116698015432997, completeMsid: null, lastUpdated: null,
lastPolled: null, created: Fri Apr 25 13:55:58 IST 2014}, job origin:71
java.lang.IllegalStateException: circular reference error
Offending field: field
Offending object: preserveType: false, type: class java.lang.reflect.Field,
obj: private long org.apache.cloudstack.storage.datastore.db.StoragePoolVO.id
at
com.google.gson.CircularReferenceException.createDetailedException(CircularReferenceException.java:43)
at
com.google.gson.JsonSerializationVisitor.visitObjectField(JsonSerializationVisitor.java:117)
at
com.google.gson.ReflectingFieldNavigator.visitFieldsReflectively(ReflectingFieldNavigator.java:69)
at com.google.gson.ObjectNavigator.accept(ObjectNavigator.java:120)
at
com.google.gson.JsonSerializationVisitor.getJsonElementForChild(JsonSerializationVisitor.java:147)
at
com.google.gson.JsonSerializationVisitor.addAsChildOfObject(JsonSerializationVisitor.java:127)
at
com.google.gson.JsonSerializationVisitor.visitObjectField(JsonSerializationVisitor.java:114)
at
com.google.gson.ReflectingFieldNavigator.visitFieldsReflectively(ReflectingFieldNavigator.java:69)
at com.google.gson.ObjectNavigator.accept(ObjectNavigator.java:120)
at
com.google.gson.JsonSerializationVisitor.getJsonElementForChild(JsonSerializationVisitor.java:147)
at
com.google.gson.JsonSerializationVisitor.addAsChildOfObject(JsonSerializationVisitor.java:127)
at
com.google.gson.JsonSerializationVisitor.visitObjectField(JsonSerializationVisitor.java:114)
at
com.google.gson.ReflectingFieldNavigator.visitFieldsReflectively(ReflectingFieldNavigator.java:69)
at com.google.gson.ObjectNavigator.accept(ObjectNavigator.java:120)
at
com.google.gson.JsonSerializationVisitor.getJsonElementForChild(JsonSerializationVisitor.java:147)
at
com.google.gson.JsonSerializationVisitor.addAsArrayElement(JsonSerializationVisitor.java:139)
at
com.google.gson.JsonSerializationVisitor.visitArray(JsonSerializationVisitor.java:84)
at com.google.gson.ObjectNavigator.accept(ObjectNavigator.java:112)
at
com.google.gson.JsonSerializationVisitor.getJsonElementForChild(JsonSerializationVisitor.java:147)
at
com.google.gson.JsonSerializationVisitor.addAsChildOfObject(JsonSerializationVisitor.java:127)
at
com.google.gson.JsonSerializationVisitor.visitArrayField(JsonSerializationVisitor.java:96)
at
com.google.gson.ReflectingFieldNavigator.visitFieldsReflectively(ReflectingFieldNavigator.java:67)
at com.google.gson.ObjectNavigator.accept(ObjectNavigator.java:120)
at
com.google.gson.JsonSerializationVisitor.getJsonElementForChild(JsonSerializationVisitor.java:147)
at
com.google.gson.JsonSerializationVisitor.addAsChildOfObject(JsonSerializationVisitor.java:127)
at
com.google.gson.JsonSerializationVisitor.visitObjectField(JsonSerializationVisitor.java:114)
at
com.google.gson.ReflectingFieldNavigator.visitFieldsReflectively(ReflectingFieldNavigator.java:69)
at com.google.gson.ObjectNavigator.accept(ObjectNavigator.java:120)
at
com.google.gson.JsonSerializationVisitor.getJsonElementForChild(JsonSerializationVisitor.java:147)
at
com.google.gson.JsonSerializationVisitor.addAsChildOfObject(JsonSerializationVisitor.java:127)
at
com.google.gson.JsonSerializationVisitor.visitObjectField(JsonSerializationVisitor.java:114)
at
com.google.gson.ReflectingFieldNavigator.visitFieldsReflectively(ReflectingFieldNavigator.java:69)
at com.google.gson.ObjectNavigator.accept(ObjectNavigator.java:120)
at
com.google.gson.JsonSerializationVisitor.getJsonElementForChild(JsonSerializationVisitor.java:147)
at
com.google.gson.JsonSerializationVisitor.addAsChildOfObject(JsonSerializationVisitor.java:127)
at
com.google.gson.JsonSerializationVisitor.visitObjectField(JsonSerializationVisitor.java:114)
at
com.google.gson.ReflectingFieldNavigator.visitFieldsReflectively(ReflectingFieldNavigator.java:69)
at com.google.gson.ObjectNavigator.accept(ObjectNavigator.java:120)
at
com.google.gson.JsonSerializationContextDefault.serialize(JsonSerializationContextDefault.java:62)
at
com.google.gson.BaseMapTypeAdapter.serialize(BaseMapTypeAdapter.java:34)
at com.google.gson.MapTypeAdapter.serialize(MapTypeAdapter.java:53)
at com.google.gson.MapTypeAdapter.serialize(MapTypeAdapter.java:33)
at
com.google.gson.JsonSerializationVisitor.findAndInvokeCustomSerializer(JsonSerializationVisitor.java:184)
at
com.google.gson.JsonSerializationVisitor.visitFieldUsingCustomHandler(JsonSerializationVisitor.java:204)
at
com.google.gson.ReflectingFieldNavigator.visitFieldsReflectively(ReflectingFieldNavigator.java:63)
at com.google.gson.ObjectNavigator.accept(ObjectNavigator.java:120)
at
com.google.gson.JsonSerializationContextDefault.serialize(JsonSerializationContextDefault.java:62)
at
com.google.gson.JsonSerializationContextDefault.serialize(JsonSerializationContextDefault.java:53)
at com.google.gson.Gson.toJsonTree(Gson.java:220)
at com.google.gson.Gson.toJson(Gson.java:260)
at com.google.gson.Gson.toJson(Gson.java:240)
at
com.cloud.vm.VmWorkJobHandlerProxy.handleVmWorkJob(VmWorkJobHandlerProxy.java:110)
at
com.cloud.vm.VirtualMachineManagerImpl.handleVmWorkJob(VirtualMachineManagerImpl.java:5312)
at com.cloud.vm.VmWorkJobDispatcher.runJob(VmWorkJobDispatcher.java:102)
at
org.apache.cloudstack.framework.jobs.impl.AsyncJobManagerImpl$5.runInContext(AsyncJobManagerImpl.java:495)
at
org.apache.cloudstack.managed.context.ManagedContextRunnable$1.run(ManagedContextRunnable.java:49)
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
org.apache.cloudstack.managed.context.ManagedContextRunnable.run(ManagedContextRunnable.java:46)
at
org.apache.cloudstack.framework.jobs.impl.AsyncJobManagerImpl$5.run(AsyncJobManagerImpl.java:452)
at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:722)
Caused by: com.google.gson.CircularReferenceException: circular reference error
at
com.google.gson.JsonSerializationVisitor.start(JsonSerializationVisitor.java:61)
at com.google.gson.ObjectNavigator.accept(ObjectNavigator.java:109)
at
com.google.gson.JsonSerializationVisitor.getJsonElementForChild(JsonSerializationVisitor.java:147)
at
com.google.gson.JsonSerializationVisitor.addAsChildOfObject(JsonSerializationVisitor.java:127)
... 66 more
2014-04-25 13:59:27,814 DEBUG [o.a.c.f.j.i.AsyncJobManagerImpl]
(Work-Job-Executor-2:job-71/job-72) Complete async job-72, jobStatus: FAILED,
resultCode: 0, result: rO0ABXN...
--
This message was sent by Atlassian JIRA
(v6.2#6252)