Bug 58697 - [misc] Editor no longer responsive
Summary: [misc] Editor no longer responsive
Status: RESOLVED WORKSFORME
Alias: None
Product: JDT
Classification: Eclipse Project
Component: Text (show other bugs)
Version: 3.0   Edit
Hardware: PC Windows 2000
: P3 major (vote)
Target Milestone: ---   Edit
Assignee: JDT-Text-Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords: performance
Depends on:
Blocks:
 
Reported: 2004-04-15 13:18 EDT by Philipe Mulet CLA
Modified: 2005-04-22 02:01 EDT (History)
3 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Philipe Mulet CLA 2004-04-15 13:18:27 EDT
Build 20040413

After some development, I ususally find the editor slowing down signicantly to 
the point the IDE becomes unusable.

There must be some combination of memory leaking as well, as the VM stack grows 
dangerously as well.

Even if I do nothing, the CPU goes to 100% for minutes.

Here are dumps of activity...
Full thread dump Java HotSpot(TM) Client VM (1.4.2_02-b03 mixed mode):

"Text Viewer Hover Presenter" daemon prio=2 tid=0x21eb8868 nid=0x4a0 runnable 
[2c03f000..2c03fd88]
        at org.eclipse.jdt.internal.compiler.ClassFile.completeCodeAttribute
(ClassFile.java:1349)
        at 
org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.generateCode
(AbstractMethodDeclaration.java:
        at 
org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.generateCode
(AbstractMethodDeclaration.java:
        at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.generateCode
(TypeDeclaration.java:550)
        at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.generateCode
(TypeDeclaration.java:607)
        at 
org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.generateCode
(CompilationUnitDeclaration.jav
        at org.eclipse.jdt.internal.compiler.Compiler.resolve(Compiler.java:587)
        at org.eclipse.jdt.internal.core.CompilationUnitProblemFinder.process
(CompilationUnitProblemFinder.java:175)
        at org.eclipse.jdt.internal.core.CompilationUnit.buildStructure
(CompilationUnit.java:145)
        at org.eclipse.jdt.internal.core.Openable.generateInfos
(Openable.java:183)
        at org.eclipse.jdt.internal.core.JavaElement.openWhenClosed
(JavaElement.java:543)
        at org.eclipse.jdt.internal.core.JavaElement.getElementInfo
(JavaElement.java:280)
        at org.eclipse.jdt.internal.core.JavaElement.getElementInfo
(JavaElement.java:266)
        at org.eclipse.jdt.internal.core.Openable.getBuffer(Openable.java:210)
        at org.eclipse.jdt.internal.core.Openable.codeSelect(Openable.java:132)
        at org.eclipse.jdt.internal.core.CompilationUnit.codeSelect
(CompilationUnit.java:299)
        at org.eclipse.jdt.internal.core.CompilationUnit.codeSelect
(CompilationUnit.java:293)
        at 
org.eclipse.jdt.internal.ui.text.java.hover.AbstractJavaEditorTextHover.getHover
Info(AbstractJavaEditorTextH
        - locked <0x1696d288> (a org.eclipse.jdt.internal.core.CompilationUnit)
        at 
org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo
(BestMatchHover.java:102)
        at 
org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInf
o(JavaEditorTextHoverProxy.j
        at org.eclipse.jface.text.TextViewerHoverManager$4.run
(TextViewerHoverManager.java:161)

"All Types Caching" daemon prio=4 tid=0x22fcc548 nid=0x5f4 runnable 
[2bf3f000..2bf3fd88]
        at java.io.FileInputStream.open(Native Method)
        at java.io.FileInputStream.<init>(FileInputStream.java:106)
        at org.eclipse.jdt.internal.core.index.DiskIndex.readDocumentNumbers
(DiskIndex.java:614)
        - locked <0x1262f780> (a org.eclipse.jdt.internal.core.index.DiskIndex)
        at org.eclipse.jdt.internal.core.index.EntryResult.getDocumentNames
(EntryResult.java:49)
        at 
org.eclipse.jdt.internal.core.search.pattern.InternalSearchPattern.findIndexMatc
hes(InternalSearchPattern.ja
        at org.eclipse.jdt.internal.core.search.PatternSearchJob.search
(PatternSearchJob.java:106)
        at org.eclipse.jdt.internal.core.search.PatternSearchJob.execute
(PatternSearchJob.java:63)
        at 
org.eclipse.jdt.internal.core.search.processing.JobManager.performConcurrentJob
(JobManager.java:257)
        at org.eclipse.jdt.core.search.SearchEngine.searchAllTypeNames
(SearchEngine.java:848)
        at org.eclipse.jdt.internal.corext.util.AllTypesCache.search
(AllTypesCache.java:496)
        at 
org.eclipse.jdt.internal.corext.util.AllTypesCache$TypeCacher.doSearchTypes
(AllTypesCache.java:180)
        at org.eclipse.jdt.internal.corext.util.AllTypesCache$TypeCacher.run
(AllTypesCache.java:149)

"Worker-82" prio=5 tid=0x22e0edf0 nid=0x75c in Object.wait() 
[2be3f000..2be3fd88]
        at java.lang.Object.wait(Native Method)
        at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:189)
        - locked <0x11239318> (a org.eclipse.core.internal.jobs.WorkerPool)
        at org.eclipse.core.internal.jobs.WorkerPool.startJob
(WorkerPool.java:215)
        at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x22d4c628 
nid=0x574 runnable [2bb8f000..2bb8fd88]
        at java.lang.Object.wait(Native Method)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run
(AbstractReconciler.java:161)
        - locked <0x1c36c378> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQueue)

"Worker-80" prio=5 tid=0x2306a5b0 nid=0x7c0 in Object.wait() 
[2ba8f000..2ba8fd88]
        at java.lang.Object.wait(Native Method)
        at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:189)
        - locked <0x11239318> (a org.eclipse.core.internal.jobs.WorkerPool)
        at org.eclipse.core.internal.jobs.WorkerPool.startJob
(WorkerPool.java:215)
        at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x22d13dd8 
nid=0x76c runnable [2b87f000..2b87fd88]
        at java.lang.Object.wait(Native Method)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run
(AbstractReconciler.java:161)
        - locked <0x1bad56c0> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQueue)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x22e0e968 
nid=0x668 waiting for monitor entry [2b6
        at 
org.eclipse.jdt.internal.ui.text.java.JavaReconcilingStrategy.reconcile
(JavaReconcilingStrategy.java:84)
        - waiting to lock <0x1696d288> (a 
org.eclipse.jdt.internal.core.CompilationUnit)
        at 
org.eclipse.jdt.internal.ui.text.java.JavaReconcilingStrategy.reconcile
(JavaReconcilingStrategy.java:118)
        at 
org.eclipse.jface.text.reconciler.CompositeReconcilingStrategy.reconcile
(CompositeReconcilingStrategy.java:8
        at 
org.eclipse.jdt.internal.ui.text.JavaCompositeReconcilingStrategy.reconcile
(JavaCompositeReconcilingStrategy
        at org.eclipse.jface.text.reconciler.MonoReconciler.process
(MonoReconciler.java:76)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run
(AbstractReconciler.java:189)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x22e78d38 
nid=0x7a8 runnable [2b55f000..2b55fd88]
        at java.lang.Object.wait(Native Method)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run
(AbstractReconciler.java:161)
        - locked <0x1b4efb38> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQueue)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x22debb20 
nid=0x7d0 runnable [29cef000..29cefd88]
        at java.lang.Object.wait(Native Method)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run
(AbstractReconciler.java:161)
        - locked <0x1a03f0b0> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQueue)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x22fb1008 
nid=0x768 runnable [28f2f000..28f2fd88]
        at java.lang.Object.wait(Native Method)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run
(AbstractReconciler.java:161)
        - locked <0x18ce6290> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQueue)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x22d892d0 
nid=0x7a0 runnable [2876f000..2876fd88]
        at java.lang.Object.wait(Native Method)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run
(AbstractReconciler.java:161)
        - locked <0x17bb4ba8> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQueue)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x22e78f30 
nid=0x548 runnable [275df000..275dfd88]
        at java.lang.Object.wait(Native Method)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run
(AbstractReconciler.java:161)
        - locked <0x17832a00> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQueue)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x22c8ee90 
nid=0x6cc runnable [26aaf000..26aafd88]
        at java.lang.Object.wait(Native Method)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run
(AbstractReconciler.java:161)
        - locked <0x16ae5a50> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQueue)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x22fa0e18 
nid=0x748 runnable [2676f000..2676fd88]
        at java.lang.Object.wait(Native Method)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run
(AbstractReconciler.java:161)
        - locked <0x16a31ec8> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQueue)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x22c47250 
nid=0x688 waiting for monitor entry [266
        at 
org.eclipse.jdt.internal.ui.text.java.JavaReconcilingStrategy.reconcile
(JavaReconcilingStrategy.java:84)
        - waiting to lock <0x1696d288> (a 
org.eclipse.jdt.internal.core.CompilationUnit)
        at 
org.eclipse.jdt.internal.ui.text.java.JavaReconcilingStrategy.reconcile
(JavaReconcilingStrategy.java:118)
        at 
org.eclipse.jface.text.reconciler.CompositeReconcilingStrategy.reconcile
(CompositeReconcilingStrategy.java:8
        at 
org.eclipse.jdt.internal.ui.text.JavaCompositeReconcilingStrategy.reconcile
(JavaCompositeReconcilingStrategy
        at org.eclipse.jface.text.reconciler.MonoReconciler.process
(MonoReconciler.java:76)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run
(AbstractReconciler.java:189)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x22c72258 
nid=0x6e8 runnable [264ef000..264efd88]
        at java.lang.Object.wait(Native Method)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run
(AbstractReconciler.java:161)
        - locked <0x16757b10> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQueue)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x22c65a80 
nid=0x660 runnable [25eef000..25eefd88]
        at java.lang.Object.wait(Native Method)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run
(AbstractReconciler.java:161)
        - locked <0x159460e8> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQueue)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x21c69ab0 
nid=0x700 runnable [2240f000..2240fd88]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x12087180> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQueue)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run
(AbstractReconciler.java:161)
        - locked <0x12087180> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQueue)

"Java indexing" daemon prio=4 tid=0x21bafa88 nid=0x654 in Object.wait() 
[2220f000..2220fd88]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x119da848> (a 
org.eclipse.jdt.internal.core.search.indexing.IndexManager)
        at java.lang.Object.wait(Object.java:429)
        at org.eclipse.jdt.internal.core.search.processing.JobManager.run
(JobManager.java:323)
        - locked <0x119da848> (a 
org.eclipse.jdt.internal.core.search.indexing.IndexManager)
        at java.lang.Thread.run(Thread.java:534)

"Start Level Event Dispatcher" daemon prio=5 tid=0x00966c10 nid=0x794 in 
Object.wait() [2143f000..2143fd88]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x10fec308> (a 
org.eclipse.osgi.framework.eventmgr.EventThread)
        at java.lang.Object.wait(Object.java:429)
        at org.eclipse.osgi.framework.eventmgr.EventThread.getNextEvent
(EventThread.java:167)
        - locked <0x10fec308> (a 
org.eclipse.osgi.framework.eventmgr.EventThread)
        at org.eclipse.osgi.framework.eventmgr.EventThread.run
(EventThread.java:118)

"Framework Event Dispatcher" daemon prio=5 tid=0x2106dd90 nid=0x3c0 in 
Object.wait() [2133f000..2133fd88]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x10fec388> (a 
org.eclipse.osgi.framework.eventmgr.EventThread)
        at java.lang.Object.wait(Object.java:429)
        at org.eclipse.osgi.framework.eventmgr.EventThread.getNextEvent
(EventThread.java:167)
        - locked <0x10fec388> (a 
org.eclipse.osgi.framework.eventmgr.EventThread)
        at org.eclipse.osgi.framework.eventmgr.EventThread.run
(EventThread.java:118)

"Signal Dispatcher" daemon prio=10 tid=0x009807f0 nid=0x7dc runnable [0..0]

"Finalizer" daemon prio=9 tid=0x00970820 nid=0x6c0 in Object.wait() 
[20c2f000..20c2fd88]
        at java.lang.Object.wait(Native Method)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:111)
        - locked <0x10f7fee8> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:127)
        at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)

"Reference Handler" daemon prio=10 tid=0x009714c0 nid=0x65c in Object.wait() 
[20b2f000..20b2fd88]
        at java.lang.Object.wait(Native Method)
        at java.lang.Object.wait(Object.java:429)
        at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:115)
        - locked <0x10f7ff50> (a java.lang.ref.Reference$Lock)

"main" prio=7 tid=0x00235870 nid=0x754 runnable [6f000..6fc3c]
        at org.eclipse.swt.internal.win32.OS.WaitMessage(Native Method)
        at org.eclipse.swt.widgets.Display.sleep(Display.java:2888)
        at org.eclipse.ui.application.WorkbenchAdvisor.eventLoopIdle
(WorkbenchAdvisor.java:335)
        at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1437)
        at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1407)
        at org.eclipse.ui.internal.Workbench.createAndRunWorkbench
(Workbench.java:244)
        at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:140)
        at org.eclipse.ui.internal.ide.IDEApplication.run
(IDEApplication.java:90)
        at org.eclipse.core.internal.runtime.PlatformActivator$1.run
(PlatformActivator.java:280)
        at org.eclipse.core.runtime.adaptor.EclipseStarter.run
(EclipseStarter.java:241)
        at org.eclipse.core.runtime.adaptor.EclipseStarter.run
(EclipseStarter.java:117)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke
(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke
(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:324)
        at org.eclipse.core.launcher.Main.basicRun(Main.java:267)
        at org.eclipse.core.launcher.Main.run(Main.java:692)
        at org.eclipse.core.launcher.Main.main(Main.java:676)

"VM Thread" prio=5 tid=0x00922ab0 nid=0x3d4 runnable

"VM Periodic Task Thread" prio=10 tid=0x00920610 nid=0x774 waiting on condition
"Suspend Checker Thread" prio=10 tid=0x00972e48 nid=0x744 runnable
Comment 1 Philipe Mulet CLA 2004-04-15 13:19:01 EDT
Full thread dump Java HotSpot(TM) Client VM (1.4.2_02-b03 mixed mode):

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x22d4c628 
nid=0x574 in Object.wait() [2bb8f000..2bb
        at java.lang.Object.wait(Native Method)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run
(AbstractReconciler.java:161)
        - locked <0x1c3f9d30> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQueue)

"Worker-80" prio=5 tid=0x2306a5b0 nid=0x7c0 in Object.wait() 
[2ba8f000..2ba8fd88]
        at java.lang.Object.wait(Native Method)
        at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:189)
        - locked <0x11239318> (a org.eclipse.core.internal.jobs.WorkerPool)
        at org.eclipse.core.internal.jobs.WorkerPool.startJob
(WorkerPool.java:215)
        at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x22d13dd8 
nid=0x76c in Object.wait() [2b87f000..2b8
        at java.lang.Object.wait(Native Method)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run
(AbstractReconciler.java:161)
        - locked <0x1bb3e0e8> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQueue)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x22e0e968 
nid=0x668 in Object.wait() [2b66f000..2b6
        at java.lang.Object.wait(Native Method)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run
(AbstractReconciler.java:161)
        - locked <0x1b684148> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQueue)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x22e78d38 
nid=0x7a8 in Object.wait() [2b55f000..2b5
        at java.lang.Object.wait(Native Method)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run
(AbstractReconciler.java:161)
        - locked <0x1b4f1c58> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQueue)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x22debb20 
nid=0x7d0 in Object.wait() [29cef000..29c
        at java.lang.Object.wait(Native Method)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run
(AbstractReconciler.java:161)
        - locked <0x1a0411d0> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQueue)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x22fb1008 
nid=0x768 in Object.wait() [28f2f000..28f
        at java.lang.Object.wait(Native Method)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run
(AbstractReconciler.java:161)
        - locked <0x18ce83b0> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQueue)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x22d892d0 
nid=0x7a0 in Object.wait() [2876f000..287
        at java.lang.Object.wait(Native Method)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run
(AbstractReconciler.java:161)
        - locked <0x17bb6cc8> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQueue)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x22e78f30 
nid=0x548 runnable [275df000..275dfd88]
        at java.lang.Object.wait(Native Method)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run
(AbstractReconciler.java:161)
        - locked <0x17834b20> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQueue)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x22c8ee90 
nid=0x6cc runnable [26aaf000..26aafd88]
        at java.lang.Object.wait(Native Method)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run
(AbstractReconciler.java:161)
        - locked <0x16ae6188> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQueue)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x22fa0e18 
nid=0x748 runnable [2676f000..2676fd88]
        at java.lang.Object.wait(Native Method)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run
(AbstractReconciler.java:161)
        - locked <0x16a32600> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQueue)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x22c47250 
nid=0x688 runnable [2665f000..2665fd88]
        at org.eclipse.jdt.internal.compiler.parser.Scanner.setSource
(Scanner.java:3190)
        at org.eclipse.jdt.core.dom.ASTConverter.removeExtraBlanks
(ASTConverter.java:3137)
        at 
org.eclipse.jdt.core.dom.ASTConverter.convertToParenthesizedExpression
(ASTConverter.java:927)
        at org.eclipse.jdt.core.dom.ASTConverter.convert(ASTConverter.java:818)
        at org.eclipse.jdt.core.dom.ASTConverter.convert(ASTConverter.java:1691)
        at org.eclipse.jdt.core.dom.ASTConverter.convert(ASTConverter.java:909)
        at org.eclipse.jdt.core.dom.ASTConverter.convert(ASTConverter.java:547)
        at org.eclipse.jdt.core.dom.ASTConverter.convert(ASTConverter.java:573)
        at org.eclipse.jdt.core.dom.ASTConverter.convert(ASTConverter.java:912)
        at 
org.eclipse.jdt.core.dom.ASTConverter.convertToVariableDeclarationFragment
(ASTConverter.java:2710)
        at 
org.eclipse.jdt.core.dom.ASTConverter.convertToVariableDeclarationStatement
(ASTConverter.java:2737)
        at org.eclipse.jdt.core.dom.ASTConverter.convert(ASTConverter.java:1758)
        at org.eclipse.jdt.core.dom.ASTConverter.convert(ASTConverter.java:2042)
        at org.eclipse.jdt.core.dom.ASTConverter.convert(ASTConverter.java:1797)
        at org.eclipse.jdt.core.dom.ASTConverter.convert(ASTConverter.java:758)
        at org.eclipse.jdt.core.dom.ASTConverter.buildBodyDeclarations
(ASTConverter.java:330)
        at org.eclipse.jdt.core.dom.ASTConverter.convert(ASTConverter.java:268)
        at org.eclipse.jdt.core.dom.ASTConverter.convert(ASTConverter.java:146)
        at org.eclipse.jdt.core.dom.AST.convertCompilationUnit(AST.java:237)
        at 
org.eclipse.jdt.internal.core.ReconcileWorkingCopyOperation.executeOperation
(ReconcileWorkingCopyOperation.ja
        at org.eclipse.jdt.internal.core.JavaModelOperation.run
(JavaModelOperation.java:700)
        at org.eclipse.jdt.internal.core.JavaModelOperation.runOperation
(JavaModelOperation.java:739)
        at org.eclipse.jdt.internal.core.CompilationUnit.reconcile
(CompilationUnit.java:1080)
        at 
org.eclipse.jdt.internal.ui.text.java.JavaReconcilingStrategy.reconcile
(JavaReconcilingStrategy.java:85)
        - locked <0x1696d288> (a org.eclipse.jdt.internal.core.CompilationUnit)
        at 
org.eclipse.jdt.internal.ui.text.java.JavaReconcilingStrategy.reconcile
(JavaReconcilingStrategy.java:118)
        at 
org.eclipse.jface.text.reconciler.CompositeReconcilingStrategy.reconcile
(CompositeReconcilingStrategy.java:83
        at 
org.eclipse.jdt.internal.ui.text.JavaCompositeReconcilingStrategy.reconcile
(JavaCompositeReconcilingStrategy.
        at org.eclipse.jface.text.reconciler.MonoReconciler.process
(MonoReconciler.java:76)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run
(AbstractReconciler.java:189)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x22c72258 
nid=0x6e8 runnable [264ef000..264efd88]
        at java.lang.Object.wait(Native Method)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run
(AbstractReconciler.java:161)
        - locked <0x16757b10> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQueue)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x22c65a80 
nid=0x660 runnable [25eef000..25eefd88]
        at java.lang.Object.wait(Native Method)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run
(AbstractReconciler.java:161)
        - locked <0x159460e8> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQueue)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x21c69ab0 
nid=0x700 runnable [2240f000..2240fd88]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x12087180> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQueue)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run
(AbstractReconciler.java:161)
        - locked <0x12087180> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQueue)

"Java indexing" daemon prio=4 tid=0x21bafa88 nid=0x654 in Object.wait() 
[2220f000..2220fd88]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x119da848> (a 
org.eclipse.jdt.internal.core.search.indexing.IndexManager)
        at java.lang.Object.wait(Object.java:429)
        at org.eclipse.jdt.internal.core.search.processing.JobManager.run
(JobManager.java:323)
        - locked <0x119da848> (a 
org.eclipse.jdt.internal.core.search.indexing.IndexManager)
        at java.lang.Thread.run(Thread.java:534)

"Start Level Event Dispatcher" daemon prio=5 tid=0x00966c10 nid=0x794 in 
Object.wait() [2143f000..2143fd88]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x10fec308> (a 
org.eclipse.osgi.framework.eventmgr.EventThread)
        at java.lang.Object.wait(Object.java:429)
        at org.eclipse.osgi.framework.eventmgr.EventThread.getNextEvent
(EventThread.java:167)
        - locked <0x10fec308> (a 
org.eclipse.osgi.framework.eventmgr.EventThread)
        at org.eclipse.osgi.framework.eventmgr.EventThread.run
(EventThread.java:118)

"Framework Event Dispatcher" daemon prio=5 tid=0x2106dd90 nid=0x3c0 in 
Object.wait() [2133f000..2133fd88]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x10fec388> (a 
org.eclipse.osgi.framework.eventmgr.EventThread)
        at java.lang.Object.wait(Object.java:429)
        at org.eclipse.osgi.framework.eventmgr.EventThread.getNextEvent
(EventThread.java:167)
        - locked <0x10fec388> (a 
org.eclipse.osgi.framework.eventmgr.EventThread)
        at org.eclipse.osgi.framework.eventmgr.EventThread.run
(EventThread.java:118)

"Signal Dispatcher" daemon prio=10 tid=0x009807f0 nid=0x7dc runnable [0..0]

"Finalizer" daemon prio=9 tid=0x00970820 nid=0x6c0 in Object.wait() 
[20c2f000..20c2fd88]
        at java.lang.Object.wait(Native Method)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:111)
        - locked <0x10f7fee8> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:127)
        at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)

"Reference Handler" daemon prio=10 tid=0x009714c0 nid=0x65c in Object.wait() 
[20b2f000..20b2fd88]
        at java.lang.Object.wait(Native Method)
        at java.lang.Object.wait(Object.java:429)
        at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:115)
        - locked <0x10f7ff50> (a java.lang.ref.Reference$Lock)

"main" prio=7 tid=0x00235870 nid=0x754 runnable [6f000..6fc3c]
        at org.eclipse.swt.internal.win32.OS.WaitMessage(Native Method)
        at org.eclipse.swt.widgets.Display.sleep(Display.java:2888)
        at org.eclipse.ui.application.WorkbenchAdvisor.eventLoopIdle
(WorkbenchAdvisor.java:335)
        at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1437)
        at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1407)
        at org.eclipse.ui.internal.Workbench.createAndRunWorkbench
(Workbench.java:244)
        at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:140)
        at org.eclipse.ui.internal.ide.IDEApplication.run
(IDEApplication.java:90)
        at org.eclipse.core.internal.runtime.PlatformActivator$1.run
(PlatformActivator.java:280)
        at org.eclipse.core.runtime.adaptor.EclipseStarter.run
(EclipseStarter.java:241)
        at org.eclipse.core.runtime.adaptor.EclipseStarter.run
(EclipseStarter.java:117)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke
(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke
(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:324)
        at org.eclipse.core.launcher.Main.basicRun(Main.java:267)
        at org.eclipse.core.launcher.Main.run(Main.java:692)
        at org.eclipse.core.launcher.Main.main(Main.java:676)

"VM Thread" prio=5 tid=0x00922ab0 nid=0x3d4 runnable

"VM Periodic Task Thread" prio=10 tid=0x00920610 nid=0x774 waiting on condition
"Suspend Checker Thread" prio=10 tid=0x00972e48 nid=0x744 runnable
Comment 2 Philipe Mulet CLA 2004-04-15 13:19:29 EDT
I am running on top of jdk1.4.2 with -Xmx200Mb.
Comment 3 Dirk Baeumer CLA 2004-04-15 13:26:57 EDT
Trace one: text Viewer Hover Presenter & All Types Cache active
Trace two: org.eclipse.jdt.internal.ui.text.JavaReconciler active.

Moving to text for comments. 
Comment 4 Dirk Baeumer CLA 2004-04-15 13:27:13 EDT
...
Comment 5 Dani Megert CLA 2004-04-15 13:49:00 EDT
Most likely memory leak: I get > 400Mb in half a day with recent builds.

Comment 6 Dani Megert CLA 2004-04-15 14:08:13 EDT
Dirk found out that the all types cache is much bigger. He's looking into that.
Comment 7 Dirk Baeumer CLA 2004-04-16 04:27:23 EDT
This may be caused by a leak in progress monitor. See bug 58788
Comment 8 Philipe Mulet CLA 2004-04-16 06:25:33 EDT
Just wanted to mention that both dumps were triggered while waiting for editor 
to recover (as it was frozen for a long time, no longer reacting to my input). 
Comment 9 Dani Megert CLA 2005-01-11 10:49:47 EST
Philippe, do you still see this.
Comment 10 Tod Creasey CLA 2005-03-07 11:57:28 EST
Adding my name to the cc list as we are now tracking performance issues more
closely. Please remove the performance keyword if this is not a performance bug.
Comment 11 Mike Wilson CLA 2005-04-21 14:44:36 EDT
*ping*

Philippe, is this still happening to you?
Comment 12 Philipe Mulet CLA 2005-04-21 16:02:16 EDT
Haven't seen it in the past months (given it is a year old)
Comment 13 Dani Megert CLA 2005-04-22 02:01:31 EDT
Marking as WORKSFORME.