Community
Participate
Working Groups
Created attachment 192823 [details] process explorer process hierarchy I open the context menu on several projects to share them via git and eclipse hangs forever. I see in the process explorer that eclipse.exe is waiting on bash.exe which in turn waits on which.exe (which seemingly never returns). See VM stacktrace I obtained via jstack from the hanging process below. Together with Christian Halstrick I was able to show that the problem is influenced by my PATH environment variable. C:\Program Files\Windows Resource Kits\Tools\;c:\maketools\perl\bin;c:\maketools\bin;C:\PROGRA~1\SECUDE\SECUDE~1;C:\WINDOWS\system32;C:\WINDOWS;C:\WIN DOWS\System32\Wbem;C:\Program Files\Common Files\OpSession\Shared;C:\Program Files\Common Files\OpSession\Viewer Shared;C:\Program Files\Symantec\pcAn ywhere\;C:\Program Files\Perforce;c:\tools;C:\libs\apache-ant-1.7.1\bin;c:\Program Files\Support Tools\;C:\Program Files\Microsoft SQL Server\90\Tools \binn\;C:\Program Files\Microsoft SQL Server\90\DTS\Binn\;C:\Program Files\Microsoft SQL Server\90\Tools\Binn\VSShell\Common7\IDE\;C:\libs\apache-mave n-3.0.2\bin;c:\Program Files\putty;c:\tools\git\bin;c:\cygwin\bin;C:\Program Files\Windows Imaging\ If I reduce PATH to just C:\WINDOWS\system32;C:\WINDOWS, the problem does not occur. --- full VM stack dump --- c:\JDKs\1.6.0_20\bin\jstack.exe 37028 2011-04-08 14:49:16 Full thread dump Java HotSpot(TM) Client VM (16.3-b01 mixed mode): "[ThreadPool Manager] - Idle Thread" daemon prio=6 tid=0x05d62000 nid=0x8aa4 in Object.wait() [0x06d0f000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x113a3bd0> (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 <0x113a3bd0> (a org.eclipse.equinox.internal.util.impl.tpt.threadpool.Executor) "com.google.inject.internal.util.$Finalizer" daemon prio=6 tid=0x05b00800 nid=0x9048 in Object.wait() [0x06b9f000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x199f0cb8> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(Unknown Source) - locked <0x199f0cb8> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(Unknown Source) at com.google.inject.internal.util.$Finalizer.run(Finalizer.java:144) at java.lang.Thread.run(Unknown Source) "Worker-5" prio=6 tid=0x056d8800 nid=0x5edc in Object.wait() [0x0660f000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x182852a0> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188) - locked <0x182852a0> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:50) "Worker-4" prio=6 tid=0x0569b800 nid=0x9fd0 waiting for monitor entry [0x0650f000] java.lang.Thread.State: BLOCKED (on object monitor) at org.eclipse.egit.core.RepositoryCache.getAllRepositories(RepositoryCache.java:63) - waiting to lock <0x1958c540> (a org.eclipse.egit.core.RepositoryCache) at org.eclipse.egit.ui.Activator$RepositoryChangeScanner.run(Activator.java:408) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54) "Worker-3" prio=6 tid=0x04444c00 nid=0x7e28 in Object.wait() [0x0640f000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x182852a0> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188) - locked <0x182852a0> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:50) "Java indexing" daemon prio=4 tid=0x04411800 nid=0x8d18 in Object.wait() [0x0564f000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x18f7a078> (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:382) - locked <0x18f7a078> (a org.eclipse.jdt.internal.core.search.indexing.IndexManager) at java.lang.Thread.run(Unknown Source) "Worker-JM" prio=6 tid=0x03867400 nid=0x89b0 in Object.wait() [0x045bf000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x1826dfd0> (a java.util.ArrayList) at org.eclipse.core.internal.jobs.InternalWorker.run(InternalWorker.java:58) - locked <0x1826dfd0> (a java.util.ArrayList) "[Timer] - Main Queue Handler" daemon prio=6 tid=0x03875400 nid=0x9120 in Object.wait() [0x040bf000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x1826e050> (a java.lang.Object) at org.eclipse.equinox.internal.util.impl.tpt.timer.TimerImpl.run(TimerImpl.java:141) - locked <0x1826e050> (a java.lang.Object) at java.lang.Thread.run(Unknown Source) "Framework Event Dispatcher" daemon prio=6 tid=0x037a2800 nid=0x7660 in Object.wait() [0x03eaf000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x1826e100> (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:400) - locked <0x1826e100> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread) at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:336) "Start Level Event Dispatcher" daemon prio=6 tid=0x0385e400 nid=0x9fc8 in Object.wait() [0x03daf000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x1826e178> (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:400) - locked <0x1826e178> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread) at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:336) "State Data Manager" daemon prio=6 tid=0x0380e800 nid=0x9a30 waiting on condition [0x03caf000] java.lang.Thread.State: TIMED_WAITING (sleeping) at java.lang.Thread.sleep(Native Method) at org.eclipse.osgi.internal.baseadaptor.StateManager.run(StateManager.java:297) at java.lang.Thread.run(Unknown Source) "Framework Active Thread" prio=6 tid=0x03783800 nid=0x8bd8 in Object.wait() [0x03baf000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x181652b8> (a org.eclipse.osgi.framework.internal.core.Framework) at org.eclipse.osgi.framework.internal.core.Framework.run(Framework.java:1816) - locked <0x181652b8> (a org.eclipse.osgi.framework.internal.core.Framework) at java.lang.Thread.run(Unknown Source) "Low Memory Detector" daemon prio=6 tid=0x02e9f800 nid=0x8470 runnable [0x00000000] java.lang.Thread.State: RUNNABLE "CompilerThread0" daemon prio=10 tid=0x02e99800 nid=0x82fc waiting on condition [0x00000000] java.lang.Thread.State: RUNNABLE "Attach Listener" daemon prio=10 tid=0x02e98000 nid=0x5c78 waiting on condition [0x00000000] java.lang.Thread.State: RUNNABLE "Signal Dispatcher" daemon prio=10 tid=0x02e96c00 nid=0x84c4 runnable [0x00000000] java.lang.Thread.State: RUNNABLE "Finalizer" daemon prio=8 tid=0x02e87800 nid=0x8530 in Object.wait() [0x0320f000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x18060298> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(Unknown Source) - locked <0x18060298> (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=0x02e82c00 nid=0x93b0 in Object.wait() [0x0310f000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x18060320> (a java.lang.ref.Reference$Lock) at java.lang.Object.wait(Object.java:485) at java.lang.ref.Reference$ReferenceHandler.run(Unknown Source) - locked <0x18060320> (a java.lang.ref.Reference$Lock) "main" prio=6 tid=0x00ae6c00 nid=0x89b8 runnable [0x0012d000] java.lang.Thread.State: RUNNABLE at java.io.FileInputStream.readBytes(Native Method) at java.io.FileInputStream.read(Unknown Source) at java.io.BufferedInputStream.read1(Unknown Source) at java.io.BufferedInputStream.read(Unknown Source) - locked <0x11384f40> (a java.io.BufferedInputStream) at sun.nio.cs.StreamDecoder.readBytes(Unknown Source) at sun.nio.cs.StreamDecoder.implRead(Unknown Source) at sun.nio.cs.StreamDecoder.read(Unknown Source) - locked <0x11387000> (a java.io.InputStreamReader) at java.io.InputStreamReader.read(Unknown Source) at java.io.BufferedReader.fill(Unknown Source) at java.io.BufferedReader.readLine(Unknown Source) - locked <0x11387000> (a java.io.InputStreamReader) at java.io.BufferedReader.readLine(Unknown Source) at org.eclipse.jgit.util.FS.readPipe(FS.java:234) at org.eclipse.jgit.util.FS_Win32.gitPrefix(FS_Win32.java:94) at org.eclipse.jgit.util.SystemReader$1.openSystemConfig(SystemReader.java:77) at org.eclipse.jgit.storage.file.FileRepository.<init>(FileRepository.java:157) at org.eclipse.jgit.storage.file.FileRepository.<init>(FileRepository.java:128) at org.eclipse.egit.core.RepositoryCache.lookupRepository(RepositoryCache.java:52) - locked <0x1958c540> (a org.eclipse.egit.core.RepositoryCache) at org.eclipse.egit.core.project.GitProjectData.map(GitProjectData.java:457) at org.eclipse.egit.core.project.GitProjectData.remapAll(GitProjectData.java:420) at org.eclipse.egit.core.project.GitProjectData.load(GitProjectData.java:413) at org.eclipse.egit.core.project.GitProjectData.get(GitProjectData.java:168) - locked <0x2a1a5668> (a java.lang.Class for org.eclipse.egit.core.project.GitProjectData) at org.eclipse.egit.core.GitProvider.getData(GitProvider.java:78) - locked <0x19639848> (a org.eclipse.egit.core.GitProvider) at org.eclipse.egit.core.project.RepositoryMapping.getMapping(RepositoryMapping.java:223) at org.eclipse.egit.ui.internal.actions.RepositoryActionHandler.getProjectsInRepositoryOfSelectedResources(RepositoryActionHandler.java:158) at org.eclipse.egit.ui.internal.actions.RepositoryActionHandler.getProjectsInRepositoryOfSelectedResources(RepositoryActionHandler.java:140) at org.eclipse.egit.ui.internal.actions.CommitActionHandler.isEnabled(CommitActionHandler.java:391) at org.eclipse.egit.ui.internal.actions.RepositoryAction.isEnabled(RepositoryAction.java:118) at org.eclipse.egit.ui.internal.actions.RepositoryAction.selectionChanged(RepositoryAction.java:95) at org.eclipse.ui.internal.PluginAction.refreshEnablement(PluginAction.java:206) at org.eclipse.ui.internal.PluginAction.createDelegate(PluginAction.java:126) at org.eclipse.ui.internal.PluginAction.selectionChanged(PluginAction.java:275) at org.eclipse.ui.internal.PluginAction.<init>(PluginAction.java:112) at org.eclipse.ui.internal.ObjectPluginAction.<init>(ObjectPluginAction.java:83) at org.eclipse.ui.internal.ActionDescriptor.createAction(ActionDescriptor.java:272) at org.eclipse.ui.internal.ActionDescriptor.<init>(ActionDescriptor.java:176) at org.eclipse.ui.internal.ActionDescriptor.<init>(ActionDescriptor.java:103) at org.eclipse.ui.internal.ObjectActionContributor.createActionDescriptor(ObjectActionContributor.java:201) at org.eclipse.ui.internal.PluginActionBuilder.readElement(PluginActionBuilder.java:161) at org.eclipse.ui.internal.ObjectActionContributor.readElement(ObjectActionContributor.java:280) at org.eclipse.ui.internal.registry.RegistryReader.readElements(RegistryReader.java:144) at org.eclipse.ui.internal.registry.RegistryReader.readElementChildren(RegistryReader.java:133) at org.eclipse.ui.internal.ObjectActionContributor.readConfigElement(ObjectActionContributor.java:251) at org.eclipse.ui.internal.ObjectActionContributor.isApplicableTo(ObjectActionContributor.java:217) at org.eclipse.ui.internal.ObjectContributorManager.isApplicableTo(ObjectContributorManager.java:303) at org.eclipse.ui.internal.ObjectActionContributorManager.contributeObjectActions(ObjectActionContributorManager.java:83) at org.eclipse.ui.internal.PopupMenuExtender.addObjectActions(PopupMenuExtender.java:262) at org.eclipse.ui.internal.PopupMenuExtender.menuAboutToShow(PopupMenuExtender.java:339) at org.eclipse.jface.action.MenuManager.fireAboutToShow(MenuManager.java:338) at org.eclipse.jface.action.MenuManager.handleAboutToShow(MenuManager.java:469) at org.eclipse.jface.action.MenuManager.access$1(MenuManager.java:465) at org.eclipse.jface.action.MenuManager$2.menuShown(MenuManager.java:491) at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:247) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1077) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1058) at org.eclipse.swt.widgets.Control.WM_INITMENUPOPUP(Control.java:4864) at org.eclipse.swt.widgets.Control.windowProc(Control.java:4540) at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:341) at org.eclipse.swt.widgets.Decorations.windowProc(Decorations.java:1610) at org.eclipse.swt.widgets.Shell.windowProc(Shell.java:2058) at org.eclipse.swt.widgets.Display.windowProc(Display.java:4957) at org.eclipse.swt.internal.win32.OS.TrackPopupMenu(Native Method) at org.eclipse.swt.widgets.Menu._setVisible(Menu.java:256) at org.eclipse.swt.widgets.Display.runPopups(Display.java:4191) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3733) 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(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:622) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577) at org.eclipse.equinox.launcher.Main.run(Main.java:1410) "VM Thread" prio=10 tid=0x02e80000 nid=0x18c0 runnable "VM Periodic Task Thread" prio=10 tid=0x02eaa400 nid=0x8180 waiting on condition JNI global references: 1290
I am using EGit from the Indigo update site installed on top of 3.7M6 classic package
*** This bug has been marked as a duplicate of bug 337533 ***