Community
Participate
Working Groups
With a large java project (~500 files), code assist behaves abnormally slow when applied on .java files that are inside a (default package). With .java files that declare a package, code assist works normally.
Which build? Please provide numbers for "abnormally".
Tom, I assume we're not involved here.
I apologize, I am new to bugzilla: Version: 3.1.1 Build id: M20050929-0840 'Abnormally slow' means a 5 to 10 second delay.
I fail to reproduce the problem. Could you give me more detail to reproduce it or a test case ? How many classes are in the default package ? Is it occur for all kinds of completions or only for some specific cases ? (only when completing a type or only when completins a method declaration or ...)
Note: Given the same project, the problem does *not* occur in Eclipse: Version: 3.0.2 Build id: 200503110845 I am running WinXP Sp2 (all updates) with j2sdk1.4.2_10. The problem occurs in any java file in any (default package). However, the problem seems to be more evident the larger the file. The problem can be reproduced by using code assist on pretty much any type... this., String., class., etc... even unknowns cause the probem (i.e. adsfasdfas.) It is also worth mentioning that until the code assist process is complete, Eclipse seems to stall out (the cursor stops blinking).
I cannot reproduce the problem. The problem is probably due to something specific in your project or eclipse configuration. When you reproduce the problem could you do a thread dump and add it to this bug report ? With this thread dump i could see where the time is spend. Another solution would be to give me the offending project if you can.
Unfortunately, I cannot send you the project. Instead, here is a thread dump: Full thread dump Java HotSpot(TM) Client VM (1.4.2_10-b03 mixed mode): "Stack Trace Remote Thread" prio=5 tid=0x031c3b80 nid=0x9d8 waiting on condition [0..4c5fb7c] "Worker-5" prio=5 tid=0x03399d50 nid=0x8ec in Object.wait() [439f000..439fd68] at java.lang.Object.wait(Native Method) - waiting on <0x1158af68> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:173) - locked <0x1158af68> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:205) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:69) "Worker-4" prio=5 tid=0x033544b8 nid=0x17c in Object.wait() [401f000..401fd68] at java.lang.Object.wait(Native Method) - waiting on <0x1158af68> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:173) - locked <0x1158af68> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:205) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:69) "Worker-3" prio=5 tid=0x03379d98 nid=0xaa0 in Object.wait() [3fdf000..3fdfd68] at java.lang.Object.wait(Native Method) - waiting on <0x1158af68> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:173) - locked <0x1158af68> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:205) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:69) "Worker-2" prio=5 tid=0x033b6098 nid=0x92c in Object.wait() [3f9f000..3f9fd68] at java.lang.Object.wait(Native Method) - waiting on <0x1158af68> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:173) - locked <0x1158af68> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:205) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:69) "Worker-1" prio=5 tid=0x02db43f8 nid=0xfc0 in Object.wait() [3f5f000..3f5fd68] at java.lang.Object.wait(Native Method) - waiting on <0x1158af68> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:173) - locked <0x1158af68> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:205) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:69) "org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x00a37658 nid=0xd24 in Object.wait() [3dbf000..3dbfd68] at java.lang.Object.wait(Native Method) - waiting on <0x11b1f710> (a org.eclipse.jface.text.reconciler.DirtyRegionQueue) at org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run(AbstractReconciler.java:176) - locked <0x11b1f710> (a org.eclipse.jface.text.reconciler.DirtyRegionQueue) "Java indexing" daemon prio=4 tid=0x030c2ff8 nid=0xeb0 in Object.wait() [3d6f000..3d6fd68] at java.lang.Object.wait(Native Method) - waiting on <0x119cbf38> (a org.eclipse.jdt.internal.core.search.indexing.IndexManager) at java.lang.Object.wait(Unknown Source) at org.eclipse.jdt.internal.core.search.processing.JobManager.run(JobManager.java:349) - locked <0x119cbf38> (a org.eclipse.jdt.internal.core.search.indexing.IndexManager) at java.lang.Thread.run(Unknown Source) "Worker-0" prio=5 tid=0x030947f0 nid=0x4d8 in Object.wait() [393f000..393fd68] at java.lang.Object.wait(Native Method) - waiting on <0x1158af68> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:173) - locked <0x1158af68> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:205) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:69) "Start Level Event Dispatcher" daemon prio=5 tid=0x00a07b38 nid=0xc78 in Object.wait() [305f000..305fd68] at java.lang.Object.wait(Native Method) - waiting on <0x113e71f8> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread) at java.lang.Object.wait(Unknown Source) at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent(EventManager.java:349) - locked <0x113e71f8> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread) at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:287) "Framework Event Dispatcher" daemon prio=5 tid=0x02e28738 nid=0xc40 in Object.wait() [301f000..301fd68] at java.lang.Object.wait(Native Method) - waiting on <0x113e7248> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread) at java.lang.Object.wait(Unknown Source) at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent(EventManager.java:349) - locked <0x113e7248> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread) at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:287) "State Data Manager" daemon prio=5 tid=0x02e2ed20 nid=0x380 waiting on condition [2fdf000..2fdfd68] at java.lang.Thread.sleep(Native Method) at org.eclipse.osgi.framework.adaptor.core.StateManager.run(StateManager.java:289) at java.lang.Thread.run(Unknown Source) "Signal Dispatcher" daemon prio=10 tid=0x0098c268 nid=0xf00 runnable [0..0] "Finalizer" daemon prio=9 tid=0x00989898 nid=0xd4 in Object.wait() [2c2f000..2c2fd68] at java.lang.Object.wait(Native Method) - waiting on <0x113c02b0> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(Unknown Source) - locked <0x113c02b0> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(Unknown Source) at java.lang.ref.Finalizer$FinalizerThread.run(Unknown Source) "Reference Handler" daemon prio=10 tid=0x00988510 nid=0xb20 in Object.wait() [2bef000..2befd68] at java.lang.Object.wait(Native Method) - waiting on <0x113c00c8> (a java.lang.ref.Reference$Lock) at java.lang.Object.wait(Unknown Source) at java.lang.ref.Reference$ReferenceHandler.run(Unknown Source) - locked <0x113c00c8> (a java.lang.ref.Reference$Lock) "main" prio=7 tid=0x00355d00 nid=0x538 runnable [6f000..6fc08] at org.eclipse.swt.internal.win32.OS.WaitMessage(Native Method) at org.eclipse.swt.widgets.Display.sleep(Display.java:3386) at org.eclipse.ui.application.WorkbenchAdvisor.eventLoopIdle(WorkbenchAdvisor.java:333) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1700) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1663) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:367) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:143) at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:103) at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:226) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:376) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:163) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.eclipse.core.launcher.Main.invokeFramework(Main.java:334) at org.eclipse.core.launcher.Main.basicRun(Main.java:278) at org.eclipse.core.launcher.Main.run(Main.java:973) at org.eclipse.core.launcher.Main.main(Main.java:948) "VM Thread" prio=5 tid=0x009c76b0 nid=0xecc runnable "VM Periodic Task Thread" prio=10 tid=0x009c8958 nid=0x94c waiting on condition "Suspend Checker Thread" prio=10 tid=0x0098b7d0 nid=0xf68 runnable
Correction: Here is the thread dump during the 'stall': Full thread dump Java HotSpot(TM) Client VM (1.4.2_10-b03 mixed mode): "Stack Trace Remote Thread" prio=5 tid=0x044a6008 nid=0xd94 runnable [0..401fb7c] "AutoAssist Delay" prio=7 tid=0x0326a008 nid=0xc60 in Object.wait() [3d2f000..3d2fd68] at java.lang.Object.wait(Native Method) - waiting on <0x122dc890> (a org.eclipse.swt.widgets.RunnableLock) at java.lang.Object.wait(Unknown Source) at org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:169) - locked <0x122dc890> (a org.eclipse.swt.widgets.RunnableLock) at org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java:28) at org.eclipse.swt.widgets.Display.syncExec(Display.java:3413) at org.eclipse.jface.text.contentassist.ContentAssistant$AutoAssistListener.showAssist(ContentAssistant.java:324) at org.eclipse.jface.text.contentassist.ContentAssistant$AutoAssistListener.run(ContentAssistant.java:246) at java.lang.Thread.run(Unknown Source) "Worker-1" prio=5 tid=0x02db43f8 nid=0xfc0 waiting for monitor entry [3f5e000..3f5fd68] at org.eclipse.jdt.internal.core.JavaModelManager.intern(JavaModelManager.java:1713) - waiting to lock <0x118c9bc0> (a org.eclipse.jdt.internal.core.JavaModelManager) at org.eclipse.jdt.internal.core.JarPackageFragmentRoot.initPackageFragToTypes(JarPackageFragmentRoot.java:249) at org.eclipse.jdt.internal.core.JarPackageFragmentRoot.computeChildren(JarPackageFragmentRoot.java:91) at org.eclipse.jdt.internal.core.PackageFragmentRoot.buildStructure(PackageFragmentRoot.java:174) at org.eclipse.jdt.internal.core.Openable.generateInfos(Openable.java:233) at org.eclipse.jdt.internal.core.JarPackageFragment.generateInfos(JarPackageFragment.java:113) at org.eclipse.jdt.internal.core.JavaElement.openWhenClosed(JavaElement.java:488) at org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:232) at org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:218) at org.eclipse.jdt.internal.core.JavaElement.getChildren(JavaElement.java:173) at org.eclipse.jdt.internal.core.JavaElement.getChildrenOfType(JavaElement.java:187) at org.eclipse.jdt.internal.core.JarPackageFragment.getClassFiles(JarPackageFragment.java:120) at org.eclipse.jdt.internal.core.NameLookup.seekTypesInBinaryPackage(NameLookup.java:793) at org.eclipse.jdt.internal.core.NameLookup.seekTypes(NameLookup.java:769) at org.eclipse.jdt.internal.core.NameLookup.findType(NameLookup.java:542) at org.eclipse.jdt.internal.core.NameLookup.findType(NameLookup.java:501) at org.eclipse.jdt.internal.core.SearchableEnvironment.find(SearchableEnvironment.java:85) at org.eclipse.jdt.internal.core.SearchableEnvironment.findType(SearchableEnvironment.java:188) at org.eclipse.jdt.internal.core.CancelableNameEnvironment.findType(CancelableNameEnvironment.java:45) at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForType(LookupEnvironment.java:119) at org.eclipse.jdt.internal.compiler.lookup.PackageBinding.getTypeOrPackage(PackageBinding.java:178) at org.eclipse.jdt.internal.compiler.lookup.Scope.getTypeOrPackage(Scope.java:2438) at org.eclipse.jdt.internal.compiler.lookup.Scope.getType(Scope.java:2177) at org.eclipse.jdt.internal.compiler.ast.SingleTypeReference.getTypeBinding(SingleTypeReference.java:39) at org.eclipse.jdt.internal.compiler.ast.TypeReference.resolveType(TypeReference.java:124) at org.eclipse.jdt.internal.compiler.ast.Argument.resolveForCatch(Argument.java:101) at org.eclipse.jdt.internal.compiler.ast.TryStatement.resolve(TryStatement.java:517) at org.eclipse.jdt.internal.compiler.ast.Block.resolve(Block.java:101) at org.eclipse.jdt.internal.compiler.ast.ForStatement.resolve(ForStatement.java:303) at org.eclipse.jdt.internal.compiler.ast.Block.resolveUsing(Block.java:115) at org.eclipse.jdt.internal.compiler.ast.TryStatement.resolve(TryStatement.java:504) at org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.resolveStatements(AbstractMethodDeclaration.java:418) at org.eclipse.jdt.internal.compiler.ast.MethodDeclaration.resolveStatements(MethodDeclaration.java:178) at org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.resolve(AbstractMethodDeclaration.java:396) at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve(TypeDeclaration.java:1072) at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve(TypeDeclaration.java:1121) at org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.resolve(CompilationUnitDeclaration.java:305) at org.eclipse.jdt.core.dom.CompilationUnitResolver.resolve(CompilationUnitResolver.java:821) at org.eclipse.jdt.core.dom.CompilationUnitResolver.resolve(CompilationUnitResolver.java:498) at org.eclipse.jdt.core.dom.ASTParser.internalCreateAST(ASTParser.java:789) at org.eclipse.jdt.core.dom.ASTParser.createAST(ASTParser.java:588) at org.eclipse.jdt.internal.ui.javaeditor.ASTProvider$1.run(ASTProvider.java:566) at org.eclipse.core.internal.runtime.InternalPlatform.run(InternalPlatform.java:1044) at org.eclipse.core.runtime.Platform.run(Platform.java:783) at org.eclipse.jdt.internal.ui.javaeditor.ASTProvider.createAST(ASTProvider.java:563) at org.eclipse.jdt.internal.ui.javaeditor.ASTProvider.getAST(ASTProvider.java:493) at org.eclipse.jdt.internal.ui.viewsupport.SelectionListenerWithASTManager$PartListenerGroup.calculateASTandInform(SelectionListenerWithASTManager.java:165) at org.eclipse.jdt.internal.ui.viewsupport.SelectionListenerWithASTManager$3.run(SelectionListenerWithASTManager.java:142) - locked <0x11a67e40> (a java.lang.Object) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:76) "org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x00a37658 nid=0xd24 runnable [3dbe000..3dbfd68] at java.util.zip.ZipFile.getNextEntry(Native Method) at java.util.zip.ZipFile.access$400(Unknown Source) at java.util.zip.ZipFile$2.nextElement(Unknown Source) - locked <0x12690930> (a java.util.zip.ZipFile) at org.eclipse.jdt.internal.core.JarPackageFragmentRoot.computeChildren(JarPackageFragmentRoot.java:86) at org.eclipse.jdt.internal.core.PackageFragmentRoot.buildStructure(PackageFragmentRoot.java:174) at org.eclipse.jdt.internal.core.Openable.generateInfos(Openable.java:233) at org.eclipse.jdt.internal.core.JarPackageFragment.generateInfos(JarPackageFragment.java:113) at org.eclipse.jdt.internal.core.JavaElement.openWhenClosed(JavaElement.java:488) at org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:232) at org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:218) at org.eclipse.jdt.internal.core.JavaElement.getChildren(JavaElement.java:173) at org.eclipse.jdt.internal.core.JavaElement.getChildrenOfType(JavaElement.java:187) at org.eclipse.jdt.internal.core.JarPackageFragment.getClassFiles(JarPackageFragment.java:120) at org.eclipse.jdt.internal.core.NameLookup.seekTypesInBinaryPackage(NameLookup.java:793) at org.eclipse.jdt.internal.core.NameLookup.seekTypes(NameLookup.java:769) at org.eclipse.jdt.internal.core.NameLookup.findType(NameLookup.java:542) at org.eclipse.jdt.internal.core.NameLookup.findType(NameLookup.java:501) at org.eclipse.jdt.internal.core.SearchableEnvironment.find(SearchableEnvironment.java:85) at org.eclipse.jdt.internal.core.SearchableEnvironment.findType(SearchableEnvironment.java:188) at org.eclipse.jdt.internal.core.CancelableNameEnvironment.findType(CancelableNameEnvironment.java:45) at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForType(LookupEnvironment.java:119) at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getType(LookupEnvironment.java:741) at org.eclipse.jdt.internal.compiler.lookup.Scope.getJavaLangObject(Scope.java:2040) at org.eclipse.jdt.internal.compiler.lookup.ClassScope.connectSuperclass(ClassScope.java:763) at org.eclipse.jdt.internal.compiler.lookup.ClassScope.connectTypeHierarchy(ClassScope.java:947) at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.connectTypeHierarchy(CompilationUnitScope.java:258) at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.completeTypeBindings(LookupEnvironment.java:195) at org.eclipse.jdt.internal.compiler.Compiler.resolve(Compiler.java:556) at org.eclipse.jdt.internal.core.CompilationUnitProblemFinder.process(CompilationUnitProblemFinder.java:175) at org.eclipse.jdt.internal.core.CompilationUnit.buildStructure(CompilationUnit.java:156) at org.eclipse.jdt.internal.core.Openable.generateInfos(Openable.java:233) at org.eclipse.jdt.internal.core.JavaElement.openWhenClosed(JavaElement.java:488) at org.eclipse.jdt.internal.core.CompilationUnit.makeConsistent(CompilationUnit.java:956) at org.eclipse.jdt.internal.core.ReconcileWorkingCopyOperation.executeOperation(ReconcileWorkingCopyOperation.java:61) at org.eclipse.jdt.internal.core.JavaModelOperation.run(JavaModelOperation.java:718) at org.eclipse.jdt.internal.core.JavaModelOperation.runOperation(JavaModelOperation.java:777) at org.eclipse.jdt.internal.core.CompilationUnit.reconcile(CompilationUnit.java:1081) at org.eclipse.jdt.internal.ui.text.java.JavaReconcilingStrategy$1.run(JavaReconcilingStrategy.java:98) - locked <0x11959270> (a org.eclipse.jdt.internal.core.CompilationUnit) at org.eclipse.core.internal.runtime.InternalPlatform.run(InternalPlatform.java:1044) at org.eclipse.core.runtime.Platform.run(Platform.java:783) at org.eclipse.jdt.internal.ui.text.java.JavaReconcilingStrategy.reconcile(JavaReconcilingStrategy.java:82) at org.eclipse.jdt.internal.ui.text.java.JavaReconcilingStrategy.reconcile(JavaReconcilingStrategy.java:147) at org.eclipse.jdt.internal.ui.text.CompositeReconcilingStrategy.reconcile(CompositeReconcilingStrategy.java:86) at org.eclipse.jdt.internal.ui.text.JavaCompositeReconcilingStrategy.reconcile(JavaCompositeReconcilingStrategy.java:94) at org.eclipse.jface.text.reconciler.MonoReconciler.process(MonoReconciler.java:75) at org.eclipse.jdt.internal.ui.text.JavaReconciler.process(JavaReconciler.java:339) - locked <0x1190fee0> (a java.lang.Object) at org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run(AbstractReconciler.java:204) "Java indexing" daemon prio=4 tid=0x030c2ff8 nid=0xeb0 in Object.wait() [3d6f000..3d6fd68] at java.lang.Object.wait(Native Method) - waiting on <0x118d15a8> (a org.eclipse.jdt.internal.core.search.indexing.IndexManager) at java.lang.Object.wait(Unknown Source) at org.eclipse.jdt.internal.core.search.processing.JobManager.run(JobManager.java:349) - locked <0x118d15a8> (a org.eclipse.jdt.internal.core.search.indexing.IndexManager) at java.lang.Thread.run(Unknown Source) "Worker-0" prio=5 tid=0x030947f0 nid=0x4d8 in Object.wait() [393f000..393fd68] at java.lang.Object.wait(Native Method) - waiting on <0x114e4ce8> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:173) - locked <0x114e4ce8> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:205) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:69) "Start Level Event Dispatcher" daemon prio=5 tid=0x00a07b38 nid=0xc78 in Object.wait() [305f000..305fd68] at java.lang.Object.wait(Native Method) - waiting on <0x113e2278> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread) at java.lang.Object.wait(Unknown Source) at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent(EventManager.java:349) - locked <0x113e2278> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread) at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:287) "Framework Event Dispatcher" daemon prio=5 tid=0x02e28738 nid=0xc40 in Object.wait() [301f000..301fd68] at java.lang.Object.wait(Native Method) - waiting on <0x113e22c8> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread) at java.lang.Object.wait(Unknown Source) at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent(EventManager.java:349) - locked <0x113e22c8> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread) at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:287) "State Data Manager" daemon prio=5 tid=0x02e2ed20 nid=0x380 waiting on condition [2fdf000..2fdfd68] at java.lang.Thread.sleep(Native Method) at org.eclipse.osgi.framework.adaptor.core.StateManager.run(StateManager.java:289) at java.lang.Thread.run(Unknown Source) "Signal Dispatcher" daemon prio=10 tid=0x0098c268 nid=0xf00 runnable [0..0] "Finalizer" daemon prio=9 tid=0x00989898 nid=0xd4 in Object.wait() [2c2f000..2c2fd68] at java.lang.Object.wait(Native Method) - waiting on <0x113c02b0> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(Unknown Source) - locked <0x113c02b0> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(Unknown Source) at java.lang.ref.Finalizer$FinalizerThread.run(Unknown Source) "Reference Handler" daemon prio=10 tid=0x00988510 nid=0xb20 in Object.wait() [2bef000..2befd68] at java.lang.Object.wait(Native Method) - waiting on <0x113c00c8> (a java.lang.ref.Reference$Lock) at java.lang.Object.wait(Unknown Source) at java.lang.ref.Reference$ReferenceHandler.run(Unknown Source) - locked <0x113c00c8> (a java.lang.ref.Reference$Lock) "main" prio=7 tid=0x00355d00 nid=0x538 runnable [6e000..6fc08] at org.eclipse.jdt.internal.core.JavaModelManager.removeInfoAndChildren(JavaModelManager.java:2077) - waiting to lock <0x118c9bc0> (a org.eclipse.jdt.internal.core.JavaModelManager) at org.eclipse.jdt.internal.core.JavaElement.close(JavaElement.java:75) at org.eclipse.jdt.internal.core.JavaModelManager.removeInfoAndChildren(JavaModelManager.java:2111) - locked <0x118c9bc0> (a org.eclipse.jdt.internal.core.JavaModelManager) at org.eclipse.jdt.internal.core.JavaElement.close(JavaElement.java:75) at org.eclipse.jdt.internal.core.JavaModelManager.removeInfoAndChildren(JavaModelManager.java:2111) - locked <0x118c9bc0> (a org.eclipse.jdt.internal.core.JavaModelManager) at org.eclipse.jdt.internal.core.JavaElement.close(JavaElement.java:75) at org.eclipse.jdt.internal.core.ElementCache.close(ElementCache.java:53) at org.eclipse.jdt.internal.core.OverflowingLRUCache.privateRemoveEntry(OverflowingLRUCache.java:295) at org.eclipse.jdt.internal.core.OverflowingLRUCache.makeSpace(OverflowingLRUCache.java:183) at org.eclipse.jdt.internal.core.OverflowingLRUCache.put(OverflowingLRUCache.java:362) at org.eclipse.jdt.internal.core.JavaModelCache.putInfo(JavaModelCache.java:128) at org.eclipse.jdt.internal.core.JavaModelManager.putInfos(JavaModelManager.java:1973) - locked <0x118c9bc0> (a org.eclipse.jdt.internal.core.JavaModelManager) at org.eclipse.jdt.internal.core.JavaElement.openWhenClosed(JavaElement.java:502) at org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:232) at org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:218) at org.eclipse.jdt.internal.core.JavaElement.getChildren(JavaElement.java:173) at org.eclipse.jdt.internal.core.JavaElement.getChildrenOfType(JavaElement.java:187) at org.eclipse.jdt.internal.core.JarPackageFragment.getClassFiles(JarPackageFragment.java:120) at org.eclipse.jdt.internal.core.NameLookup.seekTypesInBinaryPackage(NameLookup.java:793) at org.eclipse.jdt.internal.core.NameLookup.seekTypes(NameLookup.java:769) at org.eclipse.jdt.internal.core.NameLookup.findType(NameLookup.java:542) at org.eclipse.jdt.internal.core.NameLookup.findType(NameLookup.java:501) at org.eclipse.jdt.internal.core.SearchableEnvironment.find(SearchableEnvironment.java:85) at org.eclipse.jdt.internal.core.SearchableEnvironment.findType(SearchableEnvironment.java:188) at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForType(LookupEnvironment.java:119) at org.eclipse.jdt.internal.compiler.lookup.PackageBinding.getTypeOrPackage(PackageBinding.java:178) at org.eclipse.jdt.internal.compiler.lookup.Scope.getTypeOrPackage(Scope.java:2438) at org.eclipse.jdt.internal.compiler.lookup.Scope.getType(Scope.java:2177) at org.eclipse.jdt.internal.compiler.ast.SingleTypeReference.getTypeBinding(SingleTypeReference.java:39) at org.eclipse.jdt.internal.compiler.ast.TypeReference.resolveType(TypeReference.java:124) at org.eclipse.jdt.internal.compiler.lookup.SourceTypeBinding.resolveTypesFor(SourceTypeBinding.java:1248) at org.eclipse.jdt.internal.compiler.lookup.SourceTypeBinding.methods(SourceTypeBinding.java:1011) at org.eclipse.jdt.internal.compiler.lookup.SourceTypeBinding.faultInTypesForFieldsAndMethods(SourceTypeBinding.java:617) at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.faultInTypes(CompilationUnitScope.java:397) at org.eclipse.jdt.internal.codeassist.CompletionEngine.complete(CompletionEngine.java:1513) at org.eclipse.jdt.internal.core.Openable.codeComplete(Openable.java:128) at org.eclipse.jdt.internal.core.CompilationUnit.codeComplete(CompilationUnit.java:301) at org.eclipse.jdt.internal.core.CompilationUnit.codeComplete(CompilationUnit.java:294) at org.eclipse.jdt.internal.ui.text.java.JavaCompletionProcessor.internalComputeCompletionProposals(JavaCompletionProcessor.java:336) at org.eclipse.jdt.internal.ui.text.java.JavaCompletionProcessor.computeCompletionProposals(JavaCompletionProcessor.java:313) at org.eclipse.jface.text.contentassist.ContentAssistant.computeCompletionProposals(ContentAssistant.java:1503) at org.eclipse.jface.text.contentassist.CompletionProposalPopup.computeProposals(CompletionProposalPopup.java:301) at org.eclipse.jface.text.contentassist.CompletionProposalPopup.access$13(CompletionProposalPopup.java:298) at org.eclipse.jface.text.contentassist.CompletionProposalPopup$2.run(CompletionProposalPopup.java:261) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:69) at org.eclipse.jface.text.contentassist.CompletionProposalPopup.showProposals(CompletionProposalPopup.java:256) at org.eclipse.jface.text.contentassist.ContentAssistant$2.run(ContentAssistant.java:327) at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35) at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:123) - locked <0x122dc890> (a org.eclipse.swt.widgets.RunnableLock) at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3057) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2716) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1699) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1663) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:367) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:143) at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:103) at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:226) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:376) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:163) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.eclipse.core.launcher.Main.invokeFramework(Main.java:334) at org.eclipse.core.launcher.Main.basicRun(Main.java:278) at org.eclipse.core.launcher.Main.run(Main.java:973) at org.eclipse.core.launcher.Main.main(Main.java:948) "VM Thread" prio=5 tid=0x009c76b0 nid=0xecc runnable "VM Periodic Task Thread" prio=10 tid=0x009c8958 nid=0x94c waiting on condition "Suspend Checker Thread" prio=10 tid=0x0098b7d0 nid=0xf68 runnable
(In reply to comment #6) > I cannot reproduce the problem. The problem is probably due to something > specific in your project or eclipse configuration. > When you reproduce the problem could you do a thread dump and add it to this > bug report ? With this thread dump i could see where the time is spend. > Another solution would be to give me the offending project if you can. Any luck with the thread dump?
From the thread dump, it looks like a dup of bug 121652. Can you please try with one of the latest integration builds (e.g. I20060216-0010) or with 3.2 M5 when it is available (end of the week) ?
i was never able to reproduce the problem and it's probably a duplicate of bug 121652. If you can reproduce the problem with a recent build, reopen this bug.
As of now 'LATER' and 'REMIND' resolutions are no longer supported. Please reopen this bug if it is still valid for you.