Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 321483 - [implementation] Deadlock in shared AST provider
Summary: [implementation] Deadlock in shared AST provider
Status: CLOSED DUPLICATE of bug 318797
Alias: None
Product: JDT
Classification: Eclipse Project
Component: Text (show other bugs)
Version: 3.6   Edit
Hardware: PC Windows XP
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: JDT-Text-Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-08-02 05:05 EDT by Benno Baumgartner CLA
Modified: 2010-08-02 06:19 EDT (History)
2 users (show)

See Also:


Attachments
Thread Dump (27.15 KB, text/plain)
2010-08-02 05:06 EDT, Benno Baumgartner CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Benno Baumgartner CLA 2010-08-02 05:05:44 EDT
I20100520-1744

I did open a CU Editor with Open Type Dialog and then I did invoke Ctrl+o (Quick Outline) immediately after the editor did open. Result was something that looks very much like a Deadlock:
"Worker-99" prio=6 tid=0x5bc97400 nid=0xcf8 in Object.wait() [0x6310f000]
   java.lang.Thread.State: WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        at java.lang.Object.wait(Object.java:485)
        at org.eclipse.jdt.internal.ui.javaeditor.ASTProvider.getAST(ASTProvider.java:456)
        - locked <0x19884630> (a java.lang.Object)
        at org.eclipse.jdt.ui.SharedASTProvider.getAST(SharedASTProvider.java:126)
        at org.eclipse.jdt.internal.ui.viewsupport.SelectionListenerWithASTManager$PartListenerGroup.calculateASTandInform(SelectionListenerWithASTManager.java:169)
        at org.eclipse.jdt.internal.ui.viewsupport.SelectionListenerWithASTManager$3.run(SelectionListenerWithASTManager.java:154)
        - locked <0x1cc85c20> (a java.lang.Object)
        at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)

And

"main" prio=6 tid=0x008f6400 nid=0x54c in Object.wait() [0x0012d000]
   java.lang.Thread.State: WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        at java.lang.Object.wait(Object.java:485)
        at org.eclipse.jdt.internal.ui.javaeditor.ASTProvider.getAST(ASTProvider.java:456)
        - locked <0x19884630> (a java.lang.Object)
        at org.eclipse.jdt.ui.SharedASTProvider.getAST(SharedASTProvider.java:126)
        at org.eclipse.jdt.ui.OverrideIndicatorLabelDecorator.getOverrideIndicators(OverrideIndicatorLabelDecorator.java:161)
        at org.eclipse.jdt.ui.OverrideIndicatorLabelDecorator.computeAdornmentFlags(OverrideIndicatorLabelDecorator.java:136)
        at org.eclipse.jdt.ui.OverrideIndicatorLabelDecorator.decorateImage(OverrideIndicatorLabelDecorator.java:110)
        at org.eclipse.jdt.internal.ui.viewsupport.JavaUILabelProvider.decorateImage(JavaUILabelProvider.java:134)
        at org.eclipse.jdt.internal.ui.viewsupport.JavaUILabelProvider.getImage(JavaUILabelProvider.java:149)
        at org.eclipse.jface.viewers.DelegatingStyledCellLabelProvider.getImage(DelegatingStyledCellLabelProvider.java:184)
        at org.eclipse.jface.viewers.DecoratingStyledCellLabelProvider.getImage(DecoratingStyledCellLabelProvider.java:167)
        at org.eclipse.jface.viewers.DelegatingStyledCellLabelProvider.update(DelegatingStyledCellLabelProvider.java:118)
        at org.eclipse.jface.viewers.DecoratingStyledCellLabelProvider.update(DecoratingStyledCellLabelProvider.java:134)
        at org.eclipse.jface.viewers.ViewerColumn.refresh(ViewerColumn.java:152)
        at org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(AbstractTreeViewer.java:934)
        at org.eclipse.jface.viewers.AbstractTreeViewer$UpdateItemSafeRunnable.run(AbstractTreeViewer.java:102)
        at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
        at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49)
        at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
        at org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(AbstractTreeViewer.java:1014)
        at org.eclipse.jface.viewers.StructuredViewer$UpdateItemSafeRunnable.run(StructuredViewer.java:481)
        at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
        at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49)
        at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
        at org.eclipse.jface.viewers.StructuredViewer.updateItem(StructuredViewer.java:2141)
        at org.eclipse.jface.viewers.AbstractTreeViewer.createTreeItem(AbstractTreeViewer.java:829)
        at org.eclipse.jface.viewers.AbstractTreeViewer$1.run(AbstractTreeViewer.java:804)
        at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
        at org.eclipse.jface.viewers.AbstractTreeViewer.createChildren(AbstractTreeViewer.java:778)
        at org.eclipse.jface.viewers.TreeViewer.createChildren(TreeViewer.java:644)
        at org.eclipse.jface.viewers.AbstractTreeViewer.internalExpandToLevel(AbstractTreeViewer.java:1714)
        at org.eclipse.jdt.internal.ui.text.JavaOutlineInformationControl$OutlineTreeViewer.internalExpandToLevel(JavaOutlineInformationControl.java:225)
...

See attachment. Had to kill eclipse.
Comment 1 Benno Baumgartner CLA 2010-08-02 05:06:05 EDT
Created attachment 175694 [details]
Thread Dump
Comment 2 Dani Megert CLA 2010-08-02 05:08:23 EDT
>I20100520-1744
This is such an old build ;-)

*** This bug has been marked as a duplicate of bug 203640 ***
Comment 3 Benno Baumgartner CLA 2010-08-02 05:25:02 EDT
(In reply to comment #2)
> >I20100520-1744
> This is such an old build ;-)
Yes, I've just realized that too, sorry:-)
Comment 4 Remy Suen CLA 2010-08-02 06:12:17 EDT
(In reply to comment #2)
> *** This bug has been marked as a duplicate of bug 203640 ***

This bug seems to have nothing to do with bug 203640.
Comment 5 Dani Megert CLA 2010-08-02 06:19:14 EDT
>This bug seems to have nothing to do with bug 203640.
Indeed. Pasted wrong #.

*** This bug has been marked as a duplicate of bug 318797 ***