You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Vitaly Ilinykh (JIRA)" <ji...@apache.org> on 2010/05/13 11:44:46 UTC
[jira] Commented: (VFS-120) SFTP-Exception:
"com.jcraft.jsch.JSchException: session is down" if the SFTP-Server was
killed and restarted (a normal shutdown of the SFTP-Server occured no
Exception after restart.)
[ https://issues.apache.org/jira/browse/VFS-120?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12867096#action_12867096 ]
Vitaly Ilinykh commented on VFS-120:
------------------------------------
I didn't want to fix the lib sources, so made this workaround:
------------------------------------------------
try {
fsmgr = VFS.getManager();
.................................
foSftpServer = fsmgr.resolveFile("sftp://user:pass@sftp.server.net/", fsopts);
....................
vfs = fsmgr.createVirtualFileSystem("vfs://").getFileSystem();
vfs.addJunction("/sftp", foSftpServer);
....................
dstFile.copyFrom(srcFile, Selectors.SELECT_FILES);
} catch (Exception e) {
try {
if ( e.getCause().getCause().getCause().getMessage().equals("session is down") ){
fsmgr.closeFileSystem(foSftpServer.getFileSystem()); // workaround for JSchException: "session is down"
}
} catch (Exception e1){ }
}
> SFTP-Exception: "com.jcraft.jsch.JSchException: session is down" if the SFTP-Server was killed and restarted (a normal shutdown of the SFTP-Server occured no Exception after restart.)
> ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: VFS-120
> URL: https://issues.apache.org/jira/browse/VFS-120
> Project: Commons VFS
> Issue Type: Bug
> Affects Versions: 1.0
> Environment: Tomcat 5.5
> JDK 6.0 (build with JDK 5)
> commons-vfs-1.0.jar:
> Specification-Title: Commons VFS
> Implementation-Version: 1.0
> JSCH: jsch-0.1.31.jar
> Reporter: Harald Brabenetz
> Assignee: Mario Ivankovits
> Priority: Critical
> Fix For: 1.1
>
> Attachments: SftpFileSystem-patch.txt
>
>
> The error occured after restarting if the SFTP-Server was KILLed!!.
> With a normal shutdown of the SFTP-Server, no exception after restarting occured.
> I found no function to force the reset of the session in SftpFileSystem.java
> There is a function:
> DefaultFileSystemManager manager = (DefaultFileSystemManager)VFS.getManager();
> manager.freeUnusedResources();
> But this works only if AbstractFileSystem.isReleaseable() returns true.
> And this this function return only true if all SFTP-FileObject are removed from the GarbageCollection (finally()-Methode).
> I cannot force a GarbageCollection.
> So there is no way to handle this Error! I must restart the VM (ServletContainer).
> org.apache.commons.vfs.FileSystemException: Could not copy "file:///C:/TEMP/....." to "sftp://......".
> at org.apache.commons.vfs.provider.AbstractFileObject.copyFrom(AbstractFileObject.java:902)
> at com.bearingpoint.orf.chat.core.service.ExportManagerImpl.exportChatMessages(Unknown Source)
> at com.bearingpoint.orf.chat.core.service.ExportManagerImpl.startExportNow(Unknown Source)
> at com.bearingpoint.orf.chat.core.service.ExportManagerImpl$ExportManagerRunnable.run(Unknown Source)
> at java.lang.Thread.run(Thread.java:595)
> Caused by: org.apache.commons.vfs.FileSystemException: Could not write to "sftp://chat:chat@10.1.5.130/home/chat/chatfile_12.zip".
> at org.apache.commons.vfs.provider.AbstractFileObject.getOutputStream(AbstractFileObject.java:1227)
> at org.apache.commons.vfs.provider.DefaultFileContent.getOutputStream(DefaultFileContent.java:373)
> at org.apache.commons.vfs.provider.DefaultFileContent.getOutputStream(DefaultFileContent.java:356)
> at org.apache.commons.vfs.FileUtil.copyContent(FileUtil.java:100)
> at org.apache.commons.vfs.provider.AbstractFileObject.copyFrom(AbstractFileObject.java:893)
> ... 4 more
> Caused by: org.apache.commons.vfs.FileSystemException: Could not connect to SFTP server at "sftp://chat:chat@10.1.5.130/".
> at org.apache.commons.vfs.provider.sftp.SftpFileSystem.getChannel(SftpFileSystem.java:144)
> at org.apache.commons.vfs.provider.sftp.SftpFileObject.doGetOutputStream(SftpFileObject.java:402)
> at org.apache.commons.vfs.provider.AbstractFileObject.getOutputStream(AbstractFileObject.java:1219)
> ... 8 more
> Caused by: com.jcraft.jsch.JSchException: session is down
> at com.jcraft.jsch.Session.openChannel(Session.java:756)
> at org.apache.commons.vfs.provider.sftp.SftpFileSystem.getChannel(SftpFileSystem.java:122)
> ... 10 more
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.