I'm currently running a backup of my data drive using Areca 7.4.7 over to an FTP server running proftpd. While transferring a large file (>150GB), it hasn't been uncommon to see some sort of hiccup in the connection between my computer and the server. Areca doesn't seem to like this, and refuses to restart the file transfer from where it left off, rather, it will delete the file and start again (even though the FTP server has support for resuming uploads). Here is a log of errors Areca sees when it restarts the file:
14-10-02 07:41 - ERROR
java.net.SocketException: Software caused connection abort: socket write error
at java.net.SocketOutputStream.socketWrite0(Native Method)
at java.net.SocketOutputStream.socketWrite(Unknown Source)
at java.net.SocketOutputStream.write(Unknown Source)
at org.apache.commons.net.io.SocketOutputStream.write(SocketOutputStream.java:69)
at com.myJava.file.driver.remote.RemoteFileOutputStream.write(RemoteFileOutputStream.java:104)
at java.io.BufferedOutputStream.flushBuffer(Unknown Source)
at java.io.BufferedOutputStream.write(Unknown Source)
at com.myJava.file.EventOutputStream.write(EventOutputStream.java:58)
at com.myJava.file.archive.zip64.DeflaterOutputStream.deflate(DeflaterOutputStream.java:187)
at com.myJava.file.archive.zip64.DeflaterOutputStream.write(DeflaterOutputStream.java:144)
at com.myJava.file.archive.zip64.ZipOutputStream.write(ZipOutputStream.java:235)
at com.myJava.file.driver.event.EventOutputStream.write(EventOutputStream.java:66)
at com.myJava.file.FileTool.copy(FileTool.java:233)
at com.application.areca.impl.handler.DefaultArchiveHandler.store(DefaultArchiveHandler.java:53)
at com.application.areca.impl.IncrementalDirectoryMedium.storeFileInArchive(IncrementalDirectoryMedium.java:163)
at com.application.areca.impl.AbstractIncrementalFileSystemMedium$1.run(AbstractIncrementalFileSystemMedium.java:1499)
at com.application.areca.impl.AbstractIncrementalFileSystemMedium.doAndRetry(AbstractIncrementalFileSystemMedium.java:1551)
at com.application.areca.impl.AbstractIncrementalFileSystemMedium.store(AbstractIncrementalFileSystemMedium.java:1492)
at com.application.areca.AbstractTarget.processBackup(AbstractTarget.java:401)
at com.application.areca.ActionProxy.processBackupOnTarget(ActionProxy.java:98)
at com.application.areca.launcher.gui.Application$9.runCommand(Application.java:1329)
at com.application.areca.launcher.gui.Application$ProcessRunner.run(Application.java:1857)
at java.lang.Thread.run(Unknown Source)
14-10-02 07:41 - WARNING - An error occurred while storing Backups/Win7May2014/Macrium_F-00-00.mrimg (Connection closed without indication.). Retrying (attempt 4 of 5) ...
14-10-02 07:41 - ERROR - Got an error during connection check
org.apache.commons.net.ftp.FTPConnectionClosedException: Connection closed without indication.
at org.apache.commons.net.ftp.FTP.__getReply(FTP.java:267)
at org.apache.commons.net.ftp.FTP.sendCommand(FTP.java:460)
at org.apache.commons.net.ftp.FTP.sendCommand(FTP.java:520)
at org.apache.commons.net.ftp.FTP.sendCommand(FTP.java:569)
at org.apache.commons.net.ftp.FTP.noop(FTP.java:1463)
at org.apache.commons.net.ftp.FTPClient.sendNoOp(FTPClient.java:1924)
at com.myJava.file.driver.remote.ftp.FTPProxy.checkConnection(FTPProxy.java:370)
at com.myJava.file.driver.remote.ftp.FTPProxy.getRemoteFileInfos(FTPProxy.java:620)
at com.myJava.file.driver.remote.AbstractProxy.initFictiveLocalFile(AbstractProxy.java:160)
at com.myJava.file.driver.remote.AbstractRemoteFileSystemDriver.initFictiveLocalFile(AbstractRemoteFileSystemDriver.java:196)
at com.myJava.file.driver.remote.FictiveFile.checkInitialized(FictiveFile.java:132)
at com.myJava.file.driver.remote.FictiveFile.exists(FictiveFile.java:137)
at com.myJava.file.driver.remote.AbstractRemoteFileSystemDriver.exists(AbstractRemoteFileSystemDriver.java:180)
at com.myJava.file.driver.cache.CachedFileSystemDriver.exists(CachedFileSystemDriver.java:229)
at com.myJava.file.driver.CompressedFileSystemDriver.exists(CompressedFileSystemDriver.java:114)
at com.myJava.file.driver.event.EventFileSystemDriver.exists(EventFileSystemDriver.java:220)
at com.myJava.file.FileSystemManager.exists(FileSystemManager.java:281)
at com.myJava.file.FileTool.createDir(FileTool.java:485)
at com.application.areca.impl.IncrementalDirectoryMedium.storeFileInArchive(IncrementalDirectoryMedium.java:157)
at com.application.areca.impl.AbstractIncrementalFileSystemMedium$1.run(AbstractIncrementalFileSystemMedium.java:1499)
at com.application.areca.impl.AbstractIncrementalFileSystemMedium.doAndRetry(AbstractIncrementalFileSystemMedium.java:1551)
at com.application.areca.impl.AbstractIncrementalFileSystemMedium.store(AbstractIncrementalFileSystemMedium.java:1492)
at com.application.areca.AbstractTarget.processBackup(AbstractTarget.java:401)
at com.application.areca.ActionProxy.processBackupOnTarget(ActionProxy.java:98)
at com.application.areca.launcher.gui.Application$9.runCommand(Application.java:1329)
at com.application.areca.launcher.gui.Application$ProcessRunner.run(Application.java:1857)
at java.lang.Thread.run(Unknown Source)
After this, you see Areca reconnecting with the server no problem, and deleting the file and restarting it as if nothing ever happened.
Is there a way to fix this behavior such that uploads can be resumed?