I am using RSE to access files on a remote system (in this case solaris)
using the Filesystem implementation of RSE so that the access is
transperant to my application. Sometimes, when I connect I get the
attached stackdump (on this machine this is reproducable).

!ENTRY org.eclipse.rse.ui 4 0 2010-12-06 13:00:40.157
!MESSAGE RSEG1058
!STACK 0
java.lang.Exception
at
org.eclipse.rse.ui.messages.SystemMessageDialog.logMessage(S ystemMessageDialog.java:449)
at
org.eclipse.rse.ui.messages.SystemMessageDialog.open(SystemM essageDialog.java:459)
at
org.eclipse.rse.internal.connectorservice.ssh.SshConnectorSe rvice$SessionLostHandler.run(SshConnectorService.java:332)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:3 5)
at
org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchr onizer.java:134)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.jav a:3855)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java :3476)
at org.eclipse.jface.window.Window.runEventLoop(Window.java:825 )
at org.eclipse.jface.window.Window.open(Window.java:801)
at org.eclipse.jface.dialogs.MessageDialog.open(MessageDialog.j ava:327)
at org.eclipse.jface.dialogs.MessageDialog.open(MessageDialog.j ava:357)
at
org.eclipse.jface.dialogs.MessageDialog.openInformation(Mess ageDialog.java:439)
at
org.eclipse.rse.internal.connectorservice.ssh.SshConnectorSe rvice$3.run(SshConnectorService.java:542)
at org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.j ava:179)
at org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchroniz er.java:150)
at org.eclipse.swt.widgets.Display.syncExec(Display.java:4312)
at
org.eclipse.rse.internal.connectorservice.ssh.SshConnectorSe rvice$MyUserInfo.showMessage(SshConnectorService.java:540)
at com.jcraft.jsch.UserAuthNone.start(UserAuthNone.java:104)
at com.jcraft.jsch.Session.connect(Session.java:344)
at
org.eclipse.rse.internal.connectorservice.ssh.SshConnectorSe rvice.internalConnect(SshConnectorService.java:189)
at
org.eclipse.rse.core.subsystems.AbstractConnectorService.con nect(AbstractConnectorService.java:415)
at org.eclipse.rse.core.subsystems.SubSystem.connect(SubSystem. java:2527)
at
org.eclipse.rse.internal.efs.RSEFileStoreImpl.getConnectedFi leSubSystem(RSEFileStoreImpl.java:253)
at
org.eclipse.rse.internal.efs.RSEFileStoreImpl.getRemoteFileO bject(RSEFileStoreImpl.java:318)
at
org.eclipse.rse.internal.efs.RSEFileStoreImpl.getRemoteFileO bject(RSEFileStoreImpl.java:305)
at
org.eclipse.rse.internal.efs.RSEFileStoreImpl.getRemoteFileO bject(RSEFileStoreImpl.java:305)
at
org.eclipse.rse.internal.efs.RSEFileStoreImpl.getRemoteFileO bject(RSEFileStoreImpl.java:305)
at
org.eclipse.rse.internal.efs.RSEFileStoreImpl.getRemoteFileO bject(RSEFileStoreImpl.java:305)
at
org.eclipse.rse.internal.efs.RSEFileStoreImpl.getRemoteFileO bject(RSEFileStoreImpl.java:305)
at
org.eclipse.rse.internal.efs.RSEFileStoreImpl.fetchInfo(RSEF ileStoreImpl.java:496)
at
org.eclipse.rse.internal.efs.RSEFileStore.fetchInfo(RSEFileS tore.java:275)
at
org.eclipse.rse.internal.efs.RSEFileStore.fetchInfo(RSEFileS tore.java:257)
at
org.eclipse.core.internal.localstore.FileSystemResourceManag er.fastIsSynchronized(FileSystemResourceManager.java:349)
at
org.eclipse.core.internal.localstore.FileSystemResourceManag er.isSynchronized(FileSystemResourceManager.java:584)
at
org.eclipse.core.internal.resources.Resource.isSynchronized( Resource.java:1371)
at
org.eclipse.core.internal.resources.File.checkSynchronized(F ile.java:102)
at
org.eclipse.core.internal.resources.File.getContentDescripti on(File.java:268)
at org.eclipse.ui.ide.IDE.getContentType(IDE.java:1332)
at org.eclipse.ui.ide.IDE.getDefaultEditor(IDE.java:1277)
at org.eclipse.ui.ide.IDE.getEditorDescriptor(IDE.java:825)
at org.eclipse.ui.ide.IDE.openEditor(IDE.java:649)
at org.eclipse.ui.ide.IDE.openEditor(IDE.java:610)
at org.eclipse.ui.ide.IDE.openEditor(IDE.java:1105)
at org.eclipse.ui.ide.IDE.openEditor(IDE.java:1046)
at
com.tabuso.durban.ui.views.WorkspaceView$DoubleClickAction.r un(WorkspaceView.java:209)
at
com.tabuso.durban.ui.views.WorkspaceView$2.doubleClick(Works paceView.java:162)
at
org.eclipse.jface.viewers.StructuredViewer$1.run(StructuredV iewer.java:821)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at org.eclipse.core.runtime.Platform.run(Platform.java:888)
at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:48)
at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:17 5)
at
org.eclipse.jface.viewers.StructuredViewer.fireDoubleClick(S tructuredViewer.java:819)
at
org.eclipse.jface.viewers.AbstractTreeViewer.handleDoubleSel ect(AbstractTreeViewer.java:1419)
at
org.eclipse.jface.viewers.StructuredViewer$4.widgetDefaultSe lected(StructuredViewer.java:1195)
at
org.eclipse.jface.util.OpenStrategy.fireDefaultSelectionEven t(OpenStrategy.java:238)
at org.eclipse.jface.util.OpenStrategy.access$0(OpenStrategy.ja va:235)
at org.eclipse.jface.util.OpenStrategy$1.handleEvent(OpenStrate gy.java:296)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java :84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1003)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.ja va:3880)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java :3473)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.jav a:2405)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2369)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:22 21)
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:500)
at
org.eclipse.core.databinding.observable.Realm.runWithDefault (Realm.java:332)
at
org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Work bench.java:493)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.j ava:149)
at com.tabuso.durban.intro.Application.start(Application.java:2 0)
at
org.eclipse.equinox.internal.app.EclipseAppHandle.run(Eclips eAppHandle.java:194)
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(EclipseS tarter.java:368)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.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: 559)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:514)
at org.eclipse.equinox.launcher.Main.run(Main.java:1311)

!ENTRY org.eclipse.jface 4 2 2010-12-06 13:00:44.845
!MESSAGE Problems occurred when invoking code from plug-in:
"org.eclipse.jface".
!STACK 0
java.lang.RuntimeException: org.eclipse.core.runtime.CoreException:
Could not connect to host: BALBLABKLA.NET subsystem ssh.files
at
org.eclipse.rse.internal.efs.RSEFileStore.fetchInfo(RSEFileS tore.java:266)
at
org.eclipse.core.internal.localstore.FileSystemResourceManag er.fastIsSynchronized(FileSystemResourceManager.java:349)
at
org.eclipse.core.internal.localstore.FileSystemResourceManag er.isSynchronized(FileSystemResourceManager.java:584)
at
org.eclipse.core.internal.resources.Resource.isSynchronized( Resource.java:1371)
at
org.eclipse.core.internal.resources.File.checkSynchronized(F ile.java:102)
at
org.eclipse.core.internal.resources.File.getContentDescripti on(File.java:268)
at org.eclipse.ui.ide.IDE.getContentType(IDE.java:1332)
at org.eclipse.ui.ide.IDE.getDefaultEditor(IDE.java:1277)
at org.eclipse.ui.ide.IDE.getEditorDescriptor(IDE.java:825)
at org.eclipse.ui.ide.IDE.openEditor(IDE.java:649)
at org.eclipse.ui.ide.IDE.openEditor(IDE.java:610)
at org.eclipse.ui.ide.IDE.openEditor(IDE.java:1105)
at org.eclipse.ui.ide.IDE.openEditor(IDE.java:1046)
at
com.tabuso.durban.ui.views.WorkspaceView$DoubleClickAction.r un(WorkspaceView.java:209)
at
com.tabuso.durban.ui.views.WorkspaceView$2.doubleClick(Works paceView.java:162)
at
org.eclipse.jface.viewers.StructuredViewer$1.run(StructuredV iewer.java:821)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at org.eclipse.core.runtime.Platform.run(Platform.java:888)
at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:48)
at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:17 5)
at
org.eclipse.jface.viewers.StructuredViewer.fireDoubleClick(S tructuredViewer.java:819)
at
org.eclipse.jface.viewers.AbstractTreeViewer.handleDoubleSel ect(AbstractTreeViewer.java:1419)
at
org.eclipse.jface.viewers.StructuredViewer$4.widgetDefaultSe lected(StructuredViewer.java:1195)
at
org.eclipse.jface.util.OpenStrategy.fireDefaultSelectionEven t(OpenStrategy.java:238)
at org.eclipse.jface.util.OpenStrategy.access$0(OpenStrategy.ja va:235)
at org.eclipse.jface.util.OpenStrategy$1.handleEvent(OpenStrate gy.java:296)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java :84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1003)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.ja va:3880)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java :3473)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.jav a:2405)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2369)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:22 21)
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:500)
at
org.eclipse.core.databinding.observable.Realm.runWithDefault (Realm.java:332)
at
org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Work bench.java:493)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.j ava:149)
at com.tabuso.durban.intro.Application.start(Application.java:2 0)
at
org.eclipse.equinox.internal.app.EclipseAppHandle.run(Eclips eAppHandle.java:194)
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(EclipseS tarter.java:368)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.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: 559)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:514)
at org.eclipse.equinox.launcher.Main.run(Main.java:1311)
Caused by: org.eclipse.core.runtime.CoreException: Could not connect to
host: SBE39560-V3.CORPROOT.NET subsystem ssh.files
at
org.eclipse.rse.internal.efs.RSEFileStoreImpl.getConnectedFi leSubSystem(RSEFileStoreImpl.java:256)
at
org.eclipse.rse.internal.efs.RSEFileStoreImpl.getRemoteFileO bject(RSEFileStoreImpl.java:318)
at
org.eclipse.rse.internal.efs.RSEFileStoreImpl.getRemoteFileO bject(RSEFileStoreImpl.java:305)
at
org.eclipse.rse.internal.efs.RSEFileStoreImpl.getRemoteFileO bject(RSEFileStoreImpl.java:305)
at
org.eclipse.rse.internal.efs.RSEFileStoreImpl.getRemoteFileO bject(RSEFileStoreImpl.java:305)
at
org.eclipse.rse.internal.efs.RSEFileStoreImpl.getRemoteFileO bject(RSEFileStoreImpl.java:305)
at
org.eclipse.rse.internal.efs.RSEFileStoreImpl.getRemoteFileO bject(RSEFileStoreImpl.java:305)
at
org.eclipse.rse.internal.efs.RSEFileStoreImpl.fetchInfo(RSEF ileStoreImpl.java:496)
at
org.eclipse.rse.internal.efs.RSEFileStore.fetchInfo(RSEFileS tore.java:275)
at
org.eclipse.rse.internal.efs.RSEFileStore.fetchInfo(RSEFileS tore.java:257)
... 49 more
Caused by: java.lang.NullPointerException
at com.jcraft.jsch.Session.read(Session.java:809)
at com.jcraft.jsch.UserAuthNone.start(UserAuthNone.java:85)
at com.jcraft.jsch.Session.connect(Session.java:344)
at
org.eclipse.rse.internal.connectorservice.ssh.SshConnectorSe rvice.internalConnect(SshConnectorService.java:189)
at
org.eclipse.rse.core.subsystems.AbstractConnectorService.con nect(AbstractConnectorService.java:415)
at org.eclipse.rse.core.subsystems.SubSystem.connect(SubSystem. java:2527)
at
org.eclipse.rse.internal.efs.RSEFileStoreImpl.getConnectedFi leSubSystem(RSEFileStoreImpl.java:253)
... 58 more

You might be able to see this if you run "top" on the server, filter to
only see process "sftp-server" and you should see processes come and go
very quickly while you exercise RSE. At some point you should reach the
10 processes limit. If you can change the configuration of your sshd on
the server, you might be able to work around the issues by increasing
the max number of open channels.

To really solve the problem, I think we'll need to re-use existing open
Channels in RSE. This should also drastically improve performance. The
idea has been around for a while, but so far nobody found time to
implement it. Code contributions would be most welcome! See