We are using rclone http endpoint(operations/uploadfile) for client side chunking using content-range header.
We are passing whole file data (from fs.createReadStream) with content range
headers: {
'Content-Type': 'application/octet-stream',
'Content-Range': 'bytes=855638016-859832319'
}
something like this.api.post('operations/uploadfile', chunkData, config)
Problem is the response is 200 OK for all chunks but the actual files are not being uploaded to remote.
Run the command 'rclone version' and share the full output of the command.
using bitnami/rclone:1.62.2 image
Which cloud storage system are you using? (eg Google Drive)
--rc-server-read-timeout Duration Timeout for server reading data (default 1h0m0s)
--rc-server-write-timeout Duration Timeout for server writing data (default 1h0m0s)
How are you doing the upload? It might be your client timing out or rclone timing out - you should see something in the rclone log with -vv which will help us to decide.
Not a bad thought. I think it of low probability using Azure blob storage as the backend but I could be wrong!
@ncw We are using only http endpoints..
The -vv and --rc-server-read-timeout Duration are to be tried only from command line ?
Is there any latest docker image we could use?
Is there way any other we can get logs while using http?
There was a PR which didn't get merged to add the tus uploader which has similar features.
In general though rclone can't support content ranges as cloud providers don't support writing in the middle of blocks.
We could do a simpler multipart upload where you send a file in chunks in sequence. There are some providers which work exactly like this (Google drive for example).
So yes, we could support content range in theory, but we'd rely on you uploading the parts in sequence.
If you deploy rclone serving http in a web app on azure then the azure load balancer is timing out the upload ~5 minutes. I am not sure if deploying rclone remotely to manage/decouple clients from multiple backend providers is a common pattern. @ncw from your reply it seems like this is something rclone doesn't support.