Community
Participate
Working Groups
Build Identifier: M20110210-1200 When trying to refer to an enum value in an other class, the editing window hangs and eclipse becomes totally un-responsive. Reproducible: Always Steps to Reproduce: 1. Make sure no proxy is set (if working on a corporate lan that requires that) or set a faulty proxy address if having direct internet connection. 2. Create a sample managed 'hello world' C++ project and add a class with an anonymous enum. 3. Try to refer to the enum from the main-function of the 'hello world' program, when the second ':' is entered, eclipse will be stuck for a very long time. Example program: // File: TheEnum.hpp #ifndef _TheEnum_hpp_ #define _TheEnum_hpp_ class TheEnum { public: enum { FOO, BAR, BAZ }; TheEnum(); virtual ~TheEnum(); }; #endif // File: TheEnum.cpp #include "TheEnum.hpp" TheEnum::TheEnum() { // TODO Auto-generated constructor stub } TheEnum::~TheEnum() { // TODO Auto-generated destructor stub } // File: foo.cpp #include <iostream> #include "TheEnum.hpp" using namespace std; int main() { cout << "Hello world" << endl; cout << "Value of FOO is " << TheEnum: // ^ When the next ':' is entered, the editing window gets totally stuck and hangs for a very long time. return 0; }
2011-03-31 11:59:53 Full thread dump Java HotSpot(TM) 64-Bit Server VM (17.1-b03 mixed mode): "AutoAssist Delay" prio=10 tid=0x00007f5c00551000 nid=0x4fef in Object.wait() [0x00007f5bf45a5000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x00007f5c4b2bc8a0> (a org.eclipse.swt.widgets.RunnableLock) at java.lang.Object.wait(Object.java:485) at org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:186) - locked <0x00007f5c4b2bc8a0> (a org.eclipse.swt.widgets.RunnableLock) at org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java:150) at org.eclipse.swt.widgets.Display.syncExec(Display.java:4282) at org.eclipse.jface.text.contentassist.ContentAssistant$AutoAssistListener.showAssist(ContentAssistant.java:365) at org.eclipse.jface.text.contentassist.ContentAssistant$AutoAssistListener.run(ContentAssistant.java:277) at java.lang.Thread.run(Unknown Source) "[ThreadPool Manager] - Idle Thread" daemon prio=10 tid=0x000000004026b000 nid=0x4fd0 in Object.wait() [0x00007f5bf47a7000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x00007f5c4955c828> (a org.eclipse.equinox.internal.util.impl.tpt.threadpool.Executor) at java.lang.Object.wait(Object.java:485) at org.eclipse.equinox.internal.util.impl.tpt.threadpool.Executor.run(Executor.java:106) - locked <0x00007f5c4955c828> (a org.eclipse.equinox.internal.util.impl.tpt.threadpool.Executor) "Worker-9" prio=10 tid=0x00007f5c04001000 nid=0x4fae in Object.wait() [0x00007f5bf49a9000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x00007f5c4f14a6f0> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:185) - locked <0x00007f5c4f14a6f0> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:217) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:50) "Worker-8" prio=10 tid=0x00007f5c0100d800 nid=0x4fad in Object.wait() [0x00007f5bf4b03000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x00007f5c4f14a6f0> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:185) - locked <0x00007f5c4f14a6f0> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:217) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:50) "Bundle File Closer" daemon prio=10 tid=0x00007f5bfc8c9800 nid=0x4fac in Object.wait() [0x00007f5bf4c07000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x00007f5c46b3a788> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread) at java.lang.Object.wait(Object.java:485) at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent(EventManager.java:397) - locked <0x00007f5c46b3a788> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread) at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:333) "Worker-7" prio=10 tid=0x0000000040284800 nid=0x4fab in Object.wait() [0x00007f5bf4d08000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x00007f5c4f14a6f0> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:185) - locked <0x00007f5c4f14a6f0> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:217) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:50) "Worker-6" prio=10 tid=0x0000000040283800 nid=0x4faa in Object.wait() [0x00007f5bf4e09000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x00007f5c4f14a6f0> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:185) - locked <0x00007f5c4f14a6f0> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:217) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:50) "Worker-5" prio=10 tid=0x0000000040283000 nid=0x4fa9 in Object.wait() [0x00007f5bf4f0a000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x00007f5c4f14a6f0> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:185) - locked <0x00007f5c4f14a6f0> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:217) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:50) "Worker-4" prio=10 tid=0x0000000040639800 nid=0x4fa8 in Object.wait() [0x00007f5bf500b000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x00007f5c4f14a6f0> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:185) - locked <0x00007f5c4f14a6f0> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:217) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:50) "Worker-3" prio=10 tid=0x0000000040639000 nid=0x4fa6 in Object.wait() [0x00007f5bf5476000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x00007f5c4f14a6f0> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:185) - locked <0x00007f5c4f14a6f0> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:217) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:50) "Worker-2" prio=10 tid=0x0000000040686000 nid=0x4fa5 in Object.wait() [0x00007f5bf5ad7000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x00007f5c4f14a6f0> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:185) - locked <0x00007f5c4f14a6f0> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:217) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:50) "Java indexing" daemon prio=10 tid=0x00007f5c00a12000 nid=0x4fa4 in Object.wait() [0x00007f5bf51f9000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x00007f5c4e94fb30> (a org.eclipse.jdt.internal.core.search.indexing.IndexManager) at java.lang.Object.wait(Object.java:485) at org.eclipse.jdt.internal.core.search.processing.JobManager.run(JobManager.java:381) - locked <0x00007f5c4e94fb30> (a org.eclipse.jdt.internal.core.search.indexing.IndexManager) at java.lang.Thread.run(Unknown Source) "org.eclipse.cdt.internal.ui.text.CReconciler" daemon prio=10 tid=0x00007f5c00fb7800 nid=0x4fa3 in Object.wait() [0x00007f5bf5359000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x00007f5c4f149360> (a org.eclipse.jface.text.reconciler.DirtyRegionQueue) at org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run(AbstractReconciler.java:179) - locked <0x00007f5c4f149360> (a org.eclipse.jface.text.reconciler.DirtyRegionQueue) "Worker-1" prio=10 tid=0x00007f5c0075a000 nid=0x4f70 in Object.wait() [0x00007f5bf59d6000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x00007f5c4f14a6f0> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:185) - locked <0x00007f5c4f14a6f0> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:217) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:50) "Worker-0" prio=10 tid=0x00007f5c008a4800 nid=0x4f6d in Object.wait() [0x00007f5bf7426000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x00007f5c4f14a6f0> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:185) - locked <0x00007f5c4f14a6f0> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:217) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:50) "Worker-JM" prio=10 tid=0x00000000407dc800 nid=0x4f68 in Object.wait() [0x00007f5bf7224000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x00007f5c4f14af98> (a java.util.ArrayList) at org.eclipse.core.internal.jobs.InternalWorker.run(InternalWorker.java:58) - locked <0x00007f5c4f14af98> (a java.util.ArrayList) "[Timer] - Main Queue Handler" daemon prio=10 tid=0x0000000040773000 nid=0x4f66 in Object.wait() [0x00007f5bf7325000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x00007f5c4f14b228> (a java.lang.Object) at org.eclipse.equinox.internal.util.impl.tpt.timer.TimerImpl.run(TimerImpl.java:141) - locked <0x00007f5c4f14b228> (a java.lang.Object) at java.lang.Thread.run(Unknown Source) "Framework Event Dispatcher" daemon prio=10 tid=0x0000000040358800 nid=0x4f64 in Object.wait() [0x00007f5bf7527000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x00007f5c4f14b648> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread) at java.lang.Object.wait(Object.java:485) at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent(EventManager.java:397) - locked <0x00007f5c4f14b648> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread) at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:333) "Start Level Event Dispatcher" daemon prio=10 tid=0x00007f5c0020b800 nid=0x4f63 in Object.wait() [0x00007f5bf7688000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x00007f5c4f14b968> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread) at java.lang.Object.wait(Object.java:485) at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent(EventManager.java:397) - locked <0x00007f5c4f14b968> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread) at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:333) "State Data Manager" daemon prio=10 tid=0x00007f5c0026e800 nid=0x4f62 waiting on condition [0x00007f5bf7789000] java.lang.Thread.State: TIMED_WAITING (sleeping) at java.lang.Thread.sleep(Native Method) at org.eclipse.osgi.internal.baseadaptor.StateManager.run(StateManager.java:319) at java.lang.Thread.run(Unknown Source) "Low Memory Detector" daemon prio=10 tid=0x00007f5c00097000 nid=0x4f60 runnable [0x0000000000000000] java.lang.Thread.State: RUNNABLE "CompilerThread1" daemon prio=10 tid=0x00007f5c00094800 nid=0x4f5f waiting on condition [0x0000000000000000] java.lang.Thread.State: RUNNABLE "CompilerThread0" daemon prio=10 tid=0x00007f5c00091800 nid=0x4f5d waiting on condition [0x0000000000000000] java.lang.Thread.State: RUNNABLE "Signal Dispatcher" daemon prio=10 tid=0x00007f5c0008f000 nid=0x4f5c waiting on condition [0x0000000000000000] java.lang.Thread.State: RUNNABLE "Finalizer" daemon prio=10 tid=0x00007f5c00072000 nid=0x4f5b in Object.wait() [0x00007f5c09ad2000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x00007f5c4f136688> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(Unknown Source) - locked <0x00007f5c4f136688> (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=0x00007f5c00070000 nid=0x4f5a in Object.wait() [0x00007f5c09bd3000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x00007f5c4f136600> (a java.lang.ref.Reference$Lock) at java.lang.Object.wait(Object.java:485) at java.lang.ref.Reference$ReferenceHandler.run(Unknown Source) - locked <0x00007f5c4f136600> (a java.lang.ref.Reference$Lock) "main" prio=10 tid=0x0000000040113000 nid=0x4f4b runnable [0x00007f5c5fbbe000] java.lang.Thread.State: RUNNABLE at java.net.PlainSocketImpl.socketConnect(Native Method) at java.net.PlainSocketImpl.doConnect(Unknown Source) - locked <0x00007f5c4b6544c8> (a java.net.SocksSocketImpl) at java.net.PlainSocketImpl.connectToAddress(Unknown Source) at java.net.PlainSocketImpl.connect(Unknown Source) at java.net.SocksSocketImpl.connect(Unknown Source) at java.net.Socket.connect(Unknown Source) at java.net.Socket.connect(Unknown Source) at sun.net.NetworkClient.doConnect(Unknown Source) at sun.net.www.http.HttpClient.openServer(Unknown Source) at sun.net.www.http.HttpClient.openServer(Unknown Source) - locked <0x00007f5c4b6538e0> (a sun.net.www.http.HttpClient) at sun.net.www.http.HttpClient.<init>(Unknown Source) at sun.net.www.http.HttpClient.New(Unknown Source) at sun.net.www.http.HttpClient.New(Unknown Source) at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(Unknown Source) at sun.net.www.protocol.http.HttpURLConnection.plainConnect(Unknown Source) at sun.net.www.protocol.http.HttpURLConnection.connect(Unknown Source) at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source) - locked <0x00007f5c4b64c338> (a sun.net.www.protocol.http.HttpURLConnection) at org.eclipse.linuxtools.internal.cdt.libhover.LibHoverLibrary.getHoverInfo(LibHoverLibrary.java:106) at org.eclipse.linuxtools.internal.cdt.libhover.LibHover.getMatchingFunctions(LibHover.java:503) at org.eclipse.cdt.internal.ui.text.CHelpSettings.getMatchingFunctions(CHelpSettings.java:138) at org.eclipse.cdt.internal.ui.CHelpProviderManager.getMatchingFunctions(CHelpProviderManager.java:169) at org.eclipse.cdt.internal.ui.text.contentassist.HelpCompletionProposalComputer.computeCompletionProposals(HelpCompletionProposalComputer.java:91) at org.eclipse.cdt.internal.ui.text.contentassist.ParsingBasedProposalComputer.computeCompletionProposals(ParsingBasedProposalComputer.java:55) at org.eclipse.cdt.internal.ui.text.contentassist.CompletionProposalComputerDescriptor.computeCompletionProposals(CompletionProposalComputerDescriptor.java:300) at org.eclipse.cdt.internal.ui.text.contentassist.CompletionProposalCategory.computeCompletionProposals(CompletionProposalCategory.java:261) at org.eclipse.cdt.internal.ui.text.contentassist.ContentAssistProcessor.collectProposals(ContentAssistProcessor.java:267) at org.eclipse.cdt.internal.ui.text.contentassist.ContentAssistProcessor.computeCompletionProposals(ContentAssistProcessor.java:220) at org.eclipse.jface.text.contentassist.ContentAssistant.computeCompletionProposals(ContentAssistant.java:1834) at org.eclipse.jface.text.contentassist.CompletionProposalPopup.computeProposals(CompletionProposalPopup.java:556) at org.eclipse.jface.text.contentassist.CompletionProposalPopup.access$16(CompletionProposalPopup.java:553) at org.eclipse.jface.text.contentassist.CompletionProposalPopup$2.run(CompletionProposalPopup.java:488) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70) at org.eclipse.jface.text.contentassist.CompletionProposalPopup.showProposals(CompletionProposalPopup.java:482) at org.eclipse.jface.text.contentassist.ContentAssistant$2.run(ContentAssistant.java:376) at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35) at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:134) - locked <0x00007f5c4b2bc8a0> (a org.eclipse.swt.widgets.RunnableLock) at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3515) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3164) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2640) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2604) at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2438) at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:671) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:664) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:115) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179) 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.equinox.launcher.Main.invokeFramework(Main.java:620) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:575) at org.eclipse.equinox.launcher.Main.run(Main.java:1408) at org.eclipse.equinox.launcher.Main.main(Main.java:1384) "VM Thread" prio=10 tid=0x00007f5c0006c000 nid=0x4f59 runnable "GC task thread#0 (ParallelGC)" prio=10 tid=0x0000000040126800 nid=0x4f4c runnable "GC task thread#1 (ParallelGC)" prio=10 tid=0x0000000040128000 nid=0x4f4d runnable "GC task thread#2 (ParallelGC)" prio=10 tid=0x000000004012a000 nid=0x4f4e runnable "GC task thread#3 (ParallelGC)" prio=10 tid=0x000000004012c000 nid=0x4f4f runnable "GC task thread#4 (ParallelGC)" prio=10 tid=0x000000004012d800 nid=0x4f50 runnable "GC task thread#5 (ParallelGC)" prio=10 tid=0x000000004012f800 nid=0x4f51 runnable "GC task thread#6 (ParallelGC)" prio=10 tid=0x0000000040131800 nid=0x4f52 runnable "GC task thread#7 (ParallelGC)" prio=10 tid=0x0000000040133000 nid=0x4f53 runnable "GC task thread#8 (ParallelGC)" prio=10 tid=0x0000000040135000 nid=0x4f54 runnable "GC task thread#9 (ParallelGC)" prio=10 tid=0x0000000040137000 nid=0x4f55 runnable "GC task thread#10 (ParallelGC)" prio=10 tid=0x0000000040138800 nid=0x4f56 runnable "GC task thread#11 (ParallelGC)" prio=10 tid=0x000000004013a800 nid=0x4f57 runnable "GC task thread#12 (ParallelGC)" prio=10 tid=0x000000004013c800 nid=0x4f58 runnable "VM Periodic Task Thread" prio=10 tid=0x00007f5c000a9800 nid=0x4f61 waiting on condition JNI global references: 2404 Heap PSYoungGen total 152896K, used 108272K [0x00007f5c46810000, 0x00007f5c592b0000, 0x00007f5c5bd60000) eden space 131072K, 65% used [0x00007f5c46810000,0x00007f5c4bc83d40,0x00007f5c4e810000) from space 21824K, 99% used [0x00007f5c4e810000,0x00007f5c4fd58678,0x00007f5c4fd60000) to space 21824K, 0% used [0x00007f5c57d60000,0x00007f5c57d60000,0x00007f5c592b0000) PSOldGen total 349568K, used 22063K [0x00007f5c1bd60000, 0x00007f5c312c0000, 0x00007f5c46810000) object space 349568K, 6% used [0x00007f5c1bd60000,0x00007f5c1d2ebf70,0x00007f5c312c0000) PSPermGen total 73472K, used 73435K [0x00007f5c0bd60000, 0x00007f5c10520000, 0x00007f5c1bd60000) object space 73472K, 99% used [0x00007f5c0bd60000,0x00007f5c10516dd8,0x00007f5c10520000)
Http request is done by the Linux Tools.
org.eclipse.linuxtools.cdt.libhover version is 1.0.3.201102160611 org.eclipse.linuxtools.cdt.libhover.library_docs version is 1.0.1.201102160611
(In reply to comment #3) > org.eclipse.linuxtools.cdt.libhover version is 1.0.3.201102160611 > org.eclipse.linuxtools.cdt.libhover.library_docs version is 1.0.1.201102160611 The reason that libhover used http is that the documentation and subsequently the binary libhover data formed from it has licenses that were not approved by Eclipse.org and thus libhover was not permitted to include the binary data in the plug-ins themselves and had to access it somewhere external. However, some additional points: 1. The GFDL has recently been approved by Eclipse.org. This means that the org.eclipse.linuxtools.cdt.libhover.glibc plug-in can ship the glibc libhover inside the plug-in and no http access is required. The latest nightly builds of Linux tools for Indigo and the latest Indigo EPP packages should have this fix. org.eclipse.linuxtools.cdt.libhover (1.1.0) 2. If you use Fedora to install eclipse-cdt, both glibc and libstdc++ libhover install the data within the plug-ins as the licensing is not an issue with Fedora. 3. The libstdc++ hover data is under a non-approved license. We are trying to convince the gcc folks to change over to the GFDL, but this will be a long process. If you don't use Fedora, the libstdc++ libhover plug-in has to use http to access the binary data. If you have the org.eclipse.linuxtools.cdt.libhover.libstdcxx plug-in installed, you will have to either uninstall it or disable it by going to: Project->Properties->C/C++ General->Documentation and unclicking libstdc++ for each C++ project. 4. The latest and greatest Indigo libhover (1.1.0) also caches the binary data in the workspace. If you update and get the libstdc++ libhover data loaded once, you will be able to use it in the future without web access.
(In reply to comment #3) > org.eclipse.linuxtools.cdt.libhover version is 1.0.3.201102160611 > org.eclipse.linuxtools.cdt.libhover.library_docs version is 1.0.1.201102160611 I forgot to mention a few things: 1. the libstdc++ libhover plug-in is not part of the current Eclipse.org build and not part of the shipped libhover feature, except in Fedora where the binary data is supplied. If you have downloaded the plug-in yourself to play with, be aware that it accesses http. 2. not setting the Eclipse proxy or setting is known to cause hanging under Eclipse. You may receive such problems if you simply access help contents and so it is highly recommended that you set your Eclipse proxy settings appropriately. If you were experiencing problems with the glibc libhover plug-in (i.e. only glibc shows up in the list of Documentation sources under Project->Properties->C/C++ General->Documentation), that issue has been fixed with the latest versions of the plug-in in Indigo. If you downloaded the libstdc++ libhover plug-in yourself, you must either set your Eclipse proxy settings or disable the plug-in or the hang will continue to occur. I am closing this bug as WONTFIX with regards to libhover and Linux Tools. If you wish to, you may open a new bug against the Eclipse platform with regards to the hang issue occurring to see if there is something that can be done to avoid the hang in general.