[jbosstools-issues] [JBoss JIRA] Issue Comment Edited: (JBIDE-9802) Deadlock when open JBT with existing projects

Alexey Kazakov (JIRA) jira-events at lists.jboss.org
Mon Oct 3 12:44:26 EDT 2011


    [ https://issues.jboss.org/browse/JBIDE-9802?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12631638#comment-12631638 ] 

Alexey Kazakov edited comment on JBIDE-9802 at 10/3/11 12:43 PM:
-----------------------------------------------------------------

First at all, I think that FacetedProjectFrameworkImpl initialization is very unsafe. I would create an issue at Eclipse Bugzilla without  big hope of fixing that issue ;)
FacetedProjectFrameworkImpl is singleton and initialized in private constructor via a static synchronized method. The problem is that this constructor does too many things and it's very unsafe to do it in a synchronized method. There is a big possibility of getting a recursive invocation of this synchronized method.
Another issue is using Faceted Project Framework in plugin start methods. Start methods should be short and quick and they should not depend on complicated stuff such as Faceted Project Framework.
So I would avoid using Faceted Project Framework in JBossServerCorePlugin.start() and ESBProjectCorePlugin.start().
For JBossServerCorePlugin, adding a listener to FacetedProjectFramework may be a solution. See [^JBossServerCorePlugin.java.patch]
But for ESBProjectCorePlugin.start() I'm not sure. Do you really need to invoke VirtualReferenceUtilities.INSTANCE.addDefaultExtension() there?

      was (Author: akazakov):
    First at all, I think that FacetedProjectFrameworkImpl initialization is very unsafe. I would create an issue at Eclipse Bugzilla without  big hope of fixing that issue ;)
FacetedProjectFrameworkImpl is singleton and initialized in private constructor via a static synchronized method. The problem is that this constructor does too many things and it's very unsafe to do it in a synchronized method. There is a big possibility of getting a recursive invocation of this synchronized method.
Another issue is using Faceted Project Framework in plugin start methods. Start methods should be short and quick and they should not depends on complicated stuff such as Faceted Project Framework.
So I would avoid using Faceted Project Framework in JBossServerCorePlugin.start() and ESBProjectCorePlugin.start().
For JBossServerCorePlugin, adding a listener to FacetedProjectFramework may be a solution. See [^JBossServerCorePlugin.java.patch]
But for ESBProjectCorePlugin.start() I'm not sure. Do you really need to invoke VirtualReferenceUtilities.INSTANCE.addDefaultExtension() there?
  
> Deadlock when open JBT with existing projects
> ---------------------------------------------
>
>                 Key: JBIDE-9802
>                 URL: https://issues.jboss.org/browse/JBIDE-9802
>             Project: Tools (JBoss Tools)
>          Issue Type: Bug
>          Components: esb, JBossAS/Servers, UpStream
>    Affects Versions: 3.3.0.M3
>            Reporter: Alexey Kazakov
>            Assignee: Brian Fitzpatrick
>            Priority: Critical
>             Fix For: 3.3.0.M4
>
>         Attachments: JBossServerCorePlugin.java.patch
>
>
> {code}
> igels at igels-laptop:~$ jstack 25805
> 2011-09-29 17:44:48
> Full thread dump Java HotSpot(TM) Server VM (16.3-b01 mixed mode):
> "Attach Listener" daemon prio=10 tid=0x09e05400 nid=0x6969 runnable [0x00000000]
>    java.lang.Thread.State: RUNNABLE
> "Worker-9" prio=10 tid=0x51affc00 nid=0x678b in Object.wait() [0x50700000]
>    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 <0x73f55320> (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-7" prio=10 tid=0x52aed400 nid=0x66d8 in Object.wait() [0x4fdca000]
>    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 <0x73f55320> (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-4" prio=10 tid=0x0a100c00 nid=0x6506 in Object.wait() [0x4fe1b000]
>    java.lang.Thread.State: WAITING (on object monitor)
> 	at java.lang.Object.wait(Native Method)
> 	- waiting on <0xaa2baa58> (a java.lang.Object)
> 	at java.lang.Object.wait(Object.java:485)
> 	at org.eclipse.core.internal.jobs.ThreadJob.waitForRun(ThreadJob.java:272)
> 	- locked <0xaa2baa58> (a java.lang.Object)
> 	at org.eclipse.core.internal.jobs.ThreadJob.joinRun(ThreadJob.java:199)
> 	at org.eclipse.core.internal.jobs.ImplicitJobs.begin(ImplicitJobs.java:92)
> 	at org.eclipse.core.internal.jobs.JobManager.beginRule(JobManager.java:286)
> 	at org.eclipse.core.internal.utils.StringPoolJob.run(StringPoolJob.java:101)
> 	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
> "Worker-3" prio=10 tid=0x097ff800 nid=0x6505 waiting for monitor entry [0x4ffc8000]
>    java.lang.Thread.State: BLOCKED (on object monitor)
> 	at org.eclipse.wst.common.project.facet.core.internal.FacetedProjectFrameworkImpl.getInstance(FacetedProjectFrameworkImpl.java:209)
> 	- waiting to lock <0x56830c98> (a java.lang.Class for org.eclipse.wst.common.project.facet.core.internal.FacetedProjectFrameworkImpl)
> 	at org.eclipse.wst.common.project.facet.core.ProjectFacetsManager.<clinit>(ProjectFacetsManager.java:37)
> 	at org.eclipse.jst.ws.jaxws.utils.facets.FacetUtils.getAllWorkspaceFacetedProjects(FacetUtils.java:127)
> 	at org.eclipse.jst.ws.jaxws.utils.facets.FacetUtils.isFacetedProject(FacetUtils.java:61)
> 	at org.eclipse.jst.ws.jaxws.utils.facets.FacetUtils.hasFacetWithVersion(FacetUtils.java:80)
> 	at org.eclipse.jst.ws.jaxws.dom.runtime.persistence.JaxWsWorkspaceResource.approveProject(JaxWsWorkspaceResource.java:190)
> 	at org.eclipse.jst.ws.jaxws.dom.runtime.persistence.JaxWsWorkspaceResource$2.approve(JaxWsWorkspaceResource.java:218)
> 	at org.eclipse.jst.ws.jaxws.dom.runtime.persistence.WorkspaceCUFinder.approve(WorkspaceCUFinder.java:105)
> 	at org.eclipse.jst.ws.jaxws.dom.runtime.persistence.WorkspaceCUFinder.assumeWork(WorkspaceCUFinder.java:72)
> 	at org.eclipse.jst.ws.jaxws.dom.runtime.persistence.WorkspaceCUFinder.find(WorkspaceCUFinder.java:45)
> 	at org.eclipse.jst.ws.jaxws.dom.runtime.persistence.sync.InitialModelSynchronizer.load(InitialModelSynchronizer.java:33)
> 	at org.eclipse.jst.ws.jaxws.dom.runtime.persistence.JaxWsWorkspaceResource$1.run(JaxWsWorkspaceResource.java:143)
> 	at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2344)
> 	at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2326)
> 	at org.eclipse.jst.ws.jaxws.dom.runtime.persistence.JaxWsWorkspaceResource.doLoad(JaxWsWorkspaceResource.java:153)
> 	at org.eclipse.jst.ws.jaxws.dom.runtime.persistence.NonStreamResource.load(NonStreamResource.java:85)
> 	at org.eclipse.jst.ws.jaxws.dom.runtime.persistence.Jee5WsDomRuntimeExtension.performLoad(Jee5WsDomRuntimeExtension.java:57)
> 	at org.eclipse.jst.ws.jaxws.dom.runtime.persistence.Jee5WsDomRuntimeExtension.createDOM(Jee5WsDomRuntimeExtension.java:44)
> 	at org.eclipse.jst.ws.jaxws.dom.runtime.api.WsDOMRuntimeManager.createDOMRuntime(WsDOMRuntimeManager.java:64)
> 	at org.eclipse.jst.ws.jaxws.dom.runtime.api.WsDOMRuntimeManager.createDOMRuntimes(WsDOMRuntimeManager.java:52)
> 	- locked <0xa82ebb38> (a org.eclipse.jst.ws.jaxws.dom.runtime.api.WsDOMRuntimeManager)
> 	at org.eclipse.jst.ws.jaxws.dom.runtime.WsDomStartupParticipant$1.run(WsDomStartupParticipant.java:42)
> 	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
> "Worker-2" prio=10 tid=0x51eae400 nid=0x6504 in Object.wait() [0x50019000]
>    java.lang.Thread.State: TIMED_WAITING (on object monitor)
> 	at java.lang.Object.wait(Native Method)
> 	at org.eclipse.ui.internal.Semaphore.acquire(Semaphore.java:43)
> 	- locked <0xaa86d528> (a org.eclipse.ui.internal.Semaphore)
> 	at org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java:168)
> 	at org.eclipse.swt.widgets.Display.syncExec(Display.java:4330)
> 	at org.eclipse.team.internal.ccvs.ui.CVSLightweightDecorator.ensureFontAndColorsCreated(CVSLightweightDecorator.java:88)
> 	at org.eclipse.team.internal.ccvs.ui.CVSLightweightDecorator.<init>(CVSLightweightDecorator.java:73)
> 	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
> 	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
> 	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
> 	at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
> 	at java.lang.Class.newInstance0(Class.java:355)
> 	at java.lang.Class.newInstance(Class.java:308)
> 	at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:184)
> 	at org.eclipse.core.internal.registry.ExtensionRegistry.createExecutableExtension(ExtensionRegistry.java:905)
> 	at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:243)
> 	at org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension(ConfigurationElementHandle.java:55)
> 	at org.eclipse.ui.internal.WorkbenchPlugin$1.run(WorkbenchPlugin.java:268)
> 	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:52)
> 	at org.eclipse.ui.internal.WorkbenchPlugin.createExtension(WorkbenchPlugin.java:264)
> 	at org.eclipse.ui.internal.decorators.LightweightDecoratorDefinition$1.run(LightweightDecoratorDefinition.java:124)
> 	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
> 	at org.eclipse.core.runtime.Platform.run(Platform.java:888)
> 	at org.eclipse.ui.internal.decorators.LightweightDecoratorDefinition.internalGetDecorator(LightweightDecoratorDefinition.java:120)
> 	at org.eclipse.ui.internal.decorators.LightweightDecoratorDefinition.decorate(LightweightDecoratorDefinition.java:251)
> 	at org.eclipse.ui.internal.decorators.LightweightDecoratorManager$LightweightRunnable.run(LightweightDecoratorManager.java:81)
> 	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
> 	at org.eclipse.ui.internal.decorators.LightweightDecoratorManager.decorate(LightweightDecoratorManager.java:365)
> 	at org.eclipse.ui.internal.decorators.LightweightDecoratorManager.getDecorations(LightweightDecoratorManager.java:347)
> 	at org.eclipse.ui.internal.decorators.DecorationScheduler$1.ensureResultCached(DecorationScheduler.java:370)
> 	at org.eclipse.ui.internal.decorators.DecorationScheduler$1.run(DecorationScheduler.java:330)
> 	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
> "Worker-1" prio=10 tid=0x5258c800 nid=0x6503 in Object.wait() [0x50637000]
>    java.lang.Thread.State: RUNNABLE
> 	at org.eclipse.wst.common.componentcore.internal.util.VirtualReferenceUtilities.addDefaultExtension(VirtualReferenceUtilities.java:44)
> 	at org.jboss.tools.esb.core.ESBProjectCorePlugin.start(ESBProjectCorePlugin.java:47)
> 	at org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:711)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:702)
> 	at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:683)
> 	at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:381)
> 	at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:299)
> 	at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:440)
> 	at org.eclipse.osgi.internal.loader.BundleLoader.setLazyTrigger(BundleLoader.java:268)
> 	at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:107)
> 	at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:462)
> 	at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:216)
> 	at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:400)
> 	at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:476)
> 	at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:429)
> 	at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:417)
> 	at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
> 	at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
> 	at org.eclipse.osgi.internal.loader.BundleLoader.loadClass(BundleLoader.java:345)
> 	at org.eclipse.osgi.framework.internal.core.BundleHost.loadClass(BundleHost.java:229)
> 	at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadClass(AbstractBundle.java:1207)
> 	at org.eclipse.wst.common.project.facet.core.util.internal.Versionable.getVersionComparator(Versionable.java:153)
> 	at org.eclipse.wst.common.project.facet.core.internal.FacetedProjectFrameworkImpl.calculateVersionComparisonTables(FacetedProjectFrameworkImpl.java:1658)
> 	at org.eclipse.wst.common.project.facet.core.internal.FacetedProjectFrameworkImpl.readMetadata(FacetedProjectFrameworkImpl.java:1386)
> 	at org.eclipse.wst.common.project.facet.core.internal.FacetedProjectFrameworkImpl.<init>(FacetedProjectFrameworkImpl.java:188)
> 	at org.eclipse.wst.common.project.facet.core.internal.FacetedProjectFrameworkImpl.getInstance(FacetedProjectFrameworkImpl.java:211)
> 	- locked <0x56830c98> (a java.lang.Class for org.eclipse.wst.common.project.facet.core.internal.FacetedProjectFrameworkImpl)
> 	at org.eclipse.wst.common.project.facet.core.FacetedProjectFramework.initialize(FacetedProjectFramework.java:281)
> 	- locked <0x561f4d78> (a java.lang.Class for org.eclipse.wst.common.project.facet.core.FacetedProjectFramework)
> 	at org.eclipse.wst.common.project.facet.core.FacetedProjectFramework.addListener(FacetedProjectFramework.java:223)
> 	at org.jboss.ide.eclipse.as.core.JBossServerCorePlugin.start(JBossServerCorePlugin.java:70)
> 	at org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:711)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:702)
> 	at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:683)
> 	at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:381)
> 	at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:299)
> 	at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:440)
> 	at org.eclipse.osgi.internal.loader.BundleLoader.setLazyTrigger(BundleLoader.java:268)
> 	at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:107)
> 	at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:462)
> 	at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:216)
> 	at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:400)
> 	at org.eclipse.osgi.internal.loader.SingleSourcePackage.loadClass(SingleSourcePackage.java:35)
> 	at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:473)
> 	at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:429)
> 	at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:417)
> 	at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
> 	at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
> 	at java.lang.Class.getDeclaredConstructors0(Native Method)
> 	at java.lang.Class.privateGetDeclaredConstructors(Class.java:2389)
> 	at java.lang.Class.getConstructor0(Class.java:2699)
> 	at java.lang.Class.newInstance0(Class.java:326)
> 	at java.lang.Class.newInstance(Class.java:308)
> 	at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadBundleActivator(AbstractBundle.java:166)
> 	at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:679)
> 	at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:381)
> 	at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:299)
> 	at org.eclipse.core.internal.runtime.InternalPlatform.start(InternalPlatform.java:923)
> 	at org.eclipse.core.internal.plugins.PluginDescriptor.doPluginActivation(PluginDescriptor.java:360)
> 	- locked <0xaa3ac8b8> (a org.eclipse.core.internal.plugins.PluginDescriptor)
> 	at org.eclipse.core.internal.plugins.PluginDescriptor.getPlugin(PluginDescriptor.java:340)
> 	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.ui.internal.EarlyStartupRunnable.getPluginForCompatibility(EarlyStartupRunnable.java:149)
> 	at org.eclipse.ui.internal.EarlyStartupRunnable.getExecutableExtension(EarlyStartupRunnable.java:113)
> 	at org.eclipse.ui.internal.EarlyStartupRunnable.run(EarlyStartupRunnable.java:66)
> 	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
> 	at org.eclipse.ui.internal.Workbench$63.run(Workbench.java:2465)
> 	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
> "org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=10 tid=0x0a1c4400 nid=0x6500 in Object.wait() [0x5008d000]
>    java.lang.Thread.State: TIMED_WAITING (on object monitor)
> 	at java.lang.Object.wait(Native Method)
> 	at org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run(AbstractReconciler.java:179)
> 	- locked <0xa3585718> (a org.eclipse.jface.text.reconciler.DirtyRegionQueue)
> "Java indexing" daemon prio=10 tid=0x5259fc00 nid=0x64ff in Object.wait() [0x503bc000]
>    java.lang.Thread.State: WAITING (on object monitor)
> 	at java.lang.Object.wait(Native Method)
> 	- waiting on <0x9f76dc20> (a org.eclipse.jdt.internal.core.search.indexing.IndexManager)
> 	at java.lang.Object.wait(Object.java:485)
> 	at org.eclipse.jdt.internal.core.search.processing.JobManager.run(JobManager.java:382)
> 	- locked <0x9f76dc20> (a org.eclipse.jdt.internal.core.search.indexing.IndexManager)
> 	at java.lang.Thread.run(Thread.java:619)
> "Worker-JM" prio=10 tid=0x09742c00 nid=0x64f2 in Object.wait() [0x519ad000]
>    java.lang.Thread.State: TIMED_WAITING (on object monitor)
> 	at java.lang.Object.wait(Native Method)
> 	at org.eclipse.core.internal.jobs.InternalWorker.run(InternalWorker.java:58)
> 	- locked <0x73f55380> (a java.util.ArrayList)
> "[ThreadPool Manager] - Idle Thread" daemon prio=10 tid=0x520fe400 nid=0x64f1 in Object.wait() [0x51c5c000]
>    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 <0x73f384f0> (a org.eclipse.equinox.internal.util.impl.tpt.threadpool.Executor)
> "[Timer] - Main Queue Handler" daemon prio=10 tid=0x09780c00 nid=0x64ed in Object.wait() [0x519fe000]
>    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 <0x73f48c70> (a java.lang.Object)
> 	at java.lang.Thread.run(Thread.java:619)
> "Framework Event Dispatcher" daemon prio=10 tid=0x514f8400 nid=0x64ea in Object.wait() [0x51cad000]
>    java.lang.Thread.State: WAITING (on object monitor)
> 	at java.lang.Object.wait(Native Method)
> 	- waiting on <0x73f38410> (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 <0x73f38410> (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=0x521e0000 nid=0x64e8 in Object.wait() [0x522b7000]
>    java.lang.Thread.State: WAITING (on object monitor)
> 	at java.lang.Object.wait(Native Method)
> 	- waiting on <0x73f38640> (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 <0x73f38640> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread)
> 	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:336)
> "Bundle File Closer" daemon prio=10 tid=0x51e97c00 nid=0x64e7 in Object.wait() [0x51f94000]
>    java.lang.Thread.State: WAITING (on object monitor)
> 	at java.lang.Object.wait(Native Method)
> 	- waiting on <0x73f38728> (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 <0x73f38728> (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=0x52ac3800 nid=0x64e6 in Object.wait() [0x528ab000]
>    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:1816)
> 	- locked <0xaf8b8c08> (a org.eclipse.osgi.framework.internal.core.Framework)
> 	at java.lang.Thread.run(Thread.java:619)
> "Low Memory Detector" daemon prio=10 tid=0x52a02400 nid=0x64e4 runnable [0x00000000]
>    java.lang.Thread.State: RUNNABLE
> "CompilerThread1" daemon prio=10 tid=0x52a00800 nid=0x64e3 waiting on condition [0x00000000]
>    java.lang.Thread.State: RUNNABLE
> "CompilerThread0" daemon prio=10 tid=0x09358800 nid=0x64e2 waiting on condition [0x00000000]
>    java.lang.Thread.State: RUNNABLE
> "JDWP Command Reader" daemon prio=10 tid=0x0934b800 nid=0x64e0 runnable [0x00000000]
>    java.lang.Thread.State: RUNNABLE
> "JDWP Event Helper Thread" daemon prio=10 tid=0x09349c00 nid=0x64df runnable [0x00000000]
>    java.lang.Thread.State: RUNNABLE
> "JDWP Transport Listener: dt_socket" daemon prio=10 tid=0x09347400 nid=0x64dc runnable [0x00000000]
>    java.lang.Thread.State: RUNNABLE
> "Signal Dispatcher" daemon prio=10 tid=0x0933f800 nid=0x64da runnable [0x00000000]
>    java.lang.Thread.State: RUNNABLE
> "Finalizer" daemon prio=10 tid=0x0932c400 nid=0x64d8 in Object.wait() [0x52d4a000]
>    java.lang.Thread.State: WAITING (on object monitor)
> 	at java.lang.Object.wait(Native Method)
> 	- waiting on <0xaf83cad8> (a java.lang.ref.ReferenceQueue$Lock)
> 	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118)
> 	- locked <0xaf83cad8> (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=0x0932ac00 nid=0x64d7 in Object.wait() [0x52d9b000]
>    java.lang.Thread.State: WAITING (on object monitor)
> 	at java.lang.Object.wait(Native Method)
> 	- waiting on <0xaf83ca90> (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 <0xaf83ca90> (a java.lang.ref.Reference$Lock)
> "main" prio=10 tid=0x092ad400 nid=0x64d3 in Object.wait() [0xb6a19000]
>    java.lang.Thread.State: RUNNABLE
> 	at org.eclipse.wst.common.componentcore.internal.util.ComponentImplManager.findFactoryForProject(ComponentImplManager.java:130)
> 	at org.eclipse.wst.common.componentcore.internal.util.ComponentImplManager.createComponent(ComponentImplManager.java:213)
> 	at org.eclipse.wst.common.componentcore.internal.util.ComponentImplManager.createComponent(ComponentImplManager.java:203)
> 	at org.eclipse.wst.common.componentcore.ComponentCore.createComponent(ComponentCore.java:64)
> 	at org.jboss.tools.common.model.project.ProjectHome.getLocation(ProjectHome.java:86)
> 	at org.jboss.tools.common.model.project.ModelNature.createProject(ModelNature.java:108)
> 	at org.jboss.tools.common.model.project.ModelNature.setProject(ModelNature.java:64)
> 	at org.eclipse.core.internal.resources.NatureManager.createNature(NatureManager.java:234)
> 	at org.eclipse.core.internal.resources.Project.getNature(Project.java:448)
> 	at org.jboss.tools.common.model.util.EclipseResourceUtil.getModelNature(EclipseResourceUtil.java:264)
> 	at org.jboss.tools.common.model.util.EclipseResourceUtil.getObjectByResource(EclipseResourceUtil.java:126)
> 	at org.jboss.tools.common.core.resources.XModelObjectEditorInputFactory.createElement(XModelObjectEditorInputFactory.java:46)
> 	at org.eclipse.ui.internal.EditorReference.getRestoredInput(EditorReference.java:402)
> 	at org.eclipse.ui.internal.EditorReference.getEditorInput(EditorReference.java:365)
> 	at org.jboss.tools.common.core.resources.MatchingStrategyImpl.matches(MatchingStrategyImpl.java:24)
> 	at org.eclipse.ui.internal.EditorManager.findEditors(EditorManager.java:510)
> 	at org.eclipse.ui.internal.EditorManager.findEditors(EditorManager.java:457)
> 	at org.eclipse.ui.internal.EditorManager.findEditor(EditorManager.java:420)
> 	at org.eclipse.ui.internal.EditorManager.findEditor(EditorManager.java:402)
> 	at org.eclipse.ui.internal.WorkbenchPage.findEditor(WorkbenchPage.java:2178)
> 	at org.eclipse.ui.NavigationLocation.getEditorPart(NavigationLocation.java:44)
> 	at org.eclipse.ui.NavigationLocation.getText(NavigationLocation.java:60)
> 	at org.eclipse.ui.internal.NavigationHistoryEntry.<init>(NavigationHistoryEntry.java:49)
> 	at org.eclipse.ui.internal.NavigationHistory.createEntry(NavigationHistory.java:657)
> 	at org.eclipse.ui.internal.NavigationHistory.addEntry(NavigationHistory.java:374)
> 	at org.eclipse.ui.internal.NavigationHistory.access$10(NavigationHistory.java:355)
> 	at org.eclipse.ui.internal.NavigationHistory$2.run(NavigationHistory.java:202)
> 	at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
> 	at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:135)
> 	- locked <0xa70805f0> (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:2696)
> 	at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2660)
> 	at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2494)
> 	at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:674)
> 	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
> 	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:667)
> 	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
> 	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:123)
> 	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=0x09328000 nid=0x64d6 runnable 
> "GC task thread#0 (ParallelGC)" prio=10 tid=0x092b4800 nid=0x64d4 runnable 
> "GC task thread#1 (ParallelGC)" prio=10 tid=0x092b5c00 nid=0x64d5 runnable 
> "VM Periodic Task Thread" prio=10 tid=0x52a04400 nid=0x64e5 waiting on condition 
> JNI global references: 13138
> {code}

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the jbosstools-issues mailing list