Closed bluven closed 3 years ago
Thanks for the detailed report. You already found the source of the bug on your own :)
However, I do not see this as a problem in tusd but a bug in Ceph. The AWS S3 API (and apparently also Minio) return the correct NoSuchUpload error when referencing a non-existent multipart upload in a ListParts call. This should be fixed in Ceph, since we are not very keen on handling implementation-specific inconsistencies in tusd.
I found some reports in Ceph's bug tracker, where they corrected the error code for multipart uploads (e.g. https://github.com/ceph/ceph/pull/32771), so I think they would be open for fixing it on their end. Please contact the Ceph's developers and bring this issue to their attention.
Ok! Thanks
Describe the bug After uploading file, I tried to download file, tusd reports error like this:
To Reproduce Steps to reproduce the behavior:
tusc client http://127.0.0.1:18080/files kibana-7.6.2-linux-x86_64.tar.gz -r --chunk-size=5242880
Expected behavior File should be downloaded.
Setup details Please provide following details, if applicable to your situation:
Operating System: Ubuntu
Used tusd version: I built myself
Used tusd data storage: Ceph
Used tusd configuration:
PS: I add an extra endpoint to implement resumable download.
Used tus client library: tusc
I checked s3store's source code and found that:
This snippet was found in fetchInfo method which called listAllParts to get parts info, since upload was finished, an error was returned. But here fetchInfo just checked NoSuchUpload error, while Ceph for some reason return an NoSuchKey error and this caused download failure.
Here is what I got from wireshark for listParts request:
Hope this will help you guys.