Error: "Internal Server Error a different object with the same identifier value was already associated with the session" when performing a failover or migration
search cancel

Error: "Internal Server Error a different object with the same identifier value was already associated with the session" when performing a failover or migration

book

Article ID: 437032

calendar_today

Updated On:

Products

VMware Cloud Director VMware Live Recovery

Issue/Introduction

  • Attempting to failover / migrate VM's using Flexible storage profile assignment that has multiple disks configured to vSAN and NFS storage policies. 
  • Error in the VMware Cloud Director Availability UI: "Unexpected VMware Cloud Director Error: Internal Server Error a different object with the same identifier value was already associated with the session"  
  • In the /opt/vmware/vcloud-director/logs/vcloud-container-debug.log for the Destination VMware Cloud Director you see entries similar to:

    2025-09-30 16:21:45,918 | ERROR    | storage-fabric-activity-pool-1564 | ReconfigureStoredVmActivity    | [Activity Execution] Uncaught Exception during Activity execution. Recent phase: com.vmware.vcloud.fabric.storage.storedVm.impl.ReconfigureStoredVmActivity$UpdateDbPhase@2805be4 - Handle: urn:uuid:########-####-####-####-############, Current Phase: ReconfigureStoredVmActivity$UpdateDbPhase | requestId=UI-########-####-####-####-############-####-##-########-####-####-####-############,request=PUT https://vcloud.example.com/api/vApp/vm-########-####-####-####-############/networkConnectionSection,requestTime=1759249292197,remoteAddress=##.##.##.###:21251,userAgent=Apache-HttpClient/4.5.14 (Java/17.0.12),accept=application/*+xml;version 38.0 vcd=########-####-####-####-############,task=########-####-####-####-############ activity=(com.vmware.vcloud.backendbase.management.system.TaskActivity,urn:uuid:########-####-####-####-############) activity=(com.vmware.vcloud.fabric.storage.storedVm.impl.ReconfigureStoredVmActivity,urn:uuid:########-####-####-####-############) 
     java.util.concurrent.ExecutionException: org.hibernate.NonUniqueObjectException: a different object with the same identifier value was already associated with the session: [com.vmware.vcloud.common.model.storagefabric.VmDiskStorageClassModel#com.vmware.vcloud.common.model.storagefabric.VmDiskId@########] 
       at com.vmware.vcloud.activity.executors.ActivityRunner.run(ActivityRunner.java:136) 
       at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) 
       at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) 
       at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) 
       at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) 
       at java.base/java.lang.Thread.run(Thread.java:829) 
     Caused by: org.hibernate.NonUniqueObjectException: a different object with the same identifier value was already associated with the session: [com.vmware.vcloud.common.model.storagefabric.VmDiskStorageClassModel#com.vmware.vcloud.common.model.storagefabric.VmDiskId@########] 
       at org.hibernate.event.def.AbstractSaveEventListener.performSave(AbstractSaveEventListener.java:191) 
       at org.hibernate.event.def.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:144) 
       at org.hibernate.event.def.DefaultPersistEventListener.entityIsTransient(DefaultPersistEventListener.java:154) 
       at org.hibernate.event.def.DefaultPersistEventListener.onPersist(DefaultPersistEventListener.java:110) 
       at org.hibernate.impl.SessionImpl.firePersist(SessionImpl.java:636) 
       at org.hibernate.impl.SessionImpl.persist(SessionImpl.java:628) 

Environment

VMware Cloud Director 10.6.X
VMware Cloud Director Availability 4.7.X

Cause

This issue occurs due to how RT-VMs are reconfigured during a migration and failover.

Resolution

Broadcom Engineering is aware of this issue.

Please subscribe to this article to receive updates.

Workaround

Please ensure that the Flexible storage profile assignment has multiple disk storage policies that use the same storage type.