Eclipse plugin hangs and prevents user input until restart v2
Migrated from http://lampsvn.epfl.ch/trac/scala/ticket/3055
Reporter ijuma
Eclipse hangs during editing and it needs to be killed and restarted to fix it, tested with r20745. Part of the stacktrace is reproduced below, and the full stacktrace is attached.
Reporter ijuma
Eclipse hangs during editing and it needs to be killed and restarted to fix it, tested with r20745. Part of the stacktrace is reproduced below, and the full stacktrace is attached.
"Text Viewer Hover Presenter" daemon prio=10 tid=0x0000000002379800 nid=0x5660 waiting for monitor entry [0x00007f16870a4000]
java.lang.Thread.State: BLOCKED (on object monitor)
at org.eclipse.core.internal.filebuffers.SynchronizableDocument.get(SynchronizableDocument.java:127)
- waiting to lock <0x000000076b1a0968> (a java.lang.Object)
at org.eclipse.jdt.internal.ui.javaeditor.DocumentAdapter.getContents(DocumentAdapter.java:376)
at org.eclipse.jdt.internal.ui.javaeditor.DocumentAdapter.getCharacters(DocumentAdapter.java:368)
at org.eclipse.jdt.internal.core.CompilationUnit.getContents(CompilationUnit.java:661)
at org.eclipse.jdt.internal.compiler.parser.Parser.parse(Parser.java:9556)
at org.eclipse.jdt.internal.compiler.parser.Parser.parse(Parser.java:9528)
at org.eclipse.jdt.internal.compiler.parser.Parser.dietParse(Parser.java:8126)
at org.eclipse.jdt.internal.core.search.BasicSearchEngine.searchAllTypeNames(BasicSearchEngine.java:1174)
"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=10 tid=0x000000000235e000 nid=0x565c waiting for monitor entry [0x00007f1686da2000]
java.lang.Thread.State: BLOCKED (on object monitor)
at org.eclipse.jdt.internal.ui.javaeditor.CompilationUnitDocumentProvider$CompilationUnitAnnotationModel.internalBeginReporting(CompilationUnitDocumentProvider.java:573)
- waiting to lock <0x000000076b1a0968> (a java.lang.Object)
at org.eclipse.jdt.internal.ui.javaeditor.CompilationUnitDocumentProvider$CompilationUnitAnnotationModel.beginReportingSequence(CompilationUnitDocumentProvider.java:558)
at org.eclipse.jdt.internal.ui.text.JavaCompositeReconcilingStrategy.reconcile(JavaCompositeReconcilingStrategy.java:101)
at org.eclipse.jface.text.reconciler.MonoReconciler.process(MonoReconciler.java:77)
at org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run(AbstractReconciler.java:206)
"main" prio=10 tid=0x0000000000788000 nid=0x4e87 waiting on condition [0x00007fff5aee7000]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x000000076b281000> (a java.util.concurrent.locks.ReentrantReadWriteLock$NonfairSync)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:158)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:747)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:778)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1114)
at java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock.lock(ReentrantReadWriteLock.java:807)
at scala.tools.eclipse.util.Cached$class.locked(Cached.scala:82)
at scala.tools.eclipse.util.Cached$class.invalidate(Cached.scala:64)
at scala.tools.eclipse.ScalaPresentationCompiler$CachedCompilerResult.invalidate(ScalaPresentationCompiler.scala:67)
at scala.tools.eclipse.ScalaPresentationCompiler$$anonfun$invalidateCompilerResult$1.apply(ScalaPresentationCompiler.scala:93)
at scala.tools.eclipse.ScalaPresentationCompiler$$anonfun$invalidateCompilerResult$1.apply(ScalaPresentationCompiler.scala:93)
Leave a comment
on 2010-02-14 00:09 *
By tracImporter
on 2010-02-18 01:18 *
By tracImporter
Closed As: fixed
Could it be that this bug somehow re-appeared.
I am using:
Eclipse: 20100218-1602
Scala-Plugin: 1.0.0.201009250004
and already suffered an Eclipse freezes 3 times always with the following stack-trace:
org.eclipse.core.internal.filebuffers.SynchronizableDocument.get(SynchronizableDocument.java:127)
org.eclipse.jdt.internal.ui.javaeditor.DocumentAdapter.getContents(DocumentAdapter.java:376)
org.eclipse.jdt.internal.ui.javaeditor.DocumentAdapter.getCharacters(DocumentAdapter.java:368)
org.eclipse.jdt.internal.core.CompilationUnit.getContents(CompilationUnit.java:663)
org.eclipse.jdt.internal.compiler.parser.Parser.parse(Parser.java:9567)
org.eclipse.jdt.internal.compiler.parser.Parser.parse(Parser.java:9539)
org.eclipse.jdt.internal.compiler.parser.Parser.dietParse(Parser.java:8132)
org.eclipse.jdt.internal.core.search.BasicSearchEngine.searchAllTypeNames(BasicSearchEngine.java:1174)
org.eclipse.jdt.internal.core.SearchableEnvironment.findTypes(SearchableEnvironment.java:456)
org.eclipse.jdt.internal.core.SearchableEnvironment.findTypes(SearchableEnvironment.java:308)
scala.tools.eclipse.javaelements.ScalaSelectionEngine$$anonfun$select$1.apply(ScalaSelectionEngine.scala:363)
scala.tools.eclipse.javaelements.ScalaSelectionEngine$$anonfun$select$1.apply(ScalaSelectionEngine.scala:44)
scala.tools.eclipse.util.Cached$$anonfun$apply$3.apply(Cached.scala:58)
scala.tools.eclipse.util.Cached$class.locked(Cached.scala:83)
scala.tools.eclipse.util.Cached$class.apply(Cached.scala:56)
scala.tools.eclipse.ScalaPresentationCompiler$CachedCompilerResult.apply(ScalaPresentationCompiler.scala:64)
scala.tools.eclipse.ScalaPresentationCompiler.withCompilerResult(ScalaPresentationCompiler.scala:99)
scala.tools.eclipse.ScalaProject$$anonfun$withCompilerResult$1.apply(ScalaProject.scala:367)
scala.tools.eclipse.ScalaProject$$anonfun$withCompilerResult$1.apply(ScalaProject.scala:366)
scala.tools.eclipse.util.Cached$$anonfun$apply$1.apply$mcV$sp(Cached.scala:22)
scala.tools.eclipse.util.Cached$$anonfun$apply$1.apply(Cached.scala:21)
scala.tools.eclipse.util.Cached$$anonfun$apply$1.apply(Cached.scala:21)
scala.tools.eclipse.util.Cached$class.locked(Cached.scala:83)
scala.tools.eclipse.util.Cached$class.apply(Cached.scala:20)
scala.tools.eclipse.ScalaProject$$anon$1.apply(ScalaProject.scala:40)
scala.tools.eclipse.ScalaProject.withPresentationCompiler(ScalaProject.scala:362)
scala.tools.eclipse.ScalaProject.withCompilerResult(ScalaProject.scala:366)
scala.tools.eclipse.javaelements.ScalaCompilationUnit$class.withCompilerResult(ScalaCompilationUnit.scala:58)
scala.tools.eclipse.javaelements.ScalaSourceFile.withCompilerResult(ScalaSourceFile.scala:40)
scala.tools.eclipse.javaelements.ScalaSelectionEngine.select(ScalaSelectionEngine.scala:44)
scala.tools.eclipse.javaelements.ScalaCompilationUnit$class.codeSelect(ScalaCompilationUnit.scala:144)
scala.tools.eclipse.javaelements.ScalaSourceFile.codeSelect(ScalaSourceFile.scala:40)
scala.tools.eclipse.javaelements.ScalaSourceFile.codeSelect(ScalaSourceFile.scala:70)
org.eclipse.jdt.internal.core.CompilationUnit.codeSelect_aroundBody0(CompilationUnit.java:371)
org.eclipse.jdt.internal.core.CompilationUnit.codeSelect_aroundBody1$advice(CompilationUnit.java:313)
org.eclipse.jdt.internal.core.CompilationUnit.codeSelect(CompilationUnit.java:1)
org.eclipse.jdt.internal.ui.text.java.hover.AbstractJavaEditorTextHover.getJavaElementsAt(AbstractJavaEditorTextHover.java:115)
org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:499)
org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:495)
org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129)
org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:82)
org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166)
before the hang, the following messages were printed out on the console:
ScalaPlugin--TRACE--7053953--Java indexing--:Def defn: addListDataListener [scala.tools.eclipse.javaelements.ScalaIndexBuilder$IndexBuilderTraverser$ClassOwner$$anon$2@87f62e]
ScalaPlugin--TRACE--7053953--Java indexing--:Def defn: removeListDataListener [scala.tools.eclipse.javaelements.ScalaIndexBuilder$IndexBuilderTraverser$ClassOwner$$anon$2@87f62e]
ScalaPlugin--TRACE--7053953--Java indexing--:Def defn: service [scala.tools.eclipse.javaelements.ScalaIndexBuilder$IndexBuilderTraverser$ClassOwner$$anon$2@1f9a8dc]
ScalaPlugin--TRACE--7055855--org.eclipse.jdt.internal.ui.text.JavaReconciler--:call askType : AutoCompleteCombo.scala
ScalaPlugin--TRACE--7059921--org.eclipse.jdt.internal.ui.text.JavaReconciler--:call askType : AutoCompleteCombo.scala
ScalaPlugin--TRACE--7066471--Text Viewer Hover Presenter--:selectedIdentifier: asInstanceOf
starting typedTreeAt
at pos RangePosition(AutoCompleteCombo.scala, 796, 796, 808) was found: if (true{Boolean(true)})
AutoCompleteCombo.this{AutoCompleteCombo.this.type}.getAttribute{(x$1: java.lang.String,x$2: Boolean)java.lang.Object}("pwin"{java.lang.String("pwin")}, true{Boolean(true)}){java.lang.Object}.asInstanceOf{[T0]T0}[khbl.PersonPanel]{khbl.PersonPanel}.executeSearch{()Unit}(){<error>}
else
(){<error>}{khbl.PersonPanel}[757:943]
already attributed
ScalaPlugin--TRACE--7066472--Text Viewer Hover Presenter--:Unhandled: scala.reflect.generic.Trees$If
ScalaPlugin--TRACE--7066481--Text Viewer Hover Presenter--:selectedIdentifier: asInstanceOf
starting typedTreeAt
at pos RangePosition(AutoCompleteCombo.scala, 796, 796, 808) was found: if (true{Boolean(true)})
AutoCompleteCombo.this{AutoCompleteCombo.this.type}.getAttribute{(x$1: java.lang.String,x$2: Boolean)java.lang.Object}("pwin"{java.lang.String("pwin")}, true{Boolean(true)}){java.lang.Object}.asInstanceOf{[T0]T0}[khbl.PersonPanel]{khbl.PersonPanel}.executeSearch{()Unit}(){<error>}
else
(){<error>}{khbl.PersonPanel}[757:943]
already attributed
ScalaPlugin--TRACE--7066482--Text Viewer Hover Presenter--:Unhandled: scala.reflect.generic.Trees$If
ScalaPlugin--TRACE--7078483--org.eclipse.jdt.internal.ui.text.JavaReconciler--:call askType : AutoCompleteCombo.scala
ScalaPlugin--TRACE--7079735--Text Viewer Hover Presenter--:call askType : AutoCompleteCombo.scala
ScalaPlugin--TRACE--7079777--Text Viewer Hover Presenter--:selectedIdentifier: Unit
starting typedTreeAt
at pos RangePosition(AutoCompleteCombo.scala, 860, 860, 864) was found: if (true{Boolean(true)})
null{Null(null)}
else
(){<error>}{khbl.PersonPanel}[734:951]
already attributed
ScalaPlugin--TRACE--7079778--Text Viewer Hover Presenter--:Unhandled: scala.reflect.generic.Trees$If
in--TRACE--7079778--Text Viewer Hover Presenter--:Unhandled: scala.reflect.generic.Trees$If
I am using:
Eclipse: 20100218-1602
Scala-Plugin: 1.0.0.201009250004
and already suffered an Eclipse freezes 3 times always with the following stack-trace:
org.eclipse.core.internal.filebuffers.SynchronizableDocument.get(SynchronizableDocument.java:127)
org.eclipse.jdt.internal.ui.javaeditor.DocumentAdapter.getContents(DocumentAdapter.java:376)
org.eclipse.jdt.internal.ui.javaeditor.DocumentAdapter.getCharacters(DocumentAdapter.java:368)
org.eclipse.jdt.internal.core.CompilationUnit.getContents(CompilationUnit.java:663)
org.eclipse.jdt.internal.compiler.parser.Parser.parse(Parser.java:9567)
org.eclipse.jdt.internal.compiler.parser.Parser.parse(Parser.java:9539)
org.eclipse.jdt.internal.compiler.parser.Parser.dietParse(Parser.java:8132)
org.eclipse.jdt.internal.core.search.BasicSearchEngine.searchAllTypeNames(BasicSearchEngine.java:1174)
org.eclipse.jdt.internal.core.SearchableEnvironment.findTypes(SearchableEnvironment.java:456)
org.eclipse.jdt.internal.core.SearchableEnvironment.findTypes(SearchableEnvironment.java:308)
scala.tools.eclipse.javaelements.ScalaSelectionEngine$$anonfun$select$1.apply(ScalaSelectionEngine.scala:363)
scala.tools.eclipse.javaelements.ScalaSelectionEngine$$anonfun$select$1.apply(ScalaSelectionEngine.scala:44)
scala.tools.eclipse.util.Cached$$anonfun$apply$3.apply(Cached.scala:58)
scala.tools.eclipse.util.Cached$class.locked(Cached.scala:83)
scala.tools.eclipse.util.Cached$class.apply(Cached.scala:56)
scala.tools.eclipse.ScalaPresentationCompiler$CachedCompilerResult.apply(ScalaPresentationCompiler.scala:64)
scala.tools.eclipse.ScalaPresentationCompiler.withCompilerResult(ScalaPresentationCompiler.scala:99)
scala.tools.eclipse.ScalaProject$$anonfun$withCompilerResult$1.apply(ScalaProject.scala:367)
scala.tools.eclipse.ScalaProject$$anonfun$withCompilerResult$1.apply(ScalaProject.scala:366)
scala.tools.eclipse.util.Cached$$anonfun$apply$1.apply$mcV$sp(Cached.scala:22)
scala.tools.eclipse.util.Cached$$anonfun$apply$1.apply(Cached.scala:21)
scala.tools.eclipse.util.Cached$$anonfun$apply$1.apply(Cached.scala:21)
scala.tools.eclipse.util.Cached$class.locked(Cached.scala:83)
scala.tools.eclipse.util.Cached$class.apply(Cached.scala:20)
scala.tools.eclipse.ScalaProject$$anon$1.apply(ScalaProject.scala:40)
scala.tools.eclipse.ScalaProject.withPresentationCompiler(ScalaProject.scala:362)
scala.tools.eclipse.ScalaProject.withCompilerResult(ScalaProject.scala:366)
scala.tools.eclipse.javaelements.ScalaCompilationUnit$class.withCompilerResult(ScalaCompilationUnit.scala:58)
scala.tools.eclipse.javaelements.ScalaSourceFile.withCompilerResult(ScalaSourceFile.scala:40)
scala.tools.eclipse.javaelements.ScalaSelectionEngine.select(ScalaSelectionEngine.scala:44)
scala.tools.eclipse.javaelements.ScalaCompilationUnit$class.codeSelect(ScalaCompilationUnit.scala:144)
scala.tools.eclipse.javaelements.ScalaSourceFile.codeSelect(ScalaSourceFile.scala:40)
scala.tools.eclipse.javaelements.ScalaSourceFile.codeSelect(ScalaSourceFile.scala:70)
org.eclipse.jdt.internal.core.CompilationUnit.codeSelect_aroundBody0(CompilationUnit.java:371)
org.eclipse.jdt.internal.core.CompilationUnit.codeSelect_aroundBody1$advice(CompilationUnit.java:313)
org.eclipse.jdt.internal.core.CompilationUnit.codeSelect(CompilationUnit.java:1)
org.eclipse.jdt.internal.ui.text.java.hover.AbstractJavaEditorTextHover.getJavaElementsAt(AbstractJavaEditorTextHover.java:115)
org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:499)
org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:495)
org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129)
org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:82)
org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166)
before the hang, the following messages were printed out on the console:
ScalaPlugin--TRACE--7053953--Java indexing--:Def defn: addListDataListener [scala.tools.eclipse.javaelements.ScalaIndexBuilder$IndexBuilderTraverser$ClassOwner$$anon$2@87f62e]
ScalaPlugin--TRACE--7053953--Java indexing--:Def defn: removeListDataListener [scala.tools.eclipse.javaelements.ScalaIndexBuilder$IndexBuilderTraverser$ClassOwner$$anon$2@87f62e]
ScalaPlugin--TRACE--7053953--Java indexing--:Def defn: service [scala.tools.eclipse.javaelements.ScalaIndexBuilder$IndexBuilderTraverser$ClassOwner$$anon$2@1f9a8dc]
ScalaPlugin--TRACE--7055855--org.eclipse.jdt.internal.ui.text.JavaReconciler--:call askType : AutoCompleteCombo.scala
ScalaPlugin--TRACE--7059921--org.eclipse.jdt.internal.ui.text.JavaReconciler--:call askType : AutoCompleteCombo.scala
ScalaPlugin--TRACE--7066471--Text Viewer Hover Presenter--:selectedIdentifier: asInstanceOf
starting typedTreeAt
at pos RangePosition(AutoCompleteCombo.scala, 796, 796, 808) was found: if (true{Boolean(true)})
AutoCompleteCombo.this{AutoCompleteCombo.this.type}.getAttribute{(x$1: java.lang.String,x$2: Boolean)java.lang.Object}("pwin"{java.lang.String("pwin")}, true{Boolean(true)}){java.lang.Object}.asInstanceOf{[T0]T0}[khbl.PersonPanel]{khbl.PersonPanel}.executeSearch{()Unit}(){<error>}
else
(){<error>}{khbl.PersonPanel}[757:943]
already attributed
ScalaPlugin--TRACE--7066472--Text Viewer Hover Presenter--:Unhandled: scala.reflect.generic.Trees$If
ScalaPlugin--TRACE--7066481--Text Viewer Hover Presenter--:selectedIdentifier: asInstanceOf
starting typedTreeAt
at pos RangePosition(AutoCompleteCombo.scala, 796, 796, 808) was found: if (true{Boolean(true)})
AutoCompleteCombo.this{AutoCompleteCombo.this.type}.getAttribute{(x$1: java.lang.String,x$2: Boolean)java.lang.Object}("pwin"{java.lang.String("pwin")}, true{Boolean(true)}){java.lang.Object}.asInstanceOf{[T0]T0}[khbl.PersonPanel]{khbl.PersonPanel}.executeSearch{()Unit}(){<error>}
else
(){<error>}{khbl.PersonPanel}[757:943]
already attributed
ScalaPlugin--TRACE--7066482--Text Viewer Hover Presenter--:Unhandled: scala.reflect.generic.Trees$If
ScalaPlugin--TRACE--7078483--org.eclipse.jdt.internal.ui.text.JavaReconciler--:call askType : AutoCompleteCombo.scala
ScalaPlugin--TRACE--7079735--Text Viewer Hover Presenter--:call askType : AutoCompleteCombo.scala
ScalaPlugin--TRACE--7079777--Text Viewer Hover Presenter--:selectedIdentifier: Unit
starting typedTreeAt
at pos RangePosition(AutoCompleteCombo.scala, 860, 860, 864) was found: if (true{Boolean(true)})
null{Null(null)}
else
(){<error>}{khbl.PersonPanel}[734:951]
already attributed
ScalaPlugin--TRACE--7079778--Text Viewer Hover Presenter--:Unhandled: scala.reflect.generic.Trees$If
in--TRACE--7079778--Text Viewer Hover Presenter--:Unhandled: scala.reflect.generic.Trees$If
Updating tickets (#1000069, #1000195, #1000213, #1000223, #1000006, #1000021, #1000038, #1000048, #1000051, #1000052, #1000075, #1000103, #1000109, #1000115, #1000119, #1000156, #1000186, #1000207, #1000238, #1000262, #1000263, #380, #389, #683, #1238, #1331, #1635, #1645, #1715, #1729, #1744, #1783, #1839, #1869, #1885, #1890, #1902, #1918, #1919, #1924, #1925, #1946, #1964, #1991, #2131, #2233, #2342, #2348, #2408, #2459, #2499, #2523, #2572, #2582, #2602, #2614, #2615, #2675, #2710, #2745, #2763, #2816, #2830, #2834, #2878, #2879, #2887, #2888, #2901, #2911, #2912, #2922, #2937, #2938, #2942, #2951, #2955, #2957, #2961, #2964, #2965, #2974, #2975, #2989, #2990, #3002, #3055, #3070, #3087, #3135, #3139, #3173, #3182, #3184, #3200, #3213, #3214, #3221, #3243, #3251)
The code referenced in the stack traces has been heavily modified since the problem has been reported and doesn't match any more.
Similar problems have been reported fixed since last comment. #1000173
No reproducible test case is available.
Closing this ticket as it cannot be used to improve Scala IDE anymore.
Please reopen with additional information if you still see the problem.
Similar problems have been reported fixed since last comment. #1000173
No reproducible test case is available.
Closing this ticket as it cannot be used to improve Scala IDE anymore.
Please reopen with additional information if you still see the problem.