One thing worth trying, is to remove javanature and corresponding .classpath file from all EAR projects in your workspace. m2e (inappropriately) configures java nature for all maven projects and this may trigger the deadlock that you see. Let me know if removing java nature from EAR projects changed anything.

Henri Gomez wrote:
Thanks for the reply.

Did I'm the only one to see such behaviour ?

2008/7/31 Igor Fedorenko <[EMAIL PROTECTED]>:
I think it is related to the following two threads. Worker-0 holds workspace
lock (see Workspace.endOperation line 1022) and tries to join Worker-10. And
Worker-10 is waiting for workspace lock (Workspace.prepareOperation line
1747). The deadlock seems to be a WTP bug, but I do not know whether it was
triggered by m2e or not.





"Worker-0" prio=6 tid=0x0308a800 nid=0xfc8 in Object.wait()
[0x03f8f000..0x03f8fc14]
  java.lang.Thread.State: TIMED_WAITING (on object monitor)
       at java.lang.Object.wait(Native Method)
       - waiting on <0x12d997b0> (a
org.eclipse.core.internal.jobs.Semaphore)
       at
org.eclipse.core.internal.jobs.Semaphore.acquire(Semaphore.java:38)
       - locked <0x12d997b0> (a org.eclipse.core.internal.jobs.Semaphore)
       at
org.eclipse.core.internal.jobs.JobManager.join(JobManager.java:716)
       at
org.eclipse.core.internal.jobs.InternalJob.join(InternalJob.java:329)
       at org.eclipse.core.runtime.jobs.Job.join(Job.java:384)
       at
org.eclipse.wst.common.componentcore.internal.builder.DependencyGraphImpl.waitForAllUpdates(DependencyGraphImpl.java:431)
       at
org.eclipse.wst.common.componentcore.internal.builder.DependencyGraphImpl.getReferencingComponents(DependencyGraphImpl.java:72)
       at
org.eclipse.wst.common.componentcore.internal.builder.DependencyGraph.getReferencingComponents(DependencyGraph.java:30)
       at
org.eclipse.wst.common.componentcore.internal.resources.VirtualComponent.getReferencingComponents(VirtualComponent.java:432)
       at
org.eclipse.jst.j2ee.project.EarUtilities.getReferencingEARProjects(EarUtilities.java:181)
       at
org.eclipse.jst.j2ee.componentcore.J2EEModuleVirtualComponent.getManifestReferences(J2EEModuleVirtualComponent.java:289)
       at
org.eclipse.jst.j2ee.componentcore.J2EEModuleVirtualComponent.getManifestReferences(J2EEModuleVirtualComponent.java:270)
       at
org.eclipse.jst.j2ee.componentcore.J2EEModuleVirtualArchiveComponent.getReferences(J2EEModuleVirtualArchiveComponent.java:34)
       at
org.eclipse.jst.j2ee.internal.classpathdep.ClasspathDependencyVirtualComponent.getReferences(ClasspathDependencyVirtualComponent.java:68)
       at
org.eclipse.jst.j2ee.internal.common.classpath.J2EEComponentClasspathContainer.update(J2EEComponentClasspathContainer.java:176)
       at
org.eclipse.jst.j2ee.internal.common.classpath.J2EEComponentClasspathContainer.install(J2EEComponentClasspathContainer.java:308)
       at
org.eclipse.jst.j2ee.internal.common.classpath.J2EEComponentClasspathInitializer.initialize(J2EEComponentClasspathInitializer.java:29)
       at
org.eclipse.jdt.internal.core.JavaModelManager.initializeContainer(JavaModelManager.java:2371)
       at
org.eclipse.jdt.internal.core.JavaModelManager$13.run(JavaModelManager.java:2301)
       at
org.eclipse.jdt.internal.core.JavaModelManager.initializeAllContainers(JavaModelManager.java:2315)
       at
org.eclipse.jdt.internal.core.JavaModelManager.getClasspathContainer(JavaModelManager.java:1679)
       at
org.eclipse.jdt.core.JavaCore.getClasspathContainer(JavaCore.java:2554)
       at
org.eclipse.jdt.internal.core.JavaProject.resolveClasspath(JavaProject.java:2562)
       at
org.eclipse.jdt.internal.core.JavaProject.getResolvedClasspath(JavaProject.java:1829)
       at
org.eclipse.jdt.internal.core.DeltaProcessingState.initializeRoots(DeltaProcessingState.java:229)
       at
org.eclipse.jdt.internal.core.DeltaProcessor.processResourceDelta(DeltaProcessor.java:1741)
       at
org.eclipse.jdt.internal.core.DeltaProcessor.resourceChanged(DeltaProcessor.java:1923)
       at
org.eclipse.jdt.internal.core.DeltaProcessingState.resourceChanged(DeltaProcessingState.java:410)
       at
org.eclipse.core.internal.events.NotificationManager$2.run(NotificationManager.java:288)
       at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
       at
org.eclipse.core.internal.events.NotificationManager.notify(NotificationManager.java:282)
       at
org.eclipse.core.internal.events.NotificationManager.broadcastChanges(NotificationManager.java:148)
       at
org.eclipse.core.internal.resources.Workspace.broadcastPostChange(Workspace.java:313)
       at
org.eclipse.core.internal.resources.Workspace.endOperation(Workspace.java:1022)
       at
org.eclipse.core.internal.resources.Resource.refreshLocal(Resource.java:1489)
       at
org.eclipse.core.internal.refresh.RefreshJob.runInWorkspace(RefreshJob.java:141)
       at
org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:38)
       at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)




"Worker-10" prio=6 tid=0x02c5f000 nid=0x514 in Object.wait()
[0x0657f000..0x0657fd14]
  java.lang.Thread.State: TIMED_WAITING (on object monitor)
       at java.lang.Object.wait(Native Method)
       - waiting on <0x12d98fd0> (a
org.eclipse.core.internal.jobs.Semaphore)
       at
org.eclipse.core.internal.jobs.Semaphore.acquire(Semaphore.java:38)
       - locked <0x12d98fd0> (a org.eclipse.core.internal.jobs.Semaphore)
       at
org.eclipse.core.internal.jobs.OrderedLock.doAcquire(OrderedLock.java:169)
       at
org.eclipse.core.internal.jobs.OrderedLock.acquire(OrderedLock.java:105)
       at
org.eclipse.core.internal.jobs.OrderedLock.acquire(OrderedLock.java:82)
       at
org.eclipse.core.internal.resources.WorkManager.checkIn(WorkManager.java:118)
       at
org.eclipse.core.internal.resources.Workspace.prepareOperation(Workspace.java:1747)
       at
org.eclipse.core.internal.resources.Workspace.run(Workspace.java:1795)
       at
org.eclipse.jdt.internal.core.JavaModelManager.initializeAllContainers(JavaModelManager.java:2317)
       at
org.eclipse.jdt.internal.core.JavaModelManager.getClasspathContainer(JavaModelManager.java:1679)
       at
org.eclipse.jdt.core.JavaCore.getClasspathContainer(JavaCore.java:2554)
       at
org.eclipse.jdt.internal.core.JavaProject.resolveClasspath(JavaProject.java:2562)
       at
org.eclipse.jdt.internal.core.JavaProject.getResolvedClasspath(JavaProject.java:1829)
       at
org.eclipse.jdt.internal.core.JavaProject.buildStructure(JavaProject.java:394)
       at
org.eclipse.jdt.internal.core.Openable.generateInfos(Openable.java:257)
       at
org.eclipse.jdt.internal.core.JavaElement.openWhenClosed(JavaElement.java:514)
       at
org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:251)
       at
org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:237)
       at
org.eclipse.jdt.internal.core.JavaElement.getChildren(JavaElement.java:192)
       at
org.eclipse.jdt.internal.core.JavaProject.getPackageFragmentRoots(JavaProject.java:1697)
       at
org.eclipse.jst.j2ee.internal.project.J2EEProjectUtilities.getSourceContainers(J2EEProjectUtilities.java:855)
       at
org.eclipse.jst.j2ee.internal.project.J2EEProjectUtilities.getOutputContainers(J2EEProjectUtilities.java:892)
       at
org.eclipse.jst.j2ee.internal.project.J2EEProjectUtilities.getAllOutputContainers(J2EEProjectUtilities.java:928)
       at
org.eclipse.jst.j2ee.internal.classpathdep.ClasspathDependencyValidator$ClasspathDependencyValidatorData.<init>(ClasspathDependencyValidator.java:217)
       at
org.eclipse.jst.j2ee.classpathdep.ClasspathDependencyUtil.getComponentClasspathDependencies(ClasspathDependencyUtil.java:161)
       at
org.eclipse.jst.j2ee.classpathdep.ClasspathDependencyUtil.getComponentClasspathDependencies(ClasspathDependencyUtil.java:145)
       at
org.eclipse.jst.j2ee.componentcore.J2EEModuleVirtualComponent.getJavaClasspathReferences(J2EEModuleVirtualComponent.java:183)
       at
org.eclipse.jst.j2ee.componentcore.J2EEModuleVirtualComponent.getNonManifestReferences(J2EEModuleVirtualComponent.java:120)
       at
org.eclipse.jst.j2ee.componentcore.J2EEModuleVirtualComponent.getReferences(J2EEModuleVirtualComponent.java:87)
       at
org.eclipse.jst.j2ee.componentcore.J2EEModuleVirtualComponent.getReferences(J2EEModuleVirtualComponent.java:83)
       at
org.eclipse.wst.common.componentcore.internal.builder.DependencyGraphImpl$GraphUpdateJob$1.run(DependencyGraphImpl.java:302)
       at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
       at
org.eclipse.wst.common.componentcore.internal.builder.DependencyGraphImpl$GraphUpdateJob.run(DependencyGraphImpl.java:281)
       at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)



Henri Gomez wrote:
Could it be a WTP deadlock or do you think its related to WTP/m2eclipse ?



2008/7/30 Henri Gomez <[EMAIL PROTECTED]>:
Henri,
Hi Igor

Do you have a reliable way to reproduce the deadlock which you can share
with me? I do not see anything obvious from these stack traces (m2e sits
in
the IResource#deleteMarkers) and will need to reproduce this problem
locally
in order to debug it.
No way.

I see this problem on both Eclipse 3.3.2 and 3.4 (and the related WTP).

My workspace is very important (about 200 projects), and now that I
mavenize them all, I see this problem more and more often and the only
solution is to rename my workspace and reimport all projects by hand
in the newly workspace.

Hope you help me

---------------------------------------------------------------------
To unsubscribe from this list, please visit:

  http://xircles.codehaus.org/manage_email




---------------------------------------------------------------------
To unsubscribe from this list, please visit:

    http://xircles.codehaus.org/manage_email




---------------------------------------------------------------------
To unsubscribe from this list, please visit:

   http://xircles.codehaus.org/manage_email


Reply via email to