Uploaded image for project: 'Tools (JBoss Tools)'
  1. Tools (JBoss Tools)
  2. JBIDE-11719

Deadlock in WS component tests

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Duplicate
    • Icon: Major Major
    • 3.3.0.CR1
    • 3.3.0.Beta3
    • webservices
    • None

      After running jbosstools build locally with tests overnight I got frozen eclipse window after build finished.
      Below is stack trace generated by jstack for stalled eclipse instance which tells problem is in starting JavaCore plugin manually as

      org.eclipse.jdt.core.JavaCore.getPlugin().start(bundle.getBundleContext());

      The stacktrace is:

      Full thread dump Java HotSpot(TM) 64-Bit Server VM (20.6-b01 mixed mode):
      
      "Attach Listener" daemon prio=10 tid=0x00007fa044001000 nid=0x3cd3 waiting on condition [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE
      
      "[ThreadPool Manager] - Idle Thread" daemon prio=10 tid=0x00007fa020012000 nid=0x6c96 in Object.wait() [0x00007f9fab3f9000]
         java.lang.Thread.State: WAITING (on object monitor)
      	at java.lang.Object.wait(Native Method)
      	at java.lang.Object.wait(Object.java:485)
      	at org.eclipse.equinox.internal.util.impl.tpt.threadpool.Executor.run(Executor.java:106)
      	- locked <0x00000000f6d31638> (a org.eclipse.equinox.internal.util.impl.tpt.threadpool.Executor)
      
      "WorkbenchTestable" prio=10 tid=0x00007fa07c91c800 nid=0x6c15 in Object.wait() [0x00007f9fb83a1000]
         java.lang.Thread.State: WAITING (on object monitor)
      	at java.lang.Object.wait(Native Method)
      	- waiting on <0x00000000c1d39810> (a org.eclipse.swt.widgets.RunnableLock)
      	at java.lang.Object.wait(Object.java:485)
      	at org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:187)
      	- locked <0x00000000c1d39810> (a org.eclipse.swt.widgets.RunnableLock)
      	at org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java:150)
      	at org.eclipse.swt.widgets.Display.syncExec(Display.java:4330)
      	at org.eclipse.ui.internal.testing.WorkbenchTestable.runTest(WorkbenchTestable.java:112)
      	at org.eclipse.tycho.surefire.osgibooter.AbstractUITestApplication.runTests(AbstractUITestApplication.java:32)
      	at org.eclipse.ui.internal.testing.WorkbenchTestable$1.run(WorkbenchTestable.java:71)
      	at java.lang.Thread.run(Thread.java:662)
      
      "Worker-5" prio=10 tid=0x00007f9f94001000 nid=0x6c13 in Object.wait() [0x00007f9fb85a3000]
         java.lang.Thread.State: TIMED_WAITING (on object monitor)
      	at java.lang.Object.wait(Native Method)
      	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
      	- locked <0x00000000c133c9a0> (a org.eclipse.core.internal.jobs.WorkerPool)
      	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
      	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:50)
      
      "Worker-3" prio=10 tid=0x00007f9f9c001000 nid=0x6c11 in Object.wait() [0x00007f9fb87a5000]
         java.lang.Thread.State: TIMED_WAITING (on object monitor)
      	at java.lang.Object.wait(Native Method)
      	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
      	- locked <0x00000000c133c9a0> (a org.eclipse.core.internal.jobs.WorkerPool)
      	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
      	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:50)
      
      "Worker-2" prio=10 tid=0x00007f9f98001000 nid=0x6c10 waiting for monitor entry [0x00007f9fb88a6000]
         java.lang.Thread.State: BLOCKED (on object monitor)
      	at org.eclipse.jdt.internal.core.search.processing.JobManager.currentJob(JobManager.java:58)
      	- waiting to lock <0x00000000c133d040> (a org.eclipse.jdt.internal.core.search.indexing.IndexManager)
      	at org.eclipse.jdt.internal.core.search.processing.JobManager$1$ProgressJob.run(JobManager.java:359)
      	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
      
      "Worker-1" prio=10 tid=0x00007fa00c006800 nid=0x6c0f sleeping[0x00007fa0785b8000]
         java.lang.Thread.State: TIMED_WAITING (sleeping)
      	at java.lang.Thread.sleep(Native Method)
      	at org.eclipse.ui.internal.decorators.DecorationScheduler$1.run(DecorationScheduler.java:301)
      	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
      
      "Java indexing" daemon prio=10 tid=0x00007fa07c707800 nid=0x6c06 waiting for monitor entry [0x00007fa00b889000]
         java.lang.Thread.State: BLOCKED (on object monitor)
      	at org.eclipse.jdt.internal.core.search.indexing.IndexManager.saveIndex(IndexManager.java:777)
      	- waiting to lock <0x00000000c133d040> (a org.eclipse.jdt.internal.core.search.indexing.IndexManager)
      	at org.eclipse.jdt.internal.core.search.indexing.AddJarFileToIndex.execute(AddJarFileToIndex.java:180)
      	at org.eclipse.jdt.internal.core.search.processing.JobManager.run(JobManager.java:405)
      	at java.lang.Thread.run(Thread.java:662)
      
      "Worker-JM" prio=10 tid=0x00007fa024131000 nid=0x6c02 in Object.wait() [0x00007fa0781fd000]
         java.lang.Thread.State: WAITING (on object monitor)
      	at java.lang.Object.wait(Native Method)
      	- waiting on <0x00000000c17fb130> (a java.util.ArrayList)
      	at org.eclipse.core.internal.jobs.InternalWorker.run(InternalWorker.java:58)
      	- locked <0x00000000c17fb130> (a java.util.ArrayList)
      
      "[Timer] - Main Queue Handler" daemon prio=10 tid=0x00007fa02407a800 nid=0x6c01 in Object.wait() [0x00007fa0782fe000]
         java.lang.Thread.State: TIMED_WAITING (on object monitor)
      	at java.lang.Object.wait(Native Method)
      	at org.eclipse.equinox.internal.util.impl.tpt.timer.TimerImpl.run(TimerImpl.java:141)
      	- locked <0x00000000c177a2d0> (a java.lang.Object)
      	at java.lang.Thread.run(Thread.java:662)
      
      "Bundle File Closer" daemon prio=10 tid=0x00007fa07c6ca000 nid=0x6bfe in Object.wait() [0x00007fa0787e0000]
         java.lang.Thread.State: WAITING (on object monitor)
      	at java.lang.Object.wait(Native Method)
      	- waiting on <0x00000000c177a390> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread)
      	at java.lang.Object.wait(Object.java:485)
      	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent(EventManager.java:400)
      	- locked <0x00000000c177a390> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread)
      	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:336)
      
      "Start Level Event Dispatcher" daemon prio=10 tid=0x00007fa07c10d800 nid=0x6bfd in Object.wait() [0x00007fa078af2000]
         java.lang.Thread.State: WAITING (on object monitor)
      	at java.lang.Object.wait(Native Method)
      	- waiting on <0x00000000c177a590> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread)
      	at java.lang.Object.wait(Object.java:485)
      	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent(EventManager.java:400)
      	- locked <0x00000000c177a590> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread)
      	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:336)
      
      "Framework Event Dispatcher" daemon prio=10 tid=0x00007fa07c241000 nid=0x6bfc in Object.wait() [0x00007fa078bf3000]
         java.lang.Thread.State: WAITING (on object monitor)
      	at java.lang.Object.wait(Native Method)
      	- waiting on <0x00000000c177b118> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread)
      	at java.lang.Object.wait(Object.java:485)
      	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent(EventManager.java:400)
      	- locked <0x00000000c177b118> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread)
      	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:336)
      
      "Framework Active Thread" prio=10 tid=0x00007fa07c22b800 nid=0x6bfa in Object.wait() [0x00007fa078df5000]
         java.lang.Thread.State: TIMED_WAITING (on object monitor)
      	at java.lang.Object.wait(Native Method)
      	at org.eclipse.osgi.framework.internal.core.Framework.run(Framework.java:1817)
      	- locked <0x00000000c0fbd460> (a org.eclipse.osgi.framework.internal.core.Framework)
      	at java.lang.Thread.run(Thread.java:662)
      
      "Low Memory Detector" daemon prio=10 tid=0x00007fa07c152800 nid=0x6bf8 runnable [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE
      
      "C2 CompilerThread1" daemon prio=10 tid=0x00007fa07c150000 nid=0x6bf7 waiting on condition [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE
      
      "C2 CompilerThread0" daemon prio=10 tid=0x00007fa07c0e2000 nid=0x6bf6 waiting on condition [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE
      
      "Signal Dispatcher" daemon prio=10 tid=0x00007fa07c0bb000 nid=0x6bf5 runnable [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE
      
      "Finalizer" daemon prio=10 tid=0x00007fa07c09e800 nid=0x6bf4 in Object.wait() [0x00007fa080a5e000]
         java.lang.Thread.State: WAITING (on object monitor)
      	at java.lang.Object.wait(Native Method)
      	- waiting on <0x00000000c18360a8> (a java.lang.ref.ReferenceQueue$Lock)
      	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118)
      	- locked <0x00000000c18360a8> (a java.lang.ref.ReferenceQueue$Lock)
      	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:134)
      	at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)
      
      "Reference Handler" daemon prio=10 tid=0x00007fa07c09d000 nid=0x6bf3 in Object.wait() [0x00007fa080b5f000]
         java.lang.Thread.State: WAITING (on object monitor)
      	at java.lang.Object.wait(Native Method)
      	- waiting on <0x00000000c1836068> (a java.lang.ref.Reference$Lock)
      	at java.lang.Object.wait(Object.java:485)
      	at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116)
      	- locked <0x00000000c1836068> (a java.lang.ref.Reference$Lock)
      
      "main" prio=10 tid=0x00007fa07c009800 nid=0x6be9 waiting on condition [0x00007fa083336000]
         java.lang.Thread.State: TIMED_WAITING (sleeping)
      	at java.lang.Thread.sleep(Native Method)
      	at org.eclipse.jdt.internal.core.search.processing.JobManager.discardJobs(JobManager.java:91)
      	at org.eclipse.jdt.internal.core.search.processing.JobManager.reset(JobManager.java:321)
      	- locked <0x00000000c133d040> (a org.eclipse.jdt.internal.core.search.indexing.IndexManager)
      	at org.eclipse.jdt.internal.core.search.indexing.IndexManager.reset(IndexManager.java:732)
      	- locked <0x00000000c133d040> (a org.eclipse.jdt.internal.core.search.indexing.IndexManager)
      	at org.eclipse.jdt.internal.core.JavaModelManager.startIndexing(JavaModelManager.java:4944)
      	at org.eclipse.jdt.internal.core.JavaModelManager.startup(JavaModelManager.java:4902)
      	at org.eclipse.jdt.core.JavaCore.start(JavaCore.java:5158)
      	at org.jboss.tools.ws.jaxrs.core.AbstractCommonTestCase.setupWorkspace(AbstractCommonTestCase.java:88)
      	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      	at java.lang.reflect.Method.invoke(Method.java:597)
      	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
      	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
      	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
      	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:27)
      	at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
      	at org.junit.runners.Suite.runChild(Suite.java:128)
      	at org.junit.runners.Suite.runChild(Suite.java:24)
      	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193)
      	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52)
      	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191)
      	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42)
      	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184)
      	at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
      	at org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:53)
      	at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:123)
      	at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:104)
      	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      	at java.lang.reflect.Method.invoke(Method.java:597)
      	at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:164)
      	at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:110)
      	at org.apache.maven.surefire.booter.SurefireStarter.invokeProvider(SurefireStarter.java:175)
      	at org.apache.maven.surefire.booter.SurefireStarter.runSuitesInProcess(SurefireStarter.java:123)
      	at org.eclipse.tycho.surefire.osgibooter.OsgiSurefireBooter.run(OsgiSurefireBooter.java:84)
      	at org.eclipse.tycho.surefire.osgibooter.AbstractUITestApplication$1.run(AbstractUITestApplication.java:35)
      	at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
      	at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:135)
      	- locked <0x00000000c1d39810> (a org.eclipse.swt.widgets.RunnableLock)
      	at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3563)
      	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3212)
      	at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2701)
      	at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2665)
      	at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2499)
      	at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:679)
      	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
      	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:668)
      	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
      	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:123)
      	at org.eclipse.tycho.surefire.osgibooter.UITestApplication.runApplication(UITestApplication.java:31)
      	at org.eclipse.tycho.surefire.osgibooter.AbstractUITestApplication.run(AbstractUITestApplication.java:114)
      	at org.eclipse.tycho.surefire.osgibooter.UITestApplication.start(UITestApplication.java:37)
      	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
      	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
      	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
      	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:344)
      	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
      	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      	at java.lang.reflect.Method.invoke(Method.java:597)
      	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622)
      	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
      	at org.eclipse.equinox.launcher.Main.run(Main.java:1410)
      	at org.eclipse.equinox.launcher.Main.main(Main.java:1386)
      
      "VM Thread" prio=10 tid=0x00007fa07c096000 nid=0x6bf2 runnable 
      
      "GC task thread#0 (ParallelGC)" prio=10 tid=0x00007fa07c01c800 nid=0x6bea runnable 
      
      "GC task thread#1 (ParallelGC)" prio=10 tid=0x00007fa07c01e800 nid=0x6beb runnable 
      
      "GC task thread#2 (ParallelGC)" prio=10 tid=0x00007fa07c020000 nid=0x6bec runnable 
      
      "GC task thread#3 (ParallelGC)" prio=10 tid=0x00007fa07c022000 nid=0x6bed runnable 
      
      "GC task thread#4 (ParallelGC)" prio=10 tid=0x00007fa07c024000 nid=0x6bee runnable 
      
      "GC task thread#5 (ParallelGC)" prio=10 tid=0x00007fa07c025800 nid=0x6bef runnable 
      
      "GC task thread#6 (ParallelGC)" prio=10 tid=0x00007fa07c027800 nid=0x6bf0 runnable 
      
      "GC task thread#7 (ParallelGC)" prio=10 tid=0x00007fa07c029000 nid=0x6bf1 runnable 
      
      "VM Periodic Task Thread" prio=10 tid=0x00007fa07c155000 nid=0x6bf9 waiting on condition 
      
      JNI global references: 2441
      

            vrubezhny Victor Rubezhny (Inactive)
            nivologd@gmail.com Denis Golovin (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: