[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug classpath/28939] New: FileChannelImpl.write hangs forever writing t
From: |
greenrd at gcc dot gnu dot org |
Subject: |
[Bug classpath/28939] New: FileChannelImpl.write hangs forever writing to NFS file |
Date: |
2 Sep 2006 20:39:26 -0000 |
I just installed PyDev on Eclipse 3.2, running on JamVM, and configured it to
use the python interpreter at /usr/bin/python in the Eclipse prefs dialog. When
I clicked OK in the prefs dialog, PyDev then scanned for all python code on the
PYTHONPATH, and then eclipse hung at the end of that process. A CTRL+\ showed
that it's hanging while serialising some kind of data structure:
------ JamVM version 1.4.3 Full Thread Dump -------
"main" priority: 6 tid: 0x2aaaab39e6e0 id: 1 state: 5
at gnu.java.nio.channels.FileChannelImpl.write(Native method)
at java.io.FileOutputStream.write(FileOutputStream.java:234)
at java.io.DataOutputStream.write(DataOutputStream.java:115)
at java.io.DataOutputStream.writeShort(DataOutputStream.java:201)
at java.io.DataOutputStream.writeUTF(DataOutputStream.java:478)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:305)
at java.io.ObjectOutputStream.writeFields(ObjectOutputStream.java:1253)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:370)
at java.util.HashSet.writeObject(HashSet.java:271)
at java.lang.reflect.Method.invokeNative(Native method)
at java.lang.reflect.Method.invoke(Method.java:372)
at
java.io.ObjectOutputStream.callWriteMethod(ObjectOutputStream.java:1287)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:360)
at
org.python.pydev.editor.codecompletion.revisited.ModulesManager.writeObject(ModulesManager.java:162)
at java.lang.reflect.Method.invokeNative(Native method)
at java.lang.reflect.Method.invoke(Method.java:372)
at
java.io.ObjectOutputStream.callWriteMethod(ObjectOutputStream.java:1287)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:360)
at org.python.pydev.core.REF.writeToStreamAndCloseIt(REF.java:275)
at
org.python.pydev.plugin.PydevPlugin.writeToPlatformFile(PydevPlugin.java:1028)
at
org.python.pydev.ui.interpreters.AbstractInterpreterManager.getStringToPersist(AbstractInterpreterManager.java:331)
at
org.python.pydev.ui.pythonpathconf.AbstractInterpreterEditor.createList(AbstractInterpreterEditor.java:625)
at
org.python.pydev.ui.pythonpathconf.AbstractInterpreterEditor.doStore(AbstractInterpreterEditor.java:599)
at org.eclipse.jface.preference.FieldEditor.store(FieldEditor.java:676)
at
org.eclipse.jface.preference.FieldEditorPreferencePage.performOk(FieldEditorPreferencePage.java:336)
at
org.python.pydev.ui.pythonpathconf.AbstractInterpreterPreferencesPage.performOk(AbstractInterpreterPreferencesPage.java:92)
at
org.eclipse.jface.preference.PreferenceDialog$11.run(PreferenceDialog.java:889)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
at org.eclipse.core.runtime.Platform.run(Platform.java:843)
at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:44)
at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:149)
at
org.eclipse.jface.preference.PreferenceDialog.okPressed(PreferenceDialog.java:869)
at
org.eclipse.ui.internal.dialogs.FilteredPreferenceDialog.okPressed(FilteredPreferenceDialog.java:377)
at
org.eclipse.ui.internal.dialogs.WorkbenchPreferenceDialog.okPressed(WorkbenchPreferenceDialog.java:164)
at
org.eclipse.jface.preference.PreferenceDialog.buttonPressed(PreferenceDialog.java:230)
at org.eclipse.jface.dialogs.Dialog$3.widgetSelected(Dialog.java:660)
at
org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:90)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1085)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3164)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2840)
at org.eclipse.jface.window.Window.runEventLoop(Window.java:820)
at org.eclipse.jface.window.Window.open(Window.java:796)
at
org.eclipse.ui.internal.OpenPreferencesAction.run(OpenPreferencesAction.java:65)
at org.eclipse.jface.action.Action.runWithEvent(Action.java:499)
at
org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:539)
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:66)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1085)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3164)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2840)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1914)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1878)
at
org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:419)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at
org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:95)
at
org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:78)
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:92)
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:68)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:177)
at java.lang.reflect.Method.invokeNative(Native method)
at java.lang.reflect.Method.invoke(Method.java:372)
at org.eclipse.core.launcher.Main.invokeFramework(Main.java:336)
at org.eclipse.core.launcher.Main.basicRun(Main.java:280)
at org.eclipse.core.launcher.Main.run(Main.java:977)
at org.eclipse.core.launcher.Main.main(Main.java:952)
at java.lang.reflect.Method.invokeNative(Native method)
at java.lang.reflect.Method.invoke(Method.java:372)
at jamvm.java.lang.JarLauncher.main(JarLauncher.java:49)
"Worker-2" priority: 5 tid: 0x46e0a960 id: 12 state: 3
at java.lang.VMObject.wait(Native method)
at java.lang.Object.wait(Object.java:528)
at java.lang.Object.wait(Object.java:480)
at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:173)
at
org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:205)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)
"Worker-1" priority: 5 tid: 0x45a08960 id: 10 state: 3
at java.lang.VMObject.wait(Native method)
at java.lang.Object.wait(Object.java:528)
at java.lang.Object.wait(Object.java:480)
at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:173)
at
org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:205)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)
"Java indexing" (daemon) priority: 4 tid: 0x46409960 id: 11 state: 3
at java.lang.VMObject.wait(Native method)
at java.lang.Object.wait(Object.java:434)
at
org.eclipse.jdt.internal.core.search.processing.JobManager.run(JobManager.java:349)
at java.lang.Thread.run(Thread.java:743)
"Start Level Event Dispatcher" (daemon) priority: 5 tid: 0x45007960 id: 9
state: 3
at java.lang.VMObject.wait(Native method)
at java.lang.Object.wait(Object.java:434)
at
org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent(EventManager.java:349)
at
org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:287)
"Framework Event Dispatcher" (daemon) priority: 5 tid: 0x44606960 id: 8 state:
3
at java.lang.VMObject.wait(Native method)
at java.lang.Object.wait(Object.java:434)
at
org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent(EventManager.java:349)
at
org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:287)
"State Data Manager" (daemon) priority: 5 tid: 0x43c05960 id: 7 state: 3
at java.lang.VMThread.sleep(Native method)
at java.lang.Thread.sleep(Thread.java:898)
at java.lang.Thread.sleep(Thread.java:864)
at
org.eclipse.osgi.internal.baseadaptor.StateManager.run(StateManager.java:297)
at java.lang.Thread.run(Thread.java:743)
"Async GC" (daemon) priority: 5 tid: 0x42803960 id: 5 state: 3
"Reference Handler" (daemon) priority: 5 tid: 0x41e02960 id: 4 state: 3
"Finalizer" (daemon) priority: 5 tid: 0x41401960 id: 3 state: 3
"Signal Handler" (daemon) priority: 5 tid: 0x40a00960 id: 2 state: 2
The file that it's serialising to is on an NFS mount and looks like this:
24K
/home/greenrd/newdth/.metadata/.plugins/org.python.pydev/L3Vzci9iaW4vcHl0aG9u
("newdth" is my eclipse workspace.)
>From within gdb I see this (note that /usr/lib/classpath actually points to
/usr/lib64/classpath):
0x00002aaaab06e24f in __write_nocancel () from /lib64/tls/libpthread.so.0
(gdb) bt
#0 0x00002aaaab06e24f in __write_nocancel () from /lib64/tls/libpthread.so.0
#1 0x00002aaabc6ded32 in
BII::Java_gnu_java_nio_channels_FileChannelImpl_write_ () from
/usr/lib/classpath/libjavanio.so
#2 0x00002aaaaabc36f4 in ffi_call_UNIX64 () at
../../../libffi/src/x86/unix64.S:91
#3 0x00002aaaaabc34ff in ffi_call (cif=0x7fffefcc5930,
fn=0x2aaabc6decc0
<BII::Java_gnu_java_nio_channels_FileChannelImpl_write_(void)>,
rvalue=0x531400,
avalue=0xffffffffffffffff) at ../../../libffi/src/x86/ffi64.c:564
#4 0x000000000041b536 in callJNIMethod (env=0x5200f0, class=0x0, sig=0x557295
")V", num_args=5, ostack=0x531400,
func=0x2aaabc6decc0
"AWA\211�VI\211AUATUSD\211�\203�bH\211\024$�\205�\211�\017H\203�b[]A\\A]A^A_�\213\0061�\2134$L\211�c��\220�005")
at dll_ffi.c:89
#5 0x00000000004087d8 in callJNIWrapper (class=0x0, mb=0x631b20,
ostack=0x531400) at dll.c:322
#6 0x000000000040e8d5 in executeJava () at interp.c:2224
#7 0x0000000000415df7 in invoke (ob=<value optimized out>, mb=0x61d410,
arg_array=0x2aaaae1455c0,
param_types=0x2aaaade6fc00, check_access=<value optimized out>) at
reflect.c:603
#8 0x0000000000414330 in invokeNative (class=<value optimized out>, mb2=<value
optimized out>, ostack=0x531118)
at natives.c:859
#9 0x000000000040e8d5 in executeJava () at interp.c:2224
#10 0x0000000000415df7 in invoke (ob=<value optimized out>, mb=0x67aca0,
arg_array=0x2aaaade67348,
param_types=0x2aaaade5b090, check_access=<value optimized out>) at
reflect.c:603
#11 0x0000000000414330 in invokeNative (class=<value optimized out>, mb2=<value
optimized out>, ostack=0x530e18)
at natives.c:859
#12 0x000000000040e8d5 in executeJava () at interp.c:2224
#13 0x0000000000415df7 in invoke (ob=<value optimized out>, mb=0x289de90,
arg_array=0x2aaaad163dc0,
param_types=0x2aaaad138130, check_access=<value optimized out>) at
reflect.c:603
#14 0x0000000000414330 in invokeNative (class=<value optimized out>, mb2=<value
optimized out>, ostack=0x530c20)
at natives.c:859
#15 0x000000000040e8d5 in executeJava () at interp.c:2224
#16 0x0000000000415df7 in invoke (ob=<value optimized out>, mb=0x820250,
arg_array=0x2aaaab668570,
param_types=0x2aaaab61ec48, check_access=<value optimized out>) at
reflect.c:603
#17 0x0000000000414330 in invokeNative (class=<value optimized out>, mb2=<value
optimized out>, ostack=0x52fe10)
at natives.c:859
#18 0x000000000040e8d5 in executeJava () at interp.c:2224
#19 0x0000000000415df7 in invoke (ob=<value optimized out>, mb=0x7d99e0,
arg_array=0x2aaaab46c840,
param_types=0x2aaaab46c5a0, check_access=<value optimized out>) at
reflect.c:603
#20 0x0000000000414330 in invokeNative (class=<value optimized out>, mb2=<value
optimized out>, ostack=0x52fbd8)
at natives.c:859
#21 0x000000000040e8d5 in executeJava () at interp.c:2224
#22 0x0000000000409e81 in executeMethodVaList (ob=0x0, class=0x2aaaab42e330,
mb=0x7bd1b0, jargs=<value optimized out>)
at execute.c:91
#23 0x0000000000409f71 in executeMethodArgs (ob=0x70, class=0x2aaaad142b2c,
mb=0x39) at execute.c:63
#24 0x000000000040f837 in main (argc=31, argv=0x7fffefcc6408) at jam.c:343
(gdb)
--
Summary: FileChannelImpl.write hangs forever writing to NFS file
Product: classpath
Version: 0.92
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: classpath
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: greenrd at gcc dot gnu dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28939
- [Bug classpath/28939] New: FileChannelImpl.write hangs forever writing to NFS file,
greenrd at gcc dot gnu dot org <=