Re: How to do optimal FTP upload for multiple files?
Date: Wed, 24 Jul 2019 14:38:22 +0000
I disabled UPLOAD_BUFFERSIZE and after upgrade 3 different users reported that now they upload without issues (libcurl 7.65.3).
However, there’s another interesting problem from another user (in attached log, only libcurl trace). The thing is that libcurl uploads whole file (confirmed by parsing Content-Length from), however, it times out and then it tries to resume transfer, however, 100% of the file is transferred.
Do you have any recommendations?
Is it safe to hack it in a way if we confirm 100% is transferred by parsing content-length, but no server confirmation (226, if I’m not mistaken), is it still safe to consider it as “done” or not really? Under typical circumstances it would not, but just within given context, when for some reason we time out after.
> On Jul 19, 2019, at 15:13, Daniel Stenberg <daniel_at_haxx.se> wrote:
> On Fri, 19 Jul 2019, Taras Kushnir wrote:
>> I didn't investigate curl commandline tool upload time on my machine since for me priority #1 is to fix upload errors of users of my app (since they will just stop using it for upload). I will do so right after finding some solution to this problem.
> Trying the same operation with the curl tool would be a way to diagnose what you're experiencing. If curl doesn't show the problem, then it is specific to your use of libcurl. If curl *does* show it, then it seems likely to be a more generic libcurl issue.
>> I understand about NAT/firewall/etc. timeout, but the thing is that libcurl 7.57 works for them right at the same time (of course, it could be a very big coincidence).
> I'm not suggesting it is a coincidence. You already say it uploads much slower, so the risk for the control connection to time out is therefore much higher so I think the correlation seems rather likely.
> / daniel.haxx.se | Get the best commercial curl support there is - from me
> | Private help, bug fixes, support, ports, new features
> | https://www.wolfssl.com/contact/
- text/plain attachment: log.txt