Bug 93235 'Build Path > Use as Source Folder' freezes for 3 minutes with autobuild running
I20050426-1700 I have autobuild enabled and was rebuilding my workspace in the background. From the context menu of a (non-source) folder inside a plugin, I chose 'Build Path > Use as Source Folder'. Eclipse froze for about 3 minutes (but the build was apparently progressing). Stackdump while the UI was stale: Full thread dump Java HotSpot(TM) Client VM (1.5.0_03-b05 mixed mode): "org.eclipse.jface.text.reconciler.MonoReconciler" daemon prio=2 tid=0x1ac9a6b0 nid=0x37c in Object.wait() [0x1d68f000..0x1d68fc68] at java.lang.Object.wait(Native Method) at org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run(AbstractReconciler.java:176) - locked <0x088cf578> (a org.eclipse.jface.text.reconciler.DirtyRegionQueue) "org.eclipse.jface.text.reconciler.MonoReconciler" daemon prio=2 tid=0x1be58d50 nid=0xd18 in Object.wait() [0x1d19f000..0x1d19fce8] at java.lang.Object.wait(Native Method) at org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run(AbstractReconciler.java:176) - locked <0x088cf5f0> (a org.eclipse.jface.text.reconciler.DirtyRegionQueue) "org.eclipse.jface.text.reconciler.MonoReconciler" daemon prio=2 tid=0x1acac518 nid=0x87c in Object.wait() [0x1d15f000..0x1d15fd68] at java.lang.Object.wait(Native Method) at org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run(AbstractReconciler.java:176) - locked <0x088cf668> (a org.eclipse.jface.text.reconciler.DirtyRegionQueue) "StandardManager[/help]" daemon prio=7 tid=0x1b887968 nid=0x68c waiting on condition [0x1cc1f000..0x1cc1fa68] at java.lang.Thread.sleep(Native Method) at org.apache.catalina.session.StandardManager.threadSleep(StandardManager.java:810) at org.apache.catalina.session.StandardManager.run(StandardManager.java:869) at java.lang.Thread.run(Thread.java:595) "TP-Monitor" daemon prio=7 tid=0x1b9ad010 nid=0xf90 in Object.wait() [0x1cbdf000..0x1cbdfae8] at java.lang.Object.wait(Native Method) - waiting on <0x07ee2270> (a org.apache.tomcat.util.threads.ThreadPool$MonitorRunnable) at org.apache.tomcat.util.threads.ThreadPool$MonitorRunnable.run(ThreadPool.java:560) - locked <0x07ee2270> (a org.apache.tomcat.util.threads.ThreadPool$MonitorRunnable) at java.lang.Thread.run(Thread.java:595) "TP-Processor4" daemon prio=7 tid=0x1b960630 nid=0x868 in Object.wait() [0x1cb9f000..0x1cb9fb68] at java.lang.Object.wait(Native Method) - waiting on <0x07ee2428> (a org.apache.tomcat.util.threads.ThreadPool$ControlRunnable) at java.lang.Object.wait(Object.java:492) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:656) - locked <0x07ee2428> (a org.apache.tomcat.util.threads.ThreadPool$ControlRunnable) at java.lang.Thread.run(Thread.java:595) "TP-Processor3" daemon prio=7 tid=0x1b960020 nid=0x740 in Object.wait() [0x1cb5f000..0x1cb5fbe8] at java.lang.Object.wait(Native Method) - waiting on <0x07ee24c0> (a org.apache.tomcat.util.threads.ThreadPool$ControlRunnable) at java.lang.Object.wait(Object.java:492) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:656) - locked <0x07ee24c0> (a org.apache.tomcat.util.threads.ThreadPool$ControlRunnable) at java.lang.Thread.run(Thread.java:595) "TP-Processor2" daemon prio=7 tid=0x1ad26770 nid=0xe68 runnable [0x1cb1f000..0x1cb1fc68] at java.net.PlainSocketImpl.socketAccept(Native Method) at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:384) - locked <0x07ee2318> (a java.net.SocksSocketImpl) at java.net.ServerSocket.implAccept(ServerSocket.java:450) at java.net.ServerSocket.accept(ServerSocket.java:421) at org.apache.tomcat.util.net.DefaultServerSocketFactory.acceptSocket(DefaultServerSocketFactory.java:107) at org.apache.tomcat.util.net.PoolTcpEndpoint.acceptSocket(PoolTcpEndpoint.java:387) at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:557) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683) at java.lang.Thread.run(Thread.java:595) "TP-Processor1" daemon prio=7 tid=0x1ad7be20 nid=0x9c4 in Object.wait() [0x1cadf000..0x1cadfce8] at java.lang.Object.wait(Native Method) - waiting on <0x07ee25f0> (a org.apache.tomcat.util.threads.ThreadPool$ControlRunnable) at java.lang.Object.wait(Object.java:492) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:656) - locked <0x07ee25f0> (a org.apache.tomcat.util.threads.ThreadPool$ControlRunnable) at java.lang.Thread.run(Thread.java:595) "StandardManager[]" daemon prio=7 tid=0x1b9177f8 nid=0x908 waiting on condition [0x1c91f000..0x1c91fd68] at java.lang.Thread.sleep(Native Method) at org.apache.catalina.session.StandardManager.threadSleep(StandardManager.java:810) at org.apache.catalina.session.StandardManager.run(StandardManager.java:869) at java.lang.Thread.run(Thread.java:595) "Worker-35" prio=5 tid=0x1abd3b60 nid=0x1e0 in Object.wait() [0x1c85f000..0x1c85f9e8] at java.lang.Object.wait(Native Method) at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:168) - locked <0x046890a0> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:200) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:60) "Worker-34" prio=5 tid=0x1abc3750 nid=0xf38 in Object.wait() [0x1c8df000..0x1c8df9e8] at java.lang.Object.wait(Native Method) at org.eclipse.team.internal.core.BackgroundEventHandler.isReadyForDispatch(BackgroundEventHandler.java:388) - locked <0x05d40e88> (a org.eclipse.team.internal.ccvs.ui.subscriber.LogEntryCacheUpdateHandler) at org.eclipse.team.internal.core.BackgroundEventHandler.processEvents(BackgroundEventHandler.java:333) at org.eclipse.team.internal.core.BackgroundEventHandler$1.run(BackgroundEventHandler.java:173) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:67) "Worker-33" prio=5 tid=0x1abbba50 nid=0xa34 in Object.wait() [0x1c99f000..0x1c99fd68] at java.lang.Object.wait(Native Method) at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:168) - locked <0x046890a0> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:200) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:60) "Worker-32" prio=5 tid=0x1ab77958 nid=0x4ec in Object.wait() [0x1c95f000..0x1c95f9e8] at java.lang.Object.wait(Native Method) at org.eclipse.team.internal.core.BackgroundEventHandler.isReadyForDispatch(BackgroundEventHandler.java:388) - locked <0x05800050> (a org.eclipse.team.internal.ui.synchronize.SynchronizeModelUpdateHandler) at org.eclipse.team.internal.core.BackgroundEventHandler.processEvents(BackgroundEventHandler.java:333) at org.eclipse.team.internal.core.BackgroundEventHandler$1.run(BackgroundEventHandler.java:173) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:67) "Worker-31" prio=5 tid=0x1abc12d8 nid=0x55c in Object.wait() [0x1b7ef000..0x1b7efbe8] at java.lang.Object.wait(Native Method) - waiting on <0x078fc638> (a org.eclipse.core.internal.jobs.ThreadJob) at org.eclipse.core.internal.jobs.ThreadJob.joinRun(ThreadJob.java:170) - locked <0x078fc638> (a org.eclipse.core.internal.jobs.ThreadJob) at org.eclipse.core.internal.jobs.ImplicitJobs.begin(ImplicitJobs.java:88) at org.eclipse.core.internal.jobs.JobManager.beginRule(JobManager.java:190) at org.eclipse.core.internal.resources.WorkManager.checkIn(WorkManager.java:96) at org.eclipse.core.internal.resources.Workspace.prepareOperation(Workspace.java:1671) at org.eclipse.core.internal.resources.Resource.refreshLocal(Resource.java:1240) at org.eclipse.debug.ui.RefreshTab.refreshResources(RefreshTab.java:440) at org.eclipse.ui.externaltools.internal.program.launchConfigurations.BackgroundResourceRefresher$1.run(BackgroundResourceRefresher.java:77) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:67) "Worker-30" prio=5 tid=0x1ba1ddb0 nid=0x208 in Object.wait() [0x1b7af000..0x1b7afc68] at java.lang.Object.wait(Native Method) at org.eclipse.team.internal.core.BackgroundEventHandler.isReadyForDispatch(BackgroundEventHandler.java:388) - locked <0x0577ede0> (a org.eclipse.team.internal.core.subscribers.SubscriberChangeSetCollector$EventHandler) at org.eclipse.team.internal.core.BackgroundEventHandler.processEvents(BackgroundEventHandler.java:333) at org.eclipse.team.internal.core.BackgroundEventHandler$1.run(BackgroundEventHandler.java:173) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:67) "Worker-29" prio=5 tid=0x1aa0d828 nid=0xce0 runnable [0x1b76e000..0x1b76fce8] at java.io.FileInputStream.open(Native Method) at java.io.FileInputStream.<init>(FileInputStream.java:106) at org.eclipse.core.internal.resources.ContentDescriptionManager$LazyFileInputStream.ensureOpened(ContentDescriptionManager.java:145) at org.eclipse.core.internal.resources.ContentDescriptionManager$LazyFileInputStream.read(ContentDescriptionManager.java:154) at java.io.InputStream.read(InputStream.java:89) at org.eclipse.core.internal.content.LazyInputStream.loadBlock(LazyInputStream.java:99) at org.eclipse.core.internal.content.LazyInputStream.ensureAvailable(LazyInputStream.java:64) at org.eclipse.core.internal.content.LazyInputStream.read(LazyInputStream.java:119) at org.eclipse.core.internal.content.TextContentDescriber.getByteOrderMark(TextContentDescriber.java:65) at org.eclipse.core.internal.content.TextContentDescriber.describe(TextContentDescriber.java:49) at org.eclipse.core.internal.content.ContentType.describe(ContentType.java:171) at org.eclipse.core.internal.content.ContentType.internalGetDescriptionFor(ContentType.java:476) at org.eclipse.core.internal.content.ContentTypeCatalog.getDescriptionFor(ContentTypeCatalog.java:343) at org.eclipse.core.internal.content.ContentTypeCatalog.getDescriptionFor(ContentTypeCatalog.java:347) at org.eclipse.core.internal.content.ContentTypeMatcher.getDescriptionFor(ContentTypeMatcher.java:67) at org.eclipse.core.internal.resources.ContentDescriptionManager.readDescription(ContentDescriptionManager.java:370) at org.eclipse.core.internal.resources.ContentDescriptionManager.getDescriptionFor(ContentDescriptionManager.java:309) - locked <0x053938e8> (a org.eclipse.core.internal.resources.ContentDescriptionManager) at org.eclipse.core.internal.resources.File.internalGetCharset(File.java:257) at org.eclipse.core.internal.resources.File.getCharset(File.java:218) at org.eclipse.core.internal.resources.File.getCharset(File.java:205) at org.eclipse.jdt.internal.core.util.Util.getResourceContentsAsCharArray(Util.java:982) at org.eclipse.jdt.internal.core.builder.SourceFile.getContents(SourceFile.java:79) at org.eclipse.jdt.internal.compiler.parser.Parser.parse(Parser.java:8595) at org.eclipse.jdt.internal.compiler.parser.Parser.parse(Parser.java:8577) at org.eclipse.jdt.internal.compiler.parser.Parser.dietParse(Parser.java:7376) at org.eclipse.jdt.internal.compiler.Compiler.accept(Compiler.java:217) at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForType(LookupEnvironment.java:128) at org.eclipse.jdt.internal.compiler.lookup.PackageBinding.getTypeOrPackage(PackageBinding.java:178) at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.findImport(CompilationUnitScope.java:382) at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.findSingleImport(CompilationUnitScope.java:435) at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.faultInImports(CompilationUnitScope.java:308) at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.faultInTypes(CompilationUnitScope.java:369) at org.eclipse.jdt.internal.compiler.Compiler.process(Compiler.java:497) at org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:329) at org.eclipse.jdt.internal.core.builder.AbstractImageBuilder.compile(AbstractImageBuilder.java:240) at org.eclipse.jdt.internal.core.builder.AbstractImageBuilder.compile(AbstractImageBuilder.java:213) at org.eclipse.jdt.internal.core.builder.BatchImageBuilder.build(BatchImageBuilder.java:50) at org.eclipse.jdt.internal.core.builder.JavaBuilder.buildAll(JavaBuilder.java:213) at org.eclipse.jdt.internal.core.builder.JavaBuilder.build(JavaBuilder.java:136) at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:581) at org.eclipse.core.internal.runtime.InternalPlatform.run(InternalPlatform.java:1026) at org.eclipse.core.runtime.Platform.run(Platform.java:757) at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:160) at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:198) at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:227) at org.eclipse.core.internal.runtime.InternalPlatform.run(InternalPlatform.java:1026) at org.eclipse.core.runtime.Platform.run(Platform.java:757) at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:230) at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:249) at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:278) at org.eclipse.core.internal.resources.Workspace.build(Workspace.java:211) at org.eclipse.ui.actions.GlobalBuildAction$1.run(GlobalBuildAction.java:183) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:67) "Worker-28" prio=5 tid=0x1a7d4268 nid=0xeac in Object.wait() [0x1b5df000..0x1b5dfd68] at java.lang.Object.wait(Native Method) at org.eclipse.team.internal.core.BackgroundEventHandler.isReadyForDispatch(BackgroundEventHandler.java:388) - locked <0x057a6b50> (a org.eclipse.team.internal.core.subscribers.SubscriberEventHandler) at org.eclipse.team.internal.core.BackgroundEventHandler.processEvents(BackgroundEventHandler.java:333) at org.eclipse.team.internal.core.BackgroundEventHandler$1.run(BackgroundEventHandler.java:173) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:67) "Worker-27" prio=5 tid=0x1aa703f0 nid=0xaec in Object.wait() [0x1b59f000..0x1b59f9e8] at java.lang.Object.wait(Native Method) at org.eclipse.core.internal.jobs.ThreadJob.joinRun(ThreadJob.java:170) - locked <0x088cf678> (a org.eclipse.core.internal.jobs.ThreadJob) at org.eclipse.core.internal.jobs.ImplicitJobs.begin(ImplicitJobs.java:88) at org.eclipse.core.internal.jobs.JobManager.beginRule(JobManager.java:190) at org.eclipse.ui.internal.editors.quickdiff.LastSaveReferenceProvider.lockDocument(LastSaveReferenceProvider.java:285) at org.eclipse.ui.internal.editors.quickdiff.LastSaveReferenceProvider.readDocument(LastSaveReferenceProvider.java:237) at org.eclipse.ui.internal.editors.quickdiff.LastSaveReferenceProvider.getReference(LastSaveReferenceProvider.java:118) at org.eclipse.ui.internal.texteditor.quickdiff.DocumentLineDiffer$1.run(DocumentLineDiffer.java:447) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:67) "Worker-26" prio=5 tid=0x1ab2bdb8 nid=0x3cc in Object.wait() [0x1b49f000..0x1b49fa68] at java.lang.Object.wait(Native Method) at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:168) - locked <0x046890a0> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:200) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:60) "Worker-25" prio=5 tid=0x1aab9408 nid=0xb9c in Object.wait() [0x1a57f000..0x1a57fae8] at java.lang.Object.wait(Native Method) - waiting on <0x076139d8> (a org.eclipse.core.internal.jobs.ThreadJob) at org.eclipse.core.internal.jobs.ThreadJob.joinRun(ThreadJob.java:170) - locked <0x076139d8> (a org.eclipse.core.internal.jobs.ThreadJob) at org.eclipse.core.internal.jobs.ImplicitJobs.begin(ImplicitJobs.java:88) at org.eclipse.core.internal.jobs.JobManager.beginRule(JobManager.java:190) at org.eclipse.core.internal.utils.StringPoolJob.run(StringPoolJob.java:91) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:67) "Worker-24" prio=5 tid=0x1aae5408 nid=0x4fc in Object.wait() [0x1b4df000..0x1b4dfb68] at java.lang.Object.wait(Native Method) at org.eclipse.core.internal.jobs.ThreadJob.joinRun(ThreadJob.java:170) - locked <0x088cf9b8> (a org.eclipse.core.internal.jobs.ThreadJob) at org.eclipse.core.internal.jobs.ImplicitJobs.begin(ImplicitJobs.java:88) at org.eclipse.core.internal.jobs.JobManager.beginRule(JobManager.java:190) at org.eclipse.ui.internal.editors.quickdiff.LastSaveReferenceProvider.lockDocument(LastSaveReferenceProvider.java:285) at org.eclipse.ui.internal.editors.quickdiff.LastSaveReferenceProvider.readDocument(LastSaveReferenceProvider.java:237) at org.eclipse.ui.internal.editors.quickdiff.LastSaveReferenceProvider.getReference(LastSaveReferenceProvider.java:118) at org.eclipse.ui.internal.texteditor.quickdiff.DocumentLineDiffer$1.run(DocumentLineDiffer.java:447) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:67) "Worker-21" prio=5 tid=0x1aa18898 nid=0xbc0 in Object.wait() [0x1b55f000..0x1b55fb68] at java.lang.Object.wait(Native Method) at org.eclipse.core.internal.jobs.ThreadJob.joinRun(ThreadJob.java:170) - locked <0x088cfce0> (a org.eclipse.core.internal.jobs.ThreadJob) at org.eclipse.core.internal.jobs.ImplicitJobs.begin(ImplicitJobs.java:88) at org.eclipse.core.internal.jobs.JobManager.beginRule(JobManager.java:190) at org.eclipse.ui.internal.editors.quickdiff.LastSaveReferenceProvider.lockDocument(LastSaveReferenceProvider.java:285) at org.eclipse.ui.internal.editors.quickdiff.LastSaveReferenceProvider.readDocument(LastSaveReferenceProvider.java:237) at org.eclipse.ui.internal.editors.quickdiff.LastSaveReferenceProvider.getReference(LastSaveReferenceProvider.java:118) at org.eclipse.ui.internal.texteditor.quickdiff.DocumentLineDiffer$1.run(DocumentLineDiffer.java:447) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:67) "Worker-18" prio=5 tid=0x1aae6af0 nid=0xa80 in Object.wait() [0x1c89f000..0x1c89fce8] at java.lang.Object.wait(Native Method) at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:168) - locked <0x046890a0> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:200) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:60) "YJP Listener Thread" prio=7 tid=0x1a8c37b0 nid=0xdd4 runnable [0x1b6af000..0x1b6afbe8] at java.net.PlainSocketImpl.socketAccept(Native Method) at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:384) - locked <0x069c6b38> (a java.net.SocksSocketImpl) at java.net.ServerSocket.implAccept(ServerSocket.java:450) at java.net.ServerSocket.accept(ServerSocket.java:421) at com.yourkit.b.a.run(a:39) "org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x19f0d3d0 nid=0xa58 in Object.wait() [0x1b3af000..0x1b3afc68] at java.lang.Object.wait(Native Method) - waiting on <0x05626c58> (a org.eclipse.jface.text.reconciler.DirtyRegionQueue) at org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run(AbstractReconciler.java:176) - locked <0x05626c58> (a org.eclipse.jface.text.reconciler.DirtyRegionQueue) "Java indexing" daemon prio=4 tid=0x1a8aa000 nid=0xf60 in Object.wait() [0x1b26f000..0x1b26fce8] at java.lang.Object.wait(Native Method) - waiting on <0x054fbdc0> (a org.eclipse.jdt.internal.core.search.indexing.IndexManager) at java.lang.Object.wait(Object.java:492) at org.eclipse.jdt.internal.core.search.processing.JobManager.run(JobManager.java:346) - locked <0x054fbdc0> (a org.eclipse.jdt.internal.core.search.indexing.IndexManager) at java.lang.Thread.run(Thread.java:595) "Start Level Event Dispatcher" daemon prio=5 tid=0x19e7b9f0 nid=0x578 in Object.wait() [0x1a4ef000..0x1a4efbe8] at java.lang.Object.wait(Native Method) - waiting on <0x045af700> (a org.eclipse.osgi.framework.eventmgr.EventThread) at java.lang.Object.wait(Object.java:492) at org.eclipse.osgi.framework.eventmgr.EventThread.getNextEvent(EventThread.java:162) - locked <0x045af700> (a org.eclipse.osgi.framework.eventmgr.EventThread) at org.eclipse.osgi.framework.eventmgr.EventThread.run(EventThread.java:100) "Framework Event Dispatcher" daemon prio=5 tid=0x19e80260 nid=0xf1c in Object.wait() [0x1a46f000..0x1a46fce8] at java.lang.Object.wait(Native Method) - waiting on <0x045a2da0> (a org.eclipse.osgi.framework.eventmgr.EventThread) at java.lang.Object.wait(Object.java:492) at org.eclipse.osgi.framework.eventmgr.EventThread.getNextEvent(EventThread.java:162) - locked <0x045a2da0> (a org.eclipse.osgi.framework.eventmgr.EventThread) at org.eclipse.osgi.framework.eventmgr.EventThread.run(EventThread.java:100) "Low Memory Detector" daemon prio=5 tid=0x00344028 nid=0x564 runnable [0x00000000..0x00000000] "CompilerThread0" daemon prio=10 tid=0x00347b00 nid=0x2fc waiting on condition [0x00000000..0x19d8f8cc] "Signal Dispatcher" daemon prio=10 tid=0x00342b80 nid=0xc58 waiting on condition [0x00000000..0x00000000] "YJP CPU Sampler" daemon prio=5 tid=0x0035ab78 nid=0xa2c runnable [0x00000000..0x00000000] "YJP RequestServer" daemon prio=5 tid=0x0035a9f8 nid=0xaf0 runnable [0x19ccf000..0x19ccfb68] at java.net.PlainSocketImpl.socketAccept(Native Method) at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:384) - locked <0x04572628> (a java.net.SocksSocketImpl) at java.net.ServerSocket.implAccept(ServerSocket.java:450) at java.net.ServerSocket.accept(ServerSocket.java:421) at com.yourkit.runtime.RequestServer.doIt(RequestServer.java:240) at com.yourkit.runtime.RequestServer.access$000(RequestServer.java:12) at com.yourkit.runtime.RequestServer$1.run(RequestServer.java:229) "Finalizer" daemon prio=9 tid=0x00337e90 nid=0x8b4 in Object.wait() [0x19c8f000..0x19c8fc68] at java.lang.Object.wait(Native Method) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116) - locked <0x045727a8> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132) at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159) "Reference Handler" daemon prio=10 tid=0x00336a00 nid=0xa08 in Object.wait() [0x19c4f000..0x19c4fce8] at java.lang.Object.wait(Native Method) at java.lang.Object.wait(Object.java:492) at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116) - locked <0x04572828> (a java.lang.ref.Reference$Lock) "main" prio=7 tid=0x000369d8 nid=0xbf8 in Object.wait() [0x0007e000..0x0007fc40] at java.lang.Object.wait(Native Method) at org.eclipse.core.internal.jobs.ThreadJob.joinRun(ThreadJob.java:170) - locked <0x08b8e678> (a org.eclipse.core.internal.jobs.ThreadJob) at org.eclipse.core.internal.jobs.ImplicitJobs.begin(ImplicitJobs.java:88) at org.eclipse.core.internal.jobs.JobManager.beginRule(JobManager.java:190) at org.eclipse.core.internal.resources.WorkManager.checkIn(WorkManager.java:96) at org.eclipse.core.internal.resources.Workspace.prepareOperation(Workspace.java:1671) at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:1711) at org.eclipse.jdt.internal.core.JavaModelOperation.runOperation(JavaModelOperation.java:782) at org.eclipse.jdt.internal.core.JavaProject.setRawClasspath(JavaProject.java:2836) at org.eclipse.jdt.internal.core.JavaProject.setRawClasspath(JavaProject.java:2801) at org.eclipse.jdt.internal.corext.buildpath.ClasspathModifier.updateClasspath(ClasspathModifier.java:1520) at org.eclipse.jdt.internal.corext.buildpath.ClasspathModifier.addToClasspath(ClasspathModifier.java:220) at org.eclipse.jdt.internal.corext.buildpath.AddSelectedSourceFolderOperation.run(AddSelectedSourceFolderOperation.java:71) at org.eclipse.jdt.internal.ui.wizards.buildpaths.newsourcepage.BuildPathAction.run(BuildPathAction.java:115) at org.eclipse.jface.action.Action.runWithEvent(Action.java:996) at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:538) at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:488) at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:400) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:82) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:842) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:2900) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2533) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1569) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1533) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:306) 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:228) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:345) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:158) 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:585) at org.eclipse.core.launcher.Main.invokeFramework(Main.java:319) at org.eclipse.core.launcher.Main.basicRun(Main.java:272) at org.eclipse.core.launcher.Main.run(Main.java:951) at org.eclipse.core.launcher.Main.main(Main.java:935) "VM Thread" prio=10 tid=0x003340d0 nid=0x310 runnable "VM Periodic Task Thread" prio=10 tid=0x0037ae10 nid=0x7f4 waiting on condition
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/buildpaths/newsourcepage/BuildPathAction.java
if (exception != null) {
			ExceptionHandler.handle(exception, getShell(), Messages.format(NewWizardMessages.HintTextGroup_Exception_Title, 
					fOperation.getName()), exception.getMessage());
			return;
		}
		if (resultElements.size() == 0)
			return; 
		IStructuredSelection selection;
		if (fOperation instanceof EditOutputFolderOperation)
			selection= (StructuredSelection) getSelection();
		else
			selection= new StructuredSelection(resultElements);
		selectAndReveal(selection);
	}
	/**
	 * For a given selection, try to select and reveal this selection for 
	 * all parts of this site.
	 * 
	 * @param selection the elements to be selected
	 */
	private void selectAndReveal(final ISelection selection) {
		
		IWorkbenchPage page= fSite.getPage();
		if (page == null)
			return;
		
		List parts= new ArrayList();
		IWorkbenchPartReference refs[]= page.getViewReferences();
		for (int i= 0; i < refs.length; i++) {
			IWorkbenchPart part= refs[i].getPart(false);