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

Max Rydahl Andersen (JIRA) jira-events at lists.jboss.org
Tue May 22 06:37:18 EDT 2012


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

Max Rydahl Andersen commented on JBIDE-11929:
---------------------------------------------

Snjezana - why do we block the UI to wait for the builder to finish ? A quickfix could cause a very long wait and if there is an error/bug in a builder it could lock up the whole UI.

Wouldn't this be better solved by having a progress monitor going like "Waiting for <xyz> to finish..." and provide a cancel button which would when pressed state "<xyz> is not yet finished, there might still be problems left to fix. Do you want to stop waiting and close the quickfix dialog anyway ?" and then provide a button to say Yes and close the dialog and let the user be able to fix other things while the builders wait. And if he says No it goes back to continue waiting for it.
                
> 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.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