[ https://issues.apache.org/jira/browse/SSHD-118?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Otto Frost updated SSHD-118: ---------------------------- Description: I logon, and then put xx xx rename xx yy O1706@WKE198515 ~ $ sftp -oport=2222 a@localhost Connecting to localhost... a@localhost's password: sftp> cd tmp sftp> put xx Uploading xx to /C:/NWDS7.1EHP1/workspace/minasshd_custom/tmp/xx xx 100% 1039 1.0KB/s 00:00 sftp> rename xx yy Couldn't rename file "/C:/NWDS7.1EHP1/workspace/minasshd_custom/tmp/xx" to "/C:/ NWDS7.1EHP1/workspace/minasshd_custom/tmp/yy": Failure sftp> The problem is that the file isn't closed after uploading, SftpSubSystem.process SSH_FXP_WRITE NativeSshFile.createOutputStream doesn't close the file, even though the close method is called. I can't rename the file from the os either because mina sshd holds it locked after upload. When mina sshd is shut down I can rename the file. After restarting minasshd the file can be renamed (from mina sshd or from the os). Here is the fix: class NativeSshFile public void truncate() throws IOException{ RandomAccessFile raf = new RandomAccessFile(file, "rw"); raf.setLength(0); raf.close(); } was: I logon, and then put xx xx rename xx yy O1706@WKE198515 ~ $ sftp -oport=2222 a@localhost Connecting to localhost... a@localhost's password: sftp> cd tmp sftp> put xx Uploading xx to /C:/NWDS7.1EHP1/workspace/minasshd_custom/tmp/xx xx 100% 1039 1.0KB/s 00:00 sftp> rename xx yy Couldn't rename file "/C:/NWDS7.1EHP1/workspace/minasshd_custom/tmp/xx" to "/C:/ NWDS7.1EHP1/workspace/minasshd_custom/tmp/yy": Failure sftp> The problem is that the file isn't closed after uploading, SftpSubSystem.process SSH_FXP_WRITE NativeSshFile.createOutputStream doesn't close the file, even though the close method is called. I can't rename the file from the os either because mina sshd holds it locked after upload. When mina sshd is shut down I can rename the file. After restarting minasshd the file can be renamed (from mina sshd or from the os). Remaining Estimate: 1h (was: 2h) Original Estimate: 1h (was: 2h) > uploading and then renaming a file doesn't work (on windows) > ------------------------------------------------------------ > > Key: SSHD-118 > URL: https://issues.apache.org/jira/browse/SSHD-118 > Project: MINA SSHD > Issue Type: Bug > Affects Versions: 0.5.0 > Environment: windows xp professional sun jdk 1.5.0.22, jre 1.6 > windows 2003 server SP2 sun jdk jre 1.5.0.22 > Reporter: Otto Frost > Priority: Critical > Original Estimate: 1h > Remaining Estimate: 1h > > I logon, and then > put xx xx > rename xx yy > O1706@WKE198515 ~ > $ sftp -oport=2222 a@localhost > Connecting to localhost... > a@localhost's password: > sftp> cd tmp > sftp> put xx > Uploading xx to /C:/NWDS7.1EHP1/workspace/minasshd_custom/tmp/xx > xx 100% 1039 1.0KB/s 00:00 > sftp> rename xx yy > Couldn't rename file "/C:/NWDS7.1EHP1/workspace/minasshd_custom/tmp/xx" to > "/C:/ > NWDS7.1EHP1/workspace/minasshd_custom/tmp/yy": Failure > sftp> > The problem is that the file isn't closed after uploading, > SftpSubSystem.process SSH_FXP_WRITE > NativeSshFile.createOutputStream doesn't close the file, even though the > close method is called. > I can't rename the file from the os either because mina sshd holds it locked > after upload. When mina sshd is shut down I can rename the file. After > restarting minasshd the file can be renamed (from mina sshd or from the os). > Here is the fix: > class NativeSshFile > public void truncate() throws IOException{ > > RandomAccessFile raf = new RandomAccessFile(file, "rw"); > raf.setLength(0); > raf.close(); > } -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira