[ 
https://issues.apache.org/jira/browse/CLOUDSTACK-6510?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Devdeep Singh reassigned CLOUDSTACK-6510:
-----------------------------------------

    Assignee: Devdeep Singh

> 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
>            Assignee: Devdeep Singh
>             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)

Reply via email to