Looking for a bit of help. I'm using SyncTreeUploadAsync to transfer large file sets to an SFTP server. Unfortunately the data link is very variable and fails many times (destination is in China). I can detect the failure of the link using the current transfer rate and the bytes transferred and can then reestablish the connection and restart the sync. Unfortunately with the very large numbers of files in the transfer the time taken to reestablish the transfer grows and grows. More files are added to the transfer folder daily...
Is there a way to determine when individual files have successfully transferred as part of the SyncTreeUploadAsync task? If I can capture that information I will be able to delete the file from the local folder once the file is safely on the server. That will stop the local folder getting ever larger and the SyncTreeUploadAsync process taking longer each time. In effect I'm trying to create a move function rather than a copy.
I think my alternative will be to write a function that handles this 'manually' transferring a single file at a time using ResumeUploadFileByName and deleting the file on success. I'm really hoping that there is a way to use SyncTreeUploadAsync as it does 99% of the heavy lifting for me.
Some context on the transferred data. The link is limited to 1MB/s and the typical daily transfer is 30 to 40GB (some days more some days less. On average the weekly data will transfer in a week). The transfer folder receives around 750 files in a two deep folder structure daily. At the server end data accumulates for a week then gets transferred to another location.
Thanks in advance