[
https://issues.jboss.org/browse/JBIDE-18506?page=com.atlassian.jira.plugi...
]
Alexey Kazakov commented on JBIDE-18506:
----------------------------------------
OK. It's clear now what causes this lock. When some plugin which register a usage
event type in its startup method (it's a recommended way) it's invoking this
syncExec() in Usage. If in the same time Eclipse UI invokes the usage tread (asyncExec())
from the earlyStartup method then we can get a deadlock in the synchronized
JBossToolsUsageActivator.getDefault().getJBossToolsEclipseEnvironment() method.
I still can't reproduce it but Snjezana's stacktrace is enough to see the
problem.
I modified the original Snjezana's PR to make sure the updated screen settings are
available in all threads:
https://github.com/jbosstools/jbosstools-base/pull/328
Usage plugin sometimes locks JBT/JBDS
-------------------------------------
Key: JBIDE-18506
URL:
https://issues.jboss.org/browse/JBIDE-18506
Project: Tools (JBoss Tools)
Issue Type: Bug
Components: usage
Affects Versions: 4.2.0.CR1
Reporter: Snjezana Peco
Assignee: Alexey Kazakov
Fix For: 4.2.0.CR2
Attachments: usagestacktrace.out
JBossToolsUsageActivator initializes settings when starting and calls
AbstractEclipseEnvironment.initScreenSettings()
that uses the Display.syncExec method
which causes JBT/JBDS to freeze. The issue isn't always reproducible, but it often
happens when starting JBDS/JBT in a new workspace.
While I was testing JBIDE-16379, I reproduced it each time when I started Eclipse
4.4.1/JBT 4.2.0.CR1 in a new workspace.
--
This message was sent by Atlassian JIRA
(v6.3.1#6329)