Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 349287

Summary: eclipse hangs when java content assist opens the context menu
Product: [Eclipse Project] Platform Reporter: Meng Xin Zhu <kane.zhu>
Component: SWTAssignee: Platform-SWT-Inbox <platform-swt-inbox>
Status: CLOSED WORKSFORME QA Contact:
Severity: normal    
Priority: P3 CC: arunkumar.thondapu, charleso, daniel_megert, eclipse.felipe, ericwill, isaac.gale, kane.mx, remy.suen, tparker, yin
Version: 3.7   
Target Milestone: ---   
Hardware: PC   
OS: Linux   
Whiteboard:

Description Meng Xin Zhu CLA 2011-06-14 04:02:09 EDT
I'm using Indigo RC4 on Ubuntu 11.04.

After I inputed some java code, the content assist opened the context menu of some suggestions. It's an intermittent issue, I met the same issues several times in a week.

The eclipse hangs after the suggestion menu is shown.

Below is the stack trace of main thread,

"main" prio=10 tid=0x085d7800 nid=0x1657 runnable [0xbfc8b000]
   java.lang.Thread.State: RUNNABLE
	at org.eclipse.swt.internal.gtk.OS._g_main_context_iteration(Native Method)
	at org.eclipse.swt.internal.gtk.OS.g_main_context_iteration(OS.java:2258)
	at org.eclipse.swt.widgets.Shell.setVisible(Shell.java:2051)
	at org.eclipse.jface.internal.text.link.contentassist.CompletionProposalPopup2.displayProposals(CompletionProposalPopup2.java:683)
	at org.eclipse.jface.internal.text.link.contentassist.CompletionProposalPopup2.showProposals(CompletionProposalPopup2.java:227)
	at org.eclipse.jface.internal.text.link.contentassist.ContentAssistant2.showPossibleCompletions(ContentAssistant2.java:1265)
	at org.eclipse.jface.text.link.LinkedModeUI.triggerContentAssist(LinkedModeUI.java:824)
	at org.eclipse.jface.text.link.LinkedModeUI.switchPosition(LinkedModeUI.java:860)
	at org.eclipse.jface.text.link.LinkedModeUI.next(LinkedModeUI.java:799)
	at org.eclipse.jface.text.link.LinkedModeUI.enter(LinkedModeUI.java:718)
	at org.eclipse.jdt.internal.ui.text.java.ParameterGuessingProposal.apply(ParameterGuessingProposal.java:156)
	at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.apply(AbstractJavaCompletionProposal.java:477)
	at org.eclipse.jdt.internal.ui.text.java.LazyJavaCompletionProposal.apply(LazyJavaCompletionProposal.java:488)
	at org.eclipse.jface.text.contentassist.CompletionProposalPopup.insertProposal(CompletionProposalPopup.java:930)
	at org.eclipse.jface.text.contentassist.CompletionProposalPopup.insertSelectedProposalWithMask(CompletionProposalPopup.java:881)
	at org.eclipse.jface.text.contentassist.CompletionProposalPopup.verifyKey(CompletionProposalPopup.java:1307)
	at org.eclipse.jface.text.contentassist.ContentAssistant$InternalListener.verifyKey(ContentAssistant.java:807)
	at org.eclipse.jface.text.TextViewer$VerifyKeyListenersManager.verifyKey(TextViewer.java:491)
	at org.eclipse.swt.custom.StyledTextListener.handleEvent(StyledTextListener.java:65)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1258)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1282)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1267)
	at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:1061)
	at org.eclipse.swt.custom.StyledText.handleKeyDown(StyledText.java:5936)
	at org.eclipse.swt.custom.StyledText$7.handleEvent(StyledText.java:5635)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1258)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1282)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1267)
	at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1294)
	at org.eclipse.swt.widgets.Widget.gtk_key_press_event(Widget.java:730)
	at org.eclipse.swt.widgets.Control.gtk_key_press_event(Control.java:3019)
	at org.eclipse.swt.widgets.Composite.gtk_key_press_event(Composite.java:734)
	at org.eclipse.swt.widgets.Widget.windowProc(Widget.java:1743)
	at org.eclipse.swt.widgets.Control.windowProc(Control.java:5016)
	at org.eclipse.swt.widgets.Display.windowProc(Display.java:4408)
	at org.eclipse.swt.internal.gtk.OS._gtk_main_do_event(Native Method)
	at org.eclipse.swt.internal.gtk.OS.gtk_main_do_event(OS.java:8394)
	at org.eclipse.swt.widgets.Display.eventProc(Display.java:1245)
	at org.eclipse.swt.internal.gtk.OS._g_main_context_iteration(Native Method)
	at org.eclipse.swt.internal.gtk.OS.g_main_context_iteration(OS.java:2258)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3207)
	at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2696)
	at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2660)
	at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2494)
	at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:674)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:667)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:123)
	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:344)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
	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:597)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1410)

Below is the native stack from gdb,
* 1 Thread 0xb76f16c0 (LWP 5719)  0xb788b424 in __kernel_vsyscall ()
(gdb) bt
#0  0xb788b424 in __kernel_vsyscall ()
#1  0xb786552b in read () from /lib/i386-linux-gnu/libpthread.so.0
#2  0xb6d34e10 in ?? () from /usr/lib/i386-linux-gnu/libxcb.so.1
#3  0xb6d35448 in xcb_poll_for_event () from /usr/lib/i386-linux-gnu/libxcb.so.1
#4  0xb6f35e32 in ?? () from /usr/lib/i386-linux-gnu/libX11.so.6
#5  0xb6f36285 in ?? () from /usr/lib/i386-linux-gnu/libX11.so.6
#6  0xb6f367ff in _XEventsQueued () from /usr/lib/i386-linux-gnu/libX11.so.6
#7  0xb6f27558 in XPending () from /usr/lib/i386-linux-gnu/libX11.so.6
#8  0xb732db56 in ?? () from /usr/lib/libgdk-x11-2.0.so.0
#9  0xb73fafd4 in g_main_context_prepare () from /lib/i386-linux-gnu/libglib-2.0.so.0
#10 0xb73fbe63 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#11 0xb73fc524 in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#12 0xb3159665 in Java_org_eclipse_swt_internal_gtk_OS__1g_1main_1context_1iteration ()
   from /media/disk-d/dev/Indigo/configuration/org.eclipse.osgi/bundles/794/1/.cp/libswt-pi-gtk-3735.so
#13 0xb4004526 in ?? ()
#14 0xb45bdd74 in ?? ()
#15 0xb3e4404d in ?? ()
#16 0xb3e43ee7 in ?? ()
#17 0xb3e43ee7 in ?? ()
#18 0xb3e4404d in ?? ()
#19 0xb3e4404d in ?? ()
#20 0xb3e4404d in ?? ()
#21 0xb3e4404d in ?? ()
#22 0xb3e4404d in ?? ()
#23 0xb3e4404d in ?? ()
#24 0xb3e44529 in ?? ()
#25 0xb3e4404d in ?? ()
#26 0xb3e4404d in ?? ()
#27 0xb4234940 in ?? ()
#28 0xb3e4404d in ?? ()
#29 0xb4cfa938 in ?? ()
#30 0xb5b63ca8 in ?? ()
#31 0xb60ca671 in JavaCalls::call_helper(JavaValue*, methodHandle*, JavaCallArguments*, Thread*) ()
   from /usr/lib/jvm/java-6-sun-1.6.0.24/jre/bin/../lib/i386/client/libjvm.so
#32 0xb6200498 in os::os_exception_wrapper(void (*)(JavaValue*, methodHandle*, JavaCallArguments*, Thread*), JavaValue*, methodHandle*, JavaCallArguments*, Thread*) ()
   from /usr/lib/jvm/java-6-sun-1.6.0.24/jre/bin/../lib/i386/client/libjvm.so
#33 0xb60ca49f in JavaCalls::call(JavaValue*, methodHandle, JavaCallArguments*, Thread*) ()
   from /usr/lib/jvm/java-6-sun-1.6.0.24/jre/bin/../lib/i386/client/libjvm.so
#34 0xb60fda47 in jni_invoke_nonstatic(JNIEnv_*, JavaValue*, _jobject*, JNICallType, _jmethodID*, JNI_ArgumentPush---Type <return> to continue, or q <return> to quit---
er*, Thread*) () from /usr/lib/jvm/java-6-sun-1.6.0.24/jre/bin/../lib/i386/client/libjvm.so
#35 0xb60df1d2 in jni_CallIntMethodV ()
   from /usr/lib/jvm/java-6-sun-1.6.0.24/jre/bin/../lib/i386/client/libjvm.so
#36 0xb31813f8 in callback ()
   from /media/disk-d/dev/Indigo/configuration/org.eclipse.osgi/bundles/794/1/.cp/libswt-gtk-3735.so
#37 0xb36cd2d5 in ?? ()
#38 0xb6a7ea04 in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#39 0xb749e372 in g_closure_invoke () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0
#40 0xb74b1048 in ?? () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0
#41 0xb74b98d7 in g_signal_emit_valist () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0
#42 0xb74b9cc2 in g_signal_emit () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0
#43 0xb6bb3836 in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#44 0xb6bcbc4f in gtk_window_propagate_key_event () from /usr/lib/libgtk-x11-2.0.so.0
#45 0xb6bceaec in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#46 0xb6a7ea04 in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#47 0xb749ccc7 in ?? () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0
#48 0xb749e372 in g_closure_invoke () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0
#49 0xb74b0e45 in ?? () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0
#50 0xb74b98d7 in g_signal_emit_valist () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0
#51 0xb74b9cc2 in g_signal_emit () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0
#52 0xb6bb3836 in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#53 0xb6a7cc63 in gtk_propagate_event () from /usr/lib/libgtk-x11-2.0.so.0
#54 0xb6a7ceef in gtk_main_do_event () from /usr/lib/libgtk-x11-2.0.so.0
#55 0xb3162f35 in Java_org_eclipse_swt_internal_gtk_OS__1gtk_1main_1do_1event ()
   from /media/disk-d/dev/Indigo/configuration/org.eclipse.osgi/bundles/794/1/.cp/libswt-pi-gtk-3735.so
#56 0xb440e8a2 in ?? ()
#57 0xb42e5988 in ?? ()
#58 0xb60ca671 in JavaCalls::call_helper(JavaValue*, methodHandle*, JavaCallArguments*, Thread*) ()
   from /usr/lib/jvm/java-6-sun-1.6.0.24/jre/bin/../lib/i386/client/libjvm.so
#59 0xb6200498 in os::os_exception_wrapper(void (*)(JavaValue*, methodHandle*, JavaCallArguments*, Thread*), JavaValue*, methodHandle*, JavaCallArguments*, Thread*) ()
   from /usr/lib/jvm/java-6-sun-1.6.0.24/jre/bin/../lib/i386/client/libjvm.so
#60 0xb60ca49f in JavaCalls::call(JavaValue*, methodHandle, JavaCallArguments*, Thread*) ()
   from /usr/lib/jvm/java-6-sun-1.6.0.24/jre/bin/../lib/i386/client/libjvm.so
#61 0xb60fda47 in jni_invoke_nonstatic(JNIEnv_*, JavaValue*, _jobject*, JNICallType, _jmethodID*, JNI_ArgumentPusher*, Thread*) () from /usr/lib/jvm/java-6-sun-1.6.0.24/jre/bin/../lib/i386/client/libjvm.so
#62 0xb60df1d2 in jni_CallIntMethodV ()
   from /usr/lib/jvm/java-6-sun-1.6.0.24/jre/bin/../lib/i386/client/libjvm.so
#63 0xb31813f8 in callback ()
   from /media/disk-d/dev/Indigo/configuration/org.eclipse.osgi/bundles/794/1/.cp/libswt-gtk-3735.so
---Type <return> to continue, or q <return> to quit---
#64 0xb36cd192 in ?? ()
#65 0xb7330a0a in ?? () from /usr/lib/libgdk-x11-2.0.so.0
#66 0xb73fbaa8 in g_main_context_dispatch () from /lib/i386-linux-gnu/libglib-2.0.so.0
#67 0xb73fc270 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#68 0xb73fc524 in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#69 0xb3159665 in Java_org_eclipse_swt_internal_gtk_OS__1g_1main_1context_1iteration ()
   from /media/disk-d/dev/Indigo/configuration/org.eclipse.osgi/bundles/794/1/.cp/libswt-pi-gtk-3735.so
#70 0xb4004526 in ?? ()
#71 0xb4a010c0 in ?? ()
#72 0xb3e43f29 in ?? ()
#73 0xb3e43f29 in ?? ()
#74 0xb3e44529 in ?? ()
#75 0xb3e4404d in ?? ()
#76 0xb3e43f29 in ?? ()
#77 0xb3e43f29 in ?? ()
#78 0xb3e443c3 in ?? ()
#79 0xb3e443c3 in ?? ()
#80 0xb3e43ee7 in ?? ()
#81 0xb3e43ee7 in ?? ()
#82 0xb3e43ee7 in ?? ()
#83 0xb3e41366 in ?? ()
#84 0xb60ca671 in JavaCalls::call_helper(JavaValue*, methodHandle*, JavaCallArguments*, Thread*) ()
   from /usr/lib/jvm/java-6-sun-1.6.0.24/jre/bin/../lib/i386/client/libjvm.so
#85 0xb6200498 in os::os_exception_wrapper(void (*)(JavaValue*, methodHandle*, JavaCallArguments*, Thread*), JavaValue*, methodHandle*, JavaCallArguments*, Thread*) ()
   from /usr/lib/jvm/java-6-sun-1.6.0.24/jre/bin/../lib/i386/client/libjvm.so
#86 0xb60ca49f in JavaCalls::call(JavaValue*, methodHandle, JavaCallArguments*, Thread*) ()
   from /usr/lib/jvm/java-6-sun-1.6.0.24/jre/bin/../lib/i386/client/libjvm.so
#87 0xb622f39b in Reflection::invoke(instanceKlassHandle, methodHandle, Handle, bool, objArrayHandle, BasicType, objArrayHandle, bool, Thread*) () from /usr/lib/jvm/java-6-sun-1.6.0.24/jre/bin/../lib/i386/client/libjvm.so
#88 0xb6232777 in Reflection::invoke_method(oopDesc*, Handle, objArrayHandle, Thread*) ()
   from /usr/lib/jvm/java-6-sun-1.6.0.24/jre/bin/../lib/i386/client/libjvm.so
#89 0xb6147eaf in JVM_InvokeMethod () from /usr/lib/jvm/java-6-sun-1.6.0.24/jre/bin/../lib/i386/client/libjvm.so
#90 0xb5e6f1d4 in Java_sun_reflect_NativeMethodAccessorImpl_invoke0 ()
   from /usr/lib/jvm/java-6-sun-1.6.0.24/jre/lib/i386/libjava.so
#91 0xb3e4b0dd in ?? ()
#92 0xb3e43ee7 in ?? ()
#93 0xb3e43ee7 in ?? ()
#94 0xb3e443c3 in ?? ()
#95 0xb3e43ee7 in ?? ()
Comment 1 Charles O'Farrell CLA 2011-10-01 19:47:25 EDT
This looks very much like:

https://bugs.eclipse.org/bugs/show_bug.cgi?id=345093
Comment 2 Felipe Heidrich CLA 2011-10-03 10:22:07 EDT
Arun, if this is duplicate of bug 345093  please close it as duplicate. Thank you.
Comment 3 Terry Parker CLA 2011-11-02 15:40:21 EDT
(In reply to comment #2)
> Arun, if this is duplicate of bug 345093  please close it as duplicate. Thank
> you.

FYI, 349426 is also a duplicate of this bug.
Comment 4 Deepak Azad CLA 2011-11-09 06:32:42 EST
*** Bug 363288 has been marked as a duplicate of this bug. ***
Comment 5 Eric Williams CLA 2017-01-09 10:37:51 EST
I cannot reproduce this issue. Please file a new bug against 4.7 if this occurs again.