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

Bug 311956

Summary: Eclipse will hang and never return when editing a Java or JSP file
Product: [Eclipse Project] JDT Reporter: Ryan Smith <rws>
Component: CoreAssignee: JDT-Core-Inbox <jdt-core-inbox>
Status: CLOSED WONTFIX QA Contact:
Severity: normal    
Priority: P3 CC: Olivier_Thomann
Version: 3.6Keywords: needinfo
Target Milestone: ---   
Hardware: Macintosh   
OS: Mac OS X - Carbon (unsup.)   
Whiteboard:

Description Ryan Smith CLA 2010-05-06 14:51:58 EDT
Build Identifier: 20090920-1017

Editing a Java or JSP file can sometimes cause Eclipse to hang. The process uses almost no processor or disk IO. It never returns and the process must be killed.

Here is a thread dump from a hung state:

Attaching to process ID 17876, please wait...
Debugger attached successfully.
Client compiler detected.
JVM version is 1.5.0_22-147
Deadlock Detection:

No deadlocks found.

Thread t@64259: (state = BLOCKED)
 - java.lang.Object.wait(long) @bci=0 (Interpreted frame)
 - org.eclipse.core.internal.jobs.ThreadJob.joinRun(org.eclipse.core.runtime.IProgressMonitor) @bci=268, line=187 (Interpreted frame)
 - org.eclipse.core.internal.jobs.ImplicitJobs.begin(org.eclipse.core.runtime.jobs.ISchedulingRule, org.eclipse.core.runtime.IProgressMonitor, boolean) @bci=207, line=87 (Compiled frame)
 - org.eclipse.core.internal.jobs.JobManager.beginRule(org.eclipse.core.runtime.jobs.ISchedulingRule, org.eclipse.core.runtime.IProgressMonitor) @bci=16, line=232 (Compiled frame)
 - org.eclipse.core.internal.utils.StringPoolJob.run(org.eclipse.core.runtime.IProgressMonitor) @bci=127, line=99 (Interpreted frame)
 - org.eclipse.core.internal.jobs.Worker.run() @bci=31, line=55 (Compiled frame)


Thread t@67331: (state = BLOCKED)
 - java.lang.Object.wait(long) @bci=0 (Compiled frame; information may be imprecise)
 - org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run() @bci=83, line=179 (Compiled frame)


Thread t@67587: (state = BLOCKED)
 - java.lang.Object.wait(long) @bci=0 (Compiled frame; information may be imprecise)
 - org.eclipse.core.internal.jobs.WorkerPool.sleep(long) @bci=52, line=185 (Compiled frame)
 - org.eclipse.core.internal.jobs.WorkerPool.startJob(org.eclipse.core.internal.jobs.Worker) @bci=77, line=217 (Compiled frame)
 - org.eclipse.core.internal.jobs.Worker.run() @bci=406, line=51 (Compiled frame)


Thread t@68611: (state = BLOCKED)
 - java.lang.Object.wait(long) @bci=0 (Compiled frame; information may be imprecise)
 - org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run() @bci=83, line=179 (Compiled frame)


Thread t@68867: (state = BLOCKED)
 - java.lang.Object.wait(long) @bci=0 (Compiled frame; information may be imprecise)
 - org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run() @bci=83, line=179 (Compiled frame)


Thread t@69123: (state = BLOCKED)
 - java.lang.Object.wait(long) @bci=0 (Compiled frame; information may be imprecise)
 - org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run() @bci=83, line=179 (Compiled frame)


Thread t@69379: (state = BLOCKED)
 - java.lang.Thread.sleep(long) @bci=0 (Compiled frame; information may be imprecise)
 - org.eclipse.jdt.internal.core.JavaModelManager.secondaryTypes(org.eclipse.jdt.core.IJavaProject, boolean, org.eclipse.core.runtime.IProgressMonitor) @bci=191, line=4197 (Compiled frame)
 - org.eclipse.jdt.internal.core.NameLookup.findSecondaryType(java.lang.String, java.lang.String, org.eclipse.jdt.core.IJavaProject, boolean, org.eclipse.core.runtime.IProgressMonitor) @bci=93, line=595 (Compiled frame)
 - org.eclipse.jdt.internal.core.NameLookup.findType(java.lang.String, java.lang.String, boolean, int, boolean, boolean, boolean, org.eclipse.core.runtime.IProgressMonitor) @bci=356, line=697 (Compiled frame)
 - org.eclipse.jdt.internal.core.NameLookup.findType(java.lang.String, boolean, int, boolean, boolean, boolean, org.eclipse.core.runtime.IProgressMonitor) @bci=65, line=816 (Compiled frame)
 - org.eclipse.jdt.internal.core.JavaProject.findType(java.lang.String, org.eclipse.jdt.internal.core.NameLookup, boolean, org.eclipse.core.runtime.IProgressMonitor) @bci=10, line=1199 (Compiled frame)
 - org.eclipse.jdt.internal.core.JavaProject.findType(java.lang.String, org.eclipse.jdt.internal.core.NameLookup, boolean, org.eclipse.core.runtime.IProgressMonitor) @bci=48, line=1211 (Compiled frame)
 - org.eclipse.jdt.internal.core.JavaProject.findType(java.lang.String, org.eclipse.jdt.internal.core.NameLookup, boolean, org.eclipse.core.runtime.IProgressMonitor) @bci=48, line=1211 (Compiled frame)
 - org.eclipse.jdt.internal.core.JavaProject.findType(java.lang.String, org.eclipse.jdt.internal.core.NameLookup, boolean, org.eclipse.core.runtime.IProgressMonitor) @bci=48, line=1211 (Compiled frame)
 - org.eclipse.jdt.internal.core.JavaProject.findType(java.lang.String, org.eclipse.jdt.internal.core.NameLookup, boolean, org.eclipse.core.runtime.IProgressMonitor) @bci=48, line=1211 (Compiled frame)
 - org.eclipse.jdt.internal.core.JavaProject.findType(java.lang.String, org.eclipse.jdt.internal.core.NameLookup, boolean, org.eclipse.core.runtime.IProgressMonitor) @bci=48, line=1211 (Compiled frame)
 - org.eclipse.jdt.internal.core.JavaProject.findType(java.lang.String, org.eclipse.jdt.core.WorkingCopyOwner, org.eclipse.core.runtime.IProgressMonitor) @bci=13, line=1288 (Compiled frame)
 - org.eclipse.jst.jsp.core.internal.taglib.TaglibHelper.getCustomTag(java.lang.String, org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument, org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionCollection, java.util.List) @bci=198, line=160 (Compiled frame)
 - org.eclipse.jst.jsp.core.internal.java.JSPTranslator.addTaglibVariables(java.lang.String, org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionCollection) @bci=72, line=817 (Compiled frame)
 - org.eclipse.jst.jsp.core.internal.java.JSPTranslator.translateXMLNode(org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionCollection, java.util.Iterator) @bci=79, line=1268 (Compiled frame)
 - org.eclipse.jst.jsp.core.internal.java.JSPTranslator.translateRegionContainer(org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionCollection, int) @bci=162, line=1186 (Compiled frame)
 - org.eclipse.jst.jsp.core.internal.java.JSPTranslator.translate() @bci=127, line=985 (Compiled frame)
 - org.eclipse.jst.jsp.core.internal.java.JSPTranslationAdapter.getJSPTranslation() @bci=55, line=127 (Interpreted frame)
 - org.eclipse.jst.jsp.core.internal.validation.JSPJavaValidator.performValidation(org.eclipse.core.resources.IFile, org.eclipse.wst.validation.internal.provisional.core.IReporter, org.eclipse.wst.sse.core.internal.provisional.IStructuredModel) @bci=113, line=298 (Interpreted frame)
 - org.eclipse.jst.jsp.core.internal.validation.JSPJavaValidator.validateFile(org.eclipse.core.resources.IFile, org.eclipse.wst.validation.internal.provisional.core.IReporter) @bci=126, line=395 (Interpreted frame)
 - org.eclipse.jst.jsp.core.internal.validation.JSPValidator.validate(org.eclipse.wst.validation.internal.provisional.core.IValidationContext, org.eclipse.wst.validation.internal.provisional.core.IReporter) @bci=112, line=196 (Interpreted frame)
 - org.eclipse.wst.sse.ui.internal.reconcile.validator.ReconcileStepForValidator.validate() @bci=70, line=292 (Interpreted frame)
 - org.eclipse.wst.sse.ui.internal.reconcile.validator.ReconcileStepForValidator.reconcileModel(org.eclipse.jface.text.reconciler.DirtyRegion, org.eclipse.jface.text.IRegion) @bci=76, line=258 (Interpreted frame)
 - org.eclipse.jface.text.reconciler.AbstractReconcileStep.reconcile(org.eclipse.jface.text.reconciler.DirtyRegion, org.eclipse.jface.text.IRegion) @bci=3, line=95 (Interpreted frame)
 - org.eclipse.wst.sse.ui.internal.reconcile.validator.ValidatorStrategy.reconcile(org.eclipse.jface.text.ITypedRegion, org.eclipse.jface.text.reconciler.DirtyRegion) @bci=412, line=257 (Interpreted frame)
 - org.eclipse.wst.sse.ui.internal.reconcile.DocumentRegionProcessor.process(org.eclipse.jface.text.reconciler.DirtyRegion) @bci=62, line=199 (Compiled frame)
 - org.eclipse.wst.sse.ui.internal.reconcile.StructuredRegionProcessor.process(org.eclipse.jface.text.reconciler.DirtyRegion) @bci=104, line=221 (Interpreted frame)
 - org.eclipse.wst.sse.ui.internal.reconcile.DirtyRegionProcessor.run(org.eclipse.core.runtime.IProgressMonitor) @bci=56, line=641 (Interpreted frame)
 - org.eclipse.core.internal.jobs.Worker.run() @bci=31, line=55 (Compiled frame)


Thread t@70147: (state = BLOCKED)
 - java.lang.Thread.sleep(long) @bci=0 (Compiled frame; information may be imprecise)
 - org.eclipse.jdt.internal.core.search.processing.JobManager$1$ProgressJob.run(org.eclipse.core.runtime.IProgressMonitor) @bci=65, line=354 (Compiled frame)
 - org.eclipse.core.internal.jobs.Worker.run() @bci=31, line=55 (Compiled frame)


Thread t@70403: (state = BLOCKED)
 - java.lang.Object.wait(long) @bci=0 (Interpreted frame)
 - java.lang.Object.wait() @bci=2, line=474 (Interpreted frame)
 - org.eclipse.wst.jsdt.internal.core.search.processing.JobManager.run() @bci=86, line=370 (Interpreted frame)
 - java.lang.Thread.run() @bci=11, line=613 (Interpreted frame)


Thread t@70915: (state = IN_NATIVE)


Thread t@71171: (state = BLOCKED)
 - java.lang.Object.wait(long) @bci=0 (Compiled frame; information may be imprecise)
 - java.lang.Object.wait() @bci=2, line=474 (Compiled frame)


Thread t@71427: (state = BLOCKED)
 - java.lang.Thread.sleep(long) @bci=0 (Compiled frame; information may be imprecise)
 - org.eclipse.jdt.internal.core.JavaModelManager.secondaryTypes(org.eclipse.jdt.core.IJavaProject, boolean, org.eclipse.core.runtime.IProgressMonitor) @bci=191, line=4197 (Compiled frame)
 - org.eclipse.jdt.internal.core.NameLookup.findSecondaryType(java.lang.String, java.lang.String, org.eclipse.jdt.core.IJavaProject, boolean, org.eclipse.core.runtime.IProgressMonitor) @bci=93, line=595 (Compiled frame)
 - org.eclipse.jdt.internal.core.NameLookup.findType(java.lang.String, java.lang.String, boolean, int, boolean, boolean, boolean, org.eclipse.core.runtime.IProgressMonitor) @bci=356, line=697 (Compiled frame)
 - org.eclipse.jdt.internal.core.NameLookup.findType(java.lang.String, boolean, int, boolean, boolean, boolean, org.eclipse.core.runtime.IProgressMonitor) @bci=65, line=816 (Compiled frame)
 - org.eclipse.jdt.internal.core.JavaProject.findType(java.lang.String, org.eclipse.jdt.internal.core.NameLookup, boolean, org.eclipse.core.runtime.IProgressMonitor) @bci=10, line=1199 (Compiled frame)
 - org.eclipse.jdt.internal.core.JavaProject.findType(java.lang.String, org.eclipse.jdt.internal.core.NameLookup, boolean, org.eclipse.core.runtime.IProgressMonitor) @bci=48, line=1211 (Compiled frame)
 - org.eclipse.jdt.internal.core.JavaProject.findType(java.lang.String, org.eclipse.jdt.internal.core.NameLookup, boolean, org.eclipse.core.runtime.IProgressMonitor) @bci=48, line=1211 (Compiled frame)
 - org.eclipse.jdt.internal.core.JavaProject.findType(java.lang.String, org.eclipse.jdt.internal.core.NameLookup, boolean, org.eclipse.core.runtime.IProgressMonitor) @bci=48, line=1211 (Compiled frame)
 - org.eclipse.jdt.internal.core.JavaProject.findType(java.lang.String, org.eclipse.jdt.internal.core.NameLookup, boolean, org.eclipse.core.runtime.IProgressMonitor) @bci=48, line=1211 (Compiled frame)
 - org.eclipse.jdt.internal.core.JavaProject.findType(java.lang.String, org.eclipse.jdt.internal.core.NameLookup, boolean, org.eclipse.core.runtime.IProgressMonitor) @bci=48, line=1211 (Compiled frame)
 - org.eclipse.jdt.internal.core.JavaProject.findType(java.lang.String, org.eclipse.jdt.core.WorkingCopyOwner, org.eclipse.core.runtime.IProgressMonitor) @bci=13, line=1288 (Compiled frame)
 - org.eclipse.jst.jsp.core.internal.taglib.TaglibHelper.getCustomTag(java.lang.String, org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocument, org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionCollection, java.util.List) @bci=198, line=160 (Compiled frame)
 - org.eclipse.jst.jsp.core.internal.java.JSPTranslator.addTaglibVariables(java.lang.String, org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionCollection) @bci=72, line=817 (Compiled frame)
 - org.eclipse.jst.jsp.core.internal.java.JSPTranslator.translateXMLNode(org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionCollection, java.util.Iterator) @bci=79, line=1268 (Compiled frame)
 - org.eclipse.jst.jsp.core.internal.java.JSPTranslator.translateRegionContainer(org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionCollection, int) @bci=162, line=1186 (Compiled frame)
 - org.eclipse.jst.jsp.core.internal.java.JSPTranslator.translate() @bci=127, line=985 (Compiled frame)
 - org.eclipse.jst.jsp.core.internal.java.JSPTranslationAdapter.getJSPTranslation() @bci=55, line=127 (Interpreted frame)
 - org.eclipse.jst.jsp.core.internal.java.search.JSPSearchDocument.getJSPTranslation() @bci=126, line=120 (Compiled frame)
 - org.eclipse.jst.jsp.core.internal.java.search.JSPSearchDocument.getCharContents() @bci=15, line=77 (Interpreted frame)
 - org.eclipse.jst.jsp.core.internal.java.search.JavaSearchDocumentDelegate.getCharContents() @bci=4, line=41 (Interpreted frame)
 - org.eclipse.jdt.internal.core.search.indexing.SourceIndexer.indexDocument() @bci=102, line=60 (Compiled frame)
 - org.eclipse.jdt.internal.core.search.JavaSearchParticipant.indexDocument(org.eclipse.jdt.core.search.SearchDocument, org.eclipse.core.runtime.IPath) @bci=24, line=72 (Compiled frame)
 - org.eclipse.jst.jsp.core.internal.java.search.JSPSearchParticipant.indexDocument(org.eclipse.jdt.core.search.SearchDocument, org.eclipse.core.runtime.IPath) @bci=13, line=72 (Interpreted frame)
 - org.eclipse.jdt.internal.core.search.indexing.IndexManager.indexDocument(org.eclipse.jdt.core.search.SearchDocument, org.eclipse.jdt.core.search.SearchParticipant, org.eclipse.jdt.internal.core.index.Index, org.eclipse.core.runtime.IPath) @bci=9, line=359 (Compiled frame)
 - org.eclipse.jdt.internal.core.search.indexing.IndexManager$1.execute(org.eclipse.core.runtime.IProgressMonitor) @bci=78, line=734 (Compiled frame)
 - org.eclipse.jdt.internal.core.search.processing.JobManager.run() @bci=240, line=404 (Interpreted frame)
 - java.lang.Thread.run() @bci=11, line=613 (Interpreted frame)


Thread t@71683: (state = BLOCKED)
 - java.lang.Object.wait(long) @bci=0 (Interpreted frame)
 - java.lang.Object.wait() @bci=2, line=474 (Interpreted frame)
 - org.eclipse.equinox.internal.util.impl.tpt.threadpool.Executor.run() @bci=328, line=106 (Interpreted frame)


Thread t@71939: (state = BLOCKED)
 - java.lang.Object.wait(long) @bci=0 (Interpreted frame)
 - java.lang.Object.wait() @bci=2, line=474 (Interpreted frame)
 - org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent() @bci=4, line=393 (Interpreted frame)
 - org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run() @bci=1, line=333 (Interpreted frame)


Thread t@72195: (state = BLOCKED)
 - java.lang.Object.wait(long) @bci=0 (Interpreted frame)
 - org.eclipse.equinox.internal.util.impl.tpt.timer.TimerImpl.run() @bci=506, line=141 (Interpreted frame)
 - java.lang.Thread.run() @bci=11, line=613 (Interpreted frame)


Thread t@72451: (state = BLOCKED)
 - java.lang.Object.wait(long) @bci=0 (Interpreted frame)
 - java.lang.Object.wait() @bci=2, line=474 (Interpreted frame)
 - org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent() @bci=4, line=393 (Interpreted frame)
 - org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run() @bci=1, line=333 (Interpreted frame)


Thread t@72707: (state = BLOCKED)
 - java.lang.Object.wait(long) @bci=0 (Interpreted frame)
 - java.lang.Object.wait() @bci=2, line=474 (Interpreted frame)
 - org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent() @bci=4, line=393 (Interpreted frame)
 - org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run() @bci=1, line=333 (Interpreted frame)


Thread t@72963: (state = BLOCKED)
 - java.lang.Thread.sleep(long) @bci=0 (Interpreted frame)
 - org.eclipse.osgi.internal.baseadaptor.StateManager.run() @bci=9, line=306 (Interpreted frame)
 - java.lang.Thread.run() @bci=11, line=613 (Interpreted frame)


Thread t@73219: (state = BLOCKED)


Thread t@73475: (state = BLOCKED)
 - java.lang.Object.wait(long) @bci=0 (Compiled frame; information may be imprecise)
 - java.lang.ref.ReferenceQueue.remove(long) @bci=44, line=120 (Compiled frame)
 - java.lang.ref.ReferenceQueue.remove() @bci=2, line=136 (Compiled frame)


Thread t@73731: (state = BLOCKED)
 - java.lang.Object.wait(long) @bci=0 (Compiled frame; information may be imprecise)
 - java.lang.Object.wait() @bci=2, line=474 (Compiled frame)


Thread t@73987: (state = BLOCKED)
 - java.lang.Thread.sleep(long) @bci=0 (Interpreted frame)
 - org.eclipse.jdt.internal.core.search.processing.JobManager.performConcurrentJob(org.eclipse.jdt.internal.core.search.processing.IJob, int, org.eclipse.core.runtime.IProgressMonitor) @bci=627, line=258 (Interpreted frame)
 - org.eclipse.jdt.internal.core.search.BasicSearchEngine.searchAllTypeNames(char[][], char[][], int, int, org.eclipse.jdt.core.search.IJavaSearchScope, org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor, int, org.eclipse.core.runtime.IProgressMonitor) @bci=460, line=1366 (Interpreted frame)
 - org.eclipse.jdt.core.search.SearchEngine.searchAllTypeNames(char[][], char[][], org.eclipse.jdt.core.search.IJavaSearchScope, org.eclipse.jdt.core.search.TypeNameMatchRequestor, int, org.eclipse.core.runtime.IProgressMonitor) @bci=28, line=912 (Interpreted frame)
 - org.eclipse.jdt.internal.corext.codemanipulation.OrganizeImportsOperation$TypeReferenceProcessor.process(org.eclipse.core.runtime.IProgressMonitor) @bci=139, line=245 (Interpreted frame)
 - org.eclipse.jdt.internal.corext.codemanipulation.OrganizeImportsOperation.createTextEdit(org.eclipse.core.runtime.IProgressMonitor) @bci=240, line=447 (Compiled frame)
 - org.eclipse.jdt.internal.corext.fix.ImportsFix.createCleanUp(org.eclipse.jdt.core.dom.CompilationUnit, org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings, boolean, org.eclipse.ltk.core.refactoring.RefactoringStatus) @bci=54, line=51 (Interpreted frame)
 - org.eclipse.jdt.internal.ui.fix.ImportsCleanUp.createFix(org.eclipse.jdt.ui.cleanup.CleanUpContext) @bci=26, line=63 (Interpreted frame)
 - org.eclipse.jdt.internal.corext.fix.CleanUpRefactoring.calculateChange(org.eclipse.jdt.ui.cleanup.CleanUpContext, org.eclipse.jdt.ui.cleanup.ICleanUp[], java.util.List, java.util.HashSet) @bci=31, line=792 (Compiled frame)
 - org.eclipse.jdt.internal.corext.fix.CleanUpPostSaveListener.saved(org.eclipse.jdt.core.ICompilationUnit, org.eclipse.jface.text.IRegion[], org.eclipse.core.runtime.IProgressMonitor) @bci=406, line=339 (Compiled frame)
 - org.eclipse.jdt.internal.ui.javaeditor.CompilationUnitDocumentProvider$5.run() @bci=39, line=1540 (Interpreted frame)
 - org.eclipse.core.runtime.SafeRunner.run(org.eclipse.core.runtime.ISafeRunnable) @bci=5, line=42 (Compiled frame)
 - org.eclipse.jdt.internal.ui.javaeditor.CompilationUnitDocumentProvider.notifyPostSaveListeners(org.eclipse.jdt.internal.ui.javaeditor.CompilationUnitDocumentProvider$CompilationUnitInfo, org.eclipse.jface.text.IRegion[], org.eclipse.jdt.internal.ui.javaeditor.saveparticipant.IPostSaveListener[], org.eclipse.core.runtime.IProgressMonitor) @bci=95, line=1535 (Interpreted frame)
 - org.eclipse.jdt.internal.ui.javaeditor.CompilationUnitDocumentProvider.commitWorkingCopy(org.eclipse.core.runtime.IProgressMonitor, java.lang.Object, org.eclipse.jdt.internal.ui.javaeditor.CompilationUnitDocumentProvider$CompilationUnitInfo, boolean) @bci=338, line=1332 (Interpreted frame)
 - org.eclipse.jdt.internal.ui.javaeditor.CompilationUnitDocumentProvider$4.execute(org.eclipse.core.runtime.IProgressMonitor) @bci=20, line=1401 (Interpreted frame)
 - org.eclipse.ui.editors.text.TextFileDocumentProvider$DocumentProviderOperation.run(org.eclipse.core.runtime.IProgressMonitor) @bci=2, line=132 (Interpreted frame)
 - org.eclipse.ui.actions.WorkspaceModifyDelegatingOperation.execute(org.eclipse.core.runtime.IProgressMonitor) @bci=5, line=69 (Interpreted frame)
 - org.eclipse.ui.actions.WorkspaceModifyOperation$1.run(org.eclipse.core.runtime.IProgressMonitor) @bci=5, line=106 (Interpreted frame)
 - org.eclipse.core.internal.resources.Workspace.run(org.eclipse.core.resources.IWorkspaceRunnable, org.eclipse.core.runtime.jobs.ISchedulingRule, int, org.eclipse.core.runtime.IProgressMonitor) @bci=80, line=1800 (Interpreted frame)
 - org.eclipse.ui.actions.WorkspaceModifyOperation.run(org.eclipse.core.runtime.IProgressMonitor) @bci=25, line=118 (Interpreted frame)
 - org.eclipse.ui.internal.editors.text.WorkspaceOperationRunner.run(org.eclipse.jface.operation.IRunnableWithProgress, org.eclipse.core.runtime.jobs.ISchedulingRule) @bci=15, line=75 (Interpreted frame)
 - org.eclipse.ui.internal.editors.text.WorkspaceOperationRunner.run(boolean, boolean, org.eclipse.jface.operation.IRunnableWithProgress) @bci=18, line=65 (Interpreted frame)
 - org.eclipse.ui.editors.text.TextFileDocumentProvider.executeOperation(org.eclipse.ui.editors.text.TextFileDocumentProvider$DocumentProviderOperation, org.eclipse.core.runtime.IProgressMonitor) @bci=14, line=456 (Interpreted frame)
 - org.eclipse.ui.editors.text.TextFileDocumentProvider.saveDocument(org.eclipse.core.runtime.IProgressMonitor, java.lang.Object, org.eclipse.jface.text.IDocument, boolean) @bci=24, line=772 (Interpreted frame)
 - org.eclipse.ui.texteditor.AbstractTextEditor.performSave(boolean, org.eclipse.core.runtime.IProgressMonitor) @bci=42, line=4945 (Interpreted frame)
 - org.eclipse.jdt.internal.ui.javaeditor.CompilationUnitEditor.performSave(boolean, org.eclipse.core.runtime.IProgressMonitor) @bci=32, line=1230 (Interpreted frame)
 - org.eclipse.jdt.internal.ui.javaeditor.CompilationUnitEditor.doSave(org.eclipse.core.runtime.IProgressMonitor) @bci=115, line=1283 (Interpreted frame)
 - org.eclipse.ui.texteditor.AbstractTextEditor$TextEditorSavable.doSave(org.eclipse.core.runtime.IProgressMonitor) @bci=5, line=7066 (Interpreted frame)
 - org.eclipse.ui.Saveable.doSave(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.jface.window.IShellProvider) @bci=2, line=214 (Interpreted frame)
 - org.eclipse.ui.internal.SaveableHelper.doSaveModel(org.eclipse.ui.Saveable, org.eclipse.core.runtime.IProgressMonitor, org.eclipse.jface.window.IShellProvider, boolean) @bci=70, line=346 (Interpreted frame)
 - org.eclipse.ui.internal.SaveableHelper$3.run(org.eclipse.core.runtime.IProgressMonitor) @bci=84, line=193 (Interpreted frame)
 - org.eclipse.ui.internal.SaveableHelper$5.run(org.eclipse.core.runtime.IProgressMonitor) @bci=5, line=274 (Interpreted frame)
 - org.eclipse.jface.operation.ModalContext.runInCurrentThread(org.eclipse.jface.operation.IRunnableWithProgress, org.eclipse.core.runtime.IProgressMonitor) @bci=6, line=464 (Interpreted frame)
 - org.eclipse.jface.operation.ModalContext.run(org.eclipse.jface.operation.IRunnableWithProgress, boolean, org.eclipse.core.runtime.IProgressMonitor, org.eclipse.swt.widgets.Display) @bci=48, line=372 (Interpreted frame)
 - org.eclipse.jface.window.ApplicationWindow$1.run() @bci=19, line=759 (Interpreted frame)
 - org.eclipse.swt.custom.BusyIndicator.showWhile(org.eclipse.swt.widgets.Display, java.lang.Runnable) @bci=116, line=70 (Compiled frame)
 - org.eclipse.jface.window.ApplicationWindow.run(boolean, boolean, org.eclipse.jface.operation.IRunnableWithProgress) @bci=302, line=756 (Compiled frame)
 - org.eclipse.ui.internal.WorkbenchWindow.run(boolean, boolean, org.eclipse.jface.operation.IRunnableWithProgress) @bci=170, line=2579 (Interpreted frame)
 - org.eclipse.ui.internal.SaveableHelper.runProgressMonitorOperation(java.lang.String, org.eclipse.jface.operation.IRunnableWithProgress, org.eclipse.jface.operation.IRunnableContext, org.eclipse.jface.window.IShellProvider) @bci=22, line=282 (Interpreted frame)
 - org.eclipse.ui.internal.SaveableHelper.runProgressMonitorOperation(java.lang.String, org.eclipse.jface.operation.IRunnableWithProgress, org.eclipse.ui.IWorkbenchWindow) @bci=4, line=261 (Interpreted frame)
 - org.eclipse.ui.internal.SaveableHelper.saveModels(org.eclipse.ui.ISaveablesSource, org.eclipse.ui.IWorkbenchWindow, boolean) @bci=83, line=204 (Interpreted frame)
 - org.eclipse.ui.internal.SaveableHelper.savePart(org.eclipse.ui.ISaveablePart, org.eclipse.ui.IWorkbenchPart, org.eclipse.ui.IWorkbenchWindow, boolean) @bci=176, line=144 (Interpreted frame)
 - org.eclipse.ui.internal.EditorManager.savePart(org.eclipse.ui.ISaveablePart, org.eclipse.ui.IWorkbenchPart, boolean) @bci=7, line=1357 (Interpreted frame)
 - org.eclipse.ui.internal.WorkbenchPage.savePart(org.eclipse.ui.ISaveablePart, org.eclipse.ui.IWorkbenchPart, boolean) @bci=7, line=3328 (Interpreted frame)
 - org.eclipse.ui.internal.WorkbenchPage.saveEditor(org.eclipse.ui.IEditorPart, boolean) @bci=4, line=3341 (Interpreted frame)
 - org.eclipse.ui.internal.SaveAction.run() @bci=69, line=76 (Interpreted frame)
 - org.eclipse.jface.action.Action.runWithEvent(org.eclipse.swt.widgets.Event) @bci=1, line=498 (Interpreted frame)
 - org.eclipse.ui.commands.ActionHandler.execute(java.util.Map) @bci=64, line=185 (Interpreted frame)
 - org.eclipse.ui.internal.handlers.LegacyHandlerWrapper.execute(org.eclipse.core.commands.ExecutionEvent) @bci=79, line=109 (Interpreted frame)
 - org.eclipse.core.commands.Command.executeWithChecks(org.eclipse.core.commands.ExecutionEvent) @bci=115, line=476 (Interpreted frame)
 - org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(java.lang.Object, java.lang.Object) @bci=21, line=508 (Interpreted frame)
 - org.eclipse.ui.internal.handlers.HandlerService.executeCommand(org.eclipse.core.commands.ParameterizedCommand, org.eclipse.swt.widgets.Event) @bci=6, line=169 (Interpreted frame)
 - org.eclipse.ui.internal.keys.WorkbenchKeyboard.executeCommand(org.eclipse.jface.bindings.Binding, org.eclipse.swt.widgets.Event) @bci=210, line=470 (Interpreted frame)
 - org.eclipse.ui.internal.keys.WorkbenchKeyboard.press(java.util.List, org.eclipse.swt.widgets.Event) @bci=313, line=824 (Compiled frame)
 - org.eclipse.ui.internal.keys.WorkbenchKeyboard.processKeyEvent(java.util.List, org.eclipse.swt.widgets.Event) @bci=14, line=880 (Interpreted frame)
 - org.eclipse.ui.internal.keys.WorkbenchKeyboard.filterKeySequenceBindings(org.eclipse.swt.widgets.Event) @bci=165, line=569 (Interpreted frame)
 - org.eclipse.ui.internal.keys.WorkbenchKeyboard.access$3(org.eclipse.ui.internal.keys.WorkbenchKeyboard, org.eclipse.swt.widgets.Event) @bci=2, line=510 (Interpreted frame)
 - org.eclipse.ui.internal.keys.WorkbenchKeyboard$KeyDownFilter.handleEvent(org.eclipse.swt.widgets.Event) @bci=177, line=125 (Interpreted frame)
 - org.eclipse.swt.widgets.EventTable.sendEvent(org.eclipse.swt.widgets.Event) @bci=214, line=84 (Compiled frame)
 - org.eclipse.swt.widgets.Display.filterEvent(org.eclipse.swt.widgets.Event) @bci=12, line=965 (Compiled frame)
 - org.eclipse.swt.widgets.Widget.sendEvent(org.eclipse.swt.widgets.Event) @bci=9, line=1250 (Compiled frame)
 - org.eclipse.swt.widgets.Widget.sendEvent(int, org.eclipse.swt.widgets.Event) @bci=4, line=1258 (Compiled frame)
 - org.eclipse.swt.widgets.Widget.sendKeyEvent(int, org.eclipse.swt.widgets.Event) @bci=3, line=1287 (Interpreted frame)
 - org.eclipse.swt.widgets.Widget.sendKeyEvent(org.eclipse.swt.internal.cocoa.NSEvent, int) @bci=35, line=1283 (Interpreted frame)
 - org.eclipse.swt.widgets.Canvas.sendKeyEvent(org.eclipse.swt.internal.cocoa.NSEvent, int) @bci=14, line=433 (Interpreted frame)
 - org.eclipse.swt.widgets.Control.doCommandBySelector(int, int, int) @bci=118, line=906 (Interpreted frame)
 - org.eclipse.swt.widgets.Display.windowProc(int, int, int) @bci=1029, line=4741 (Compiled frame)
 - org.eclipse.swt.internal.cocoa.OS.objc_msgSend(int, int, int) @bci=0 (Interpreted frame)
 - org.eclipse.swt.internal.cocoa.NSResponder.interpretKeyEvents(org.eclipse.swt.internal.cocoa.NSArray) @bci=19, line=56 (Interpreted frame)
 - org.eclipse.swt.widgets.Composite.keyDown(int, int, int) @bci=57, line=516 (Interpreted frame)
 - org.eclipse.swt.widgets.Display.windowProc(int, int, int) @bci=302, line=4655 (Compiled frame)
 - org.eclipse.swt.internal.cocoa.OS.objc_msgSendSuper(org.eclipse.swt.internal.cocoa.objc_super, int, int) @bci=0 (Compiled frame)
 - org.eclipse.swt.widgets.Widget.callSuper(int, int, int) @bci=31, line=202 (Compiled frame)
 - org.eclipse.swt.widgets.Widget.windowSendEvent(int, int, int) @bci=4, line=1753 (Compiled frame)
 - org.eclipse.swt.widgets.Display.windowProc(int, int, int) @bci=803, line=4713 (Compiled frame)
 - org.eclipse.swt.internal.cocoa.OS.objc_msgSendSuper(org.eclipse.swt.internal.cocoa.objc_super, int, int) @bci=0 (Compiled frame)
 - org.eclipse.swt.widgets.Display.applicationSendEvent(int, int, int) @bci=375, line=4285 (Compiled frame)
 - org.eclipse.swt.widgets.Display.applicationProc(int, int, int) @bci=27, line=4352 (Compiled frame)
 - org.eclipse.swt.internal.cocoa.OS.objc_msgSend(int, int, int) @bci=0 (Compiled frame)
 - org.eclipse.swt.internal.cocoa.NSApplication.sendEvent(org.eclipse.swt.internal.cocoa.NSEvent) @bci=19, line=101 (Compiled frame)
 - org.eclipse.ui.internal.Workbench.runEventLoop(org.eclipse.jface.window.Window$IExceptionHandler, org.eclipse.swt.widgets.Display) @bci=9, line=2405 (Compiled frame)
 - org.eclipse.ui.internal.Workbench.runUI() @bci=393, line=2369 (Interpreted frame)
 - org.eclipse.ui.internal.Workbench.access$4(org.eclipse.ui.internal.Workbench) @bci=1, line=2221 (Interpreted frame)
 - org.eclipse.ui.internal.Workbench$5.run() @bci=55, line=500 (Interpreted frame)
 - org.eclipse.core.databinding.observable.Realm.runWithDefault(org.eclipse.core.databinding.observable.Realm, java.lang.Runnable) @bci=12, line=332 (Interpreted frame)
 - org.eclipse.ui.internal.Workbench.createAndRunWorkbench(org.eclipse.swt.widgets.Display, org.eclipse.ui.application.WorkbenchAdvisor) @bci=18, line=493 (Interpreted frame)
 - org.eclipse.ui.PlatformUI.createAndRunWorkbench(org.eclipse.swt.widgets.Display, org.eclipse.ui.application.WorkbenchAdvisor) @bci=2, line=149 (Interpreted frame)
 - org.eclipse.ui.internal.ide.application.IDEApplication.start(org.eclipse.equinox.app.IApplicationContext) @bci=84, line=113 (Interpreted frame)
 - org.eclipse.equinox.internal.app.EclipseAppHandle.run(java.lang.Object) @bci=135, line=194 (Interpreted frame)
 - org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(java.lang.Object) @bci=103, line=110 (Interpreted frame)
 - org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(java.lang.Object) @bci=29, line=79 (Interpreted frame)
 - org.eclipse.core.runtime.adaptor.EclipseStarter.run(java.lang.Object) @bci=149, line=368 (Interpreted frame)
 - org.eclipse.core.runtime.adaptor.EclipseStarter.run(java.lang.String[], java.lang.Runnable) @bci=183, line=179 (Interpreted frame)
 - sun.reflect.NativeMethodAccessorImpl.invoke0(java.lang.reflect.Method, java.lang.Object, java.lang.Object[]) @bci=0 (Interpreted frame)
 - sun.reflect.NativeMethodAccessorImpl.invoke(java.lang.Object, java.lang.Object[]) @bci=87, line=39 (Interpreted frame)
 - sun.reflect.DelegatingMethodAccessorImpl.invoke(java.lang.Object, java.lang.Object[]) @bci=6, line=25 (Interpreted frame)
 - java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) @bci=161, line=592 (Interpreted frame)
 - org.eclipse.equinox.launcher.Main.invokeFramework(java.lang.String[], java.net.URL[]) @bci=211, line=559 (Interpreted frame)
 - org.eclipse.equinox.launcher.Main.basicRun(java.lang.String[]) @bci=114, line=514 (Interpreted frame)
 - org.eclipse.equinox.launcher.Main.run(java.lang.String[]) @bci=4, line=1311 (Interpreted frame)

Reproducible: Sometimes

Steps to Reproduce:
1. To random to reproduce
Comment 1 Olivier Thomann CLA 2010-05-06 16:43:15 EDT
I encourage you to try with 3.6M7. Things have changed since the build you are using.
Comment 2 Ryan Smith CLA 2010-05-13 10:08:32 EDT
Apparently things have not changed for the better. That version is even more unstable to the point where it could not start and be used. Its possible this could be related to a plugin, its almost impossible to tell though. It does appear that the Subversive plugin can lock up the entire IDE in a different way than this issue.
Comment 3 Ryan Smith CLA 2010-05-13 10:09:51 EDT
If the stack trace does not indicate a issue, then one will not be found related to this.