I am syncing files between 2 Windows 2012 servers, with a FTP connection. The remote server has a slow RAID array.
FreeFileSync gives a lot of errors : « CURLE_OPERATION_TIMEDOUT: FTP response timeout »
Using Filezilla FTP client, I was able to confirm that the following things happen :
- the client sends the data to the server (for example a 2 GB file)
- the client is done sending data
- the FTP server calls the "FlushFileBuffers" Windows API function
- flushing the buffer takes more than 10 seconds, sometimes more than 1 minute
- by setting the Filezilla Client timeout to a large value (300 seconds), I was able to successfully upload files with it
- with FFS as a client, FFS waits 10 seconds after it's done sending data, then it opens a new connection to the server and checks the remote file size. The file size is zero, because the buffers are still in the process of writing to disk. So that file transfer is marked as failed.