Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 317649

Summary: cancel jobs on shutdown to prevent device is disposed exceptions
Product: z_Archived Reporter: Steffen Pingel <steffen.pingel>
Component: MylynAssignee: Mylyn Inbox <mylyn-inbox>
Status: RESOLVED WONTFIX QA Contact:
Severity: minor    
Priority: P2    
Version: 3.4   
Target Milestone: ---   
Hardware: PC   
OS: Linux   
Whiteboard:

Description Steffen Pingel CLA 2010-06-22 21:47:49 EDT
A synchronization may have been in progress during shutdown.

-- Error Details --
Date: Tue Jun 22 18:32:58 PDT 2010
Message: Notification failed for: org.eclipse.mylyn.internal.tasks.ui.views.TaskListView$4@1e18e02
Severity: Error
Product: Eclipse SDK 3.6.0.v201006080911 (org.eclipse.sdk.ide)
Plugin: org.eclipse.mylyn.tasks.core
Session Data:
eclipse.buildId=I20100608-0911
java.version=1.6.0_20
java.vendor=Sun Microsystems Inc.
BootLoader constants: OS=linux, ARCH=x86, WS=gtk, NL=en_CA


Exception Stack Trace:
org.eclipse.swt.SWTException: Device is disposed
at org.eclipse.swt.SWT.error(SWT.java:4083)
at org.eclipse.swt.SWT.error(SWT.java:3998)
at org.eclipse.swt.SWT.error(SWT.java:3969)
at org.eclipse.swt.widgets.Display.error(Display.java:1204)
at org.eclipse.swt.widgets.Display.asyncExec(Display.java:713)
at org.eclipse.mylyn.internal.tasks.ui.views.TaskListView$4.containersChanged(TaskListView.java:479)
at org.eclipse.mylyn.internal.tasks.core.TaskList.fireDelta(TaskList.java:260)
at org.eclipse.mylyn.internal.tasks.core.TaskList.unlock(TaskList.java:708)
at org.eclipse.mylyn.internal.tasks.core.TaskList.addTask(TaskList.java:186)
at org.eclipse.mylyn.internal.tasks.core.sync.SynchronizeQueriesJob$TaskCollector.accept(SynchronizeQueriesJob.java:94)
at org.eclipse.mylyn.internal.bugzilla.core.SaxBugzillaQueryContentHandler.endElement(SaxBugzillaQueryContentHandler.java:86)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:601)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1782)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2938)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:648)
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:511)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:808)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:119)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205)
at org.eclipse.mylyn.internal.bugzilla.core.AbstractReportFactory.collectResults(AbstractReportFactory.java:123)
at org.eclipse.mylyn.internal.bugzilla.core.RepositoryQueryResultsFactory.performQuery(RepositoryQueryResultsFactory.java:39)
at org.eclipse.mylyn.internal.bugzilla.core.BugzillaClient.getSearchHits(BugzillaClient.java:555)
at org.eclipse.mylyn.internal.bugzilla.core.BugzillaRepositoryConnector.performQuery(BugzillaRepositoryConnector.java:380)
at org.eclipse.mylyn.internal.tasks.core.sync.SynchronizeQueriesJob.synchronizeQuery(SynchronizeQueriesJob.java:311)
at org.eclipse.mylyn.internal.tasks.core.sync.SynchronizeQueriesJob.synchronizeQueries(SynchronizeQueriesJob.java:268)
at org.eclipse.mylyn.internal.tasks.core.sync.SynchronizeQueriesJob.run(SynchronizeQueriesJob.java:201)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
Comment 1 Steffen Pingel CLA 2010-09-01 20:46:04 EDT
We should look into how we can better track jobs to ensure that they are cancelled on shutdown but this exception should not happen unless the view is not properly disposed which is probably what happened in this case.