[ https://issues.apache.org/jira/browse/CLOUDSTACK-7651?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Likitha Shetty resolved CLOUDSTACK-7651. ---------------------------------------- Resolution: Fixed Fixed by [https://git-wip-us.apache.org/repos/asf?p=cloudstack.git;a=commit;h=9866c648eb5e6ce6ded1b6dcadbb77240fe0e683] > Various operation intermittently fail in VMware with 'he object has already > been deleted or has not been completely created' exceptions > --------------------------------------------------------------------------------------------------------------------------------------- > > Key: CLOUDSTACK-7651 > URL: https://issues.apache.org/jira/browse/CLOUDSTACK-7651 > Project: CloudStack > Issue Type: Bug > Security Level: Public(Anyone can view this level - this is the > default.) > Components: VMware > Affects Versions: 4.5.0 > Reporter: Likitha Shetty > Assignee: Likitha Shetty > Priority: Critical > Fix For: 4.5.0 > > > +Steps to reproduce+ > 1. Setup VMware 4.3.0.1 with 1 CCP Management server. > 2. Create 2 VMware DCs in 2 different vCenters. > 3. Add 2 zones in CCP corresponding to the two DCs. > 4. Do basic VM/Volume lifecycle operations. > Keep monitoring the logs for the following error - > *javax.xml.ws.soap.SOAPFaultException: The object has already been deleted or > has not been completely created* > For e.g. > {noformat} > javax.xml.ws.soap.SOAPFaultException > Message: The object has already been deleted or has not been completely > created > javax.xml.ws.soap.SOAPFaultException: The object has already been deleted or > has not been completely created > at > com.sun.xml.internal.ws.fault.SOAP11Fault.getProtocolException(SOAP11Fault.java:178) > at > com.sun.xml.internal.ws.fault.SOAPFaultBuilder.createException(SOAPFaultBuilder.java:119) > at > com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:108) > at > com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:78) > at com.sun.xml.internal.ws.client.sei.SEIStub.invoke(SEIStub.java:110) > at com.sun.proxy.$Proxy389.retrieveProperties(Unknown Source) > at > com.cloud.hypervisor.vmware.util.VmwareClient.retrieveMoRefProperties(VmwareClient.java:308) > at > com.cloud.hypervisor.vmware.util.VmwareClient.getDynamicProperty(VmwareClient.java:263) > at > com.cloud.hypervisor.vmware.mo.HostMO.getHostDatastoreSystemMO(HostMO.java:166) > at > com.cloud.hypervisor.vmware.mo.HostMO.findDatastore(HostMO.java:889) > at > com.cloud.hypervisor.vmware.mo.HypervisorHostHelper.findDatastoreWithBackwardsCompatibility(HypervisorHostHelper.java:131) > at > com.cloud.storage.resource.VmwareStorageProcessor.deleteVolume(VmwareStorageProcessor.java:1481) > at > com.cloud.storage.resource.StorageSubsystemCommandHandlerBase.execute(StorageSubsystemCommandHandlerBase.java:120) > at > com.cloud.storage.resource.StorageSubsystemCommandHandlerBase.handleStorageCommands(StorageSubsystemCommandHandlerBase.java:54) > at > com.cloud.hypervisor.vmware.resource.VmwareResource.executeRequest(VmwareResource.java:598) > at > com.cloud.agent.manager.DirectAgentAttache$Task.runInContext(DirectAgentAttache.java:215) > at > org.apache.cloudstack.managed.context.ManagedContextRunnable$1.run(ManagedContextRunnable.java:50) > 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:47) > 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.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:165) > at > java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:266) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1146) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > at java.lang.Thread.run(Thread.java:701) > {noformat} > +Root Cause Analysis+ > The thread local context which is used to handle connections to a vCenter is > being re-used intermittently. And when it is re-used, if the existing context > corresponds to the other vCenter then the operation being executed will fail. > The re-use is happening because after the PingTask completion we are not > clearing the ThreadLocal context. -- This message was sent by Atlassian JIRA (v6.3.4#6332)