[jbosstools-issues] [JBoss JIRA] (JBIDE-11929) Project examples freezes during quickfix dialog

Rob Stryker (JIRA) jira-events at lists.jboss.org
Wed May 23 04:30:17 EDT 2012


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

Rob Stryker commented on JBIDE-11929:
-------------------------------------

It seems that the workspace job in the marker dialog schedules another workspace job, and joins on it. Clearly the waitForBuildAndValidation job cannot start until the workspace job in MarkerDialog finishes, but the workspace job in MarkerDialog is now waiting for waitForBuildAndValidation to begin.  Classic deadlock. 

The UI is responsive, however, attempts to cancel the progress monitor do nothing and the workspace stays in an unusable state. 
                
> Project examples freezes during quickfix dialog
> -----------------------------------------------
>
>                 Key: JBIDE-11929
>                 URL: https://issues.jboss.org/browse/JBIDE-11929
>             Project: Tools (JBoss Tools)
>          Issue Type: Bug
>          Components: project-examples
>    Affects Versions: 3.3.0.CR1
>            Reporter: Rob Stryker
>            Assignee: Snjezana Peco
>            Priority: Blocker
>             Fix For: 3.3.0.CR1
>
>         Attachments: jbide-11929.b.trace, JBIDE-11929.jstack
>
>
> When importing the dvd seam example project, a list of quickfixes was shown. After trying to fix each one, the UI would freeze for 15-30 seconds. A Jstack revealed the following:
> {code}
> "main" prio=10 tid=0x00007f35b8009800 nid=0x26e1 in Object.wait() [0x00007f35bd93c000]
>    java.lang.Thread.State: TIMED_WAITING (on object monitor)
>         at java.lang.Object.wait(Native Method)
>         - waiting on <0x00000000fe463e08> (a org.eclipse.core.internal.jobs.Semaphore)
>         at org.eclipse.core.internal.jobs.Semaphore.acquire(Semaphore.java:39)
>         - locked <0x00000000fe463e08> (a org.eclipse.core.internal.jobs.Semaphore)
>         at org.eclipse.core.internal.jobs.JobManager.join(JobManager.java:847)
>         at org.eclipse.core.internal.jobs.InternalJob.join(InternalJob.java:380)
>         at org.eclipse.core.runtime.jobs.Job.join(Job.java:385)
>         at org.jboss.tools.project.examples.dialog.MarkerDialog.okPressed(MarkerDialog.java:237)
> {code}
> Clearly the UI thread is waiting on a newly scheduled background job, which causes the freeze. The lines in this stacktrace match with lines in trunk. The offending lines of code seem to be this:
> {code}
> 	ProjectExamplesActivator.waitForBuildAndValidation.schedule();
> 	ProjectExamplesActivator.waitForBuildAndValidation.join();
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the jbosstools-issues mailing list