Attempting to delete a vApp or VM in the Cloud Director UI fails with the following error:
query did not return a unique result: 2
In the /opt/vmware/vcloud-director/logs/vcloud-container-debug.log, you see an entry such as :
org.hibernate.NonUniqueResultException: query did not return a unique result: 2 at org.hibernate.impl.AbstractQueryImpl.uniqueElement(AbstractQueryImpl.java:844) at org.hibernate.impl.CriteriaImpl.uniqueResult(CriteriaImpl.java:328) at jdk.internal.reflect.GeneratedMethodAccessor159.invoke(Unknown Source) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at com.vmware.vcloud.common.db.HibernateClassLoaderHelperBeanPostProcessor$SessionInvocationHandler.invoke(HibernateClassLoaderHelperBeanPostProcessor.java:280) at com.sun.proxy.$Proxy153.uniqueResult(Unknown Source) at com.vmware.vcloud.common.persist.CriteriaProxy.uniqueResult(CriteriaProxy.java:261) at com.vmware.vcloud.fabric.compute.dao.impl.HibernateAbstractHandleableDao.deleteById(HibernateAbstractHandleableDao.java:141) at com.vmware.vcloud.fabric.compute.cvm.ComputeVmFactoryImpl.delete(ComputeVmFactoryImpl.java:91) at jdk.internal.reflect.GeneratedMethodAccessor13748.invoke(Unknown Source) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566)
VMware Cloud Director 10.x
This issue occurs due to the presence of duplicate entries in the database for the affected Virtual Machine.
To resolve this issue, please Contact Broadcom Support, note this Article ID (406056), and upload a database backup to the case.
Backup and Restore of Your VMware Cloud Director Appliance
Removal of duplicate entries requires database modifications, which must be performed with assistance from VMware Technical Support.