#10628 closed defect (fixed)
Multipart uploads fail if key begins or ends with whitespace character
Reported by: | ian_weir | Owned by: | dkocher |
---|---|---|---|
Priority: | normal | Milestone: | 6.9.4 |
Component: | s3 | Version: | 6.9.3 |
Severity: | normal | Keywords: | |
Cc: | Architecture: | ||
Platform: |
Description
When uploading a multi-part file to S3 (>100MB), the upload fails if the destination path begins with a space.
Looking at the log from the transfer window, it appears that the actual upload works correctly, up until the point where a POST request is sent that excludes the leading space, which gives a 404 error from S3, and the transfer fails.
If you re-attempt to upload the same file to the same location, it fails immediately without uploading anything, presumably because it attempts to resume the existing multi-part upload. In this case it is a GET request that excludes the leading space, leading to the problem.
I've included (redacted) log files demonstrating a successful single-part upload to a path with a leading space, and first and second attempts to perform a multi-part upload.
Attachments (3)
Change History (8)
Changed on Feb 22, 2019 at 6:04:55 PM by ian_weir
Changed on Feb 22, 2019 at 6:05:21 PM by ian_weir
Failure of a multi-part upload to a destination with a leading space
comment:1 Changed on Feb 23, 2019 at 2:48:27 PM by dkocher
- Component changed from core to s3
- Milestone set to 6.9.4
- Owner set to dkocher
- Status changed from new to assigned
POST /%20Test%20Folder/Multi-Part.wav?uploads HTTP/1.1 Date: Fri, 22 Feb 2019 17:53:32 GMT x-amz-request-payer: requester Content-Type: audio/x-wav x-amz-content-sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 Host: [bucket-name-redacted].s3.amazonaws.com x-amz-date: 20190222T175332Z Authorization: ******** Content-Length: 0 Connection: Keep-Alive User-Agent: Cyberduck/6.9.3.30061 (Mac OS X/10.14.2) (x86_64) HTTP/1.1 200 OK x-amz-id-2: ++MOHaYD4MERXuE4ZjxFj8V7S2IaiEE1Hwgrr3NXBy0m5kKfekqPzrcGvp3VU1Jcmzo1HnfQ8+4= x-amz-request-id: 3ECFCD9F9C40C6FA Date: Fri, 22 Feb 2019 17:53:33 GMT Transfer-Encoding: chunked Server: AmazonS3 … POST /Test%20Folder/Multi-Part.wav?uploadId=4ttBwSJewknBpvQw2BBQWYpX_X7B3UgkKWyazqMZ9cDZ4wKVKBi7vF5x4FlNfUTL4X3BVv6qNrsxMg_76Hp0yWE4QCIX_WFs_D1dpg7Ofcw3LnyJqayfIppndD7yKijs HTTP/1.1 Date: Fri, 22 Feb 2019 17:54:41 GMT x-amz-request-payer: requester Content-Type: text/plain x-amz-content-sha256: bc11dafbf73c87aa4658637823ac9ac754f4709e75e979d312d1edb14184511b Host: [bucket-name-redacted].s3.amazonaws.com x-amz-date: 20190222T175441Z Authorization: ******** Content-Length: 1079 Connection: Keep-Alive User-Agent: Cyberduck/6.9.3.30061 (Mac OS X/10.14.2) (x86_64) HTTP/1.1 404 Not Found
comment:2 Changed on Feb 23, 2019 at 2:49:55 PM by dkocher
GET /Test%20Folder/Multi-Part.wav?uploadId=4ttBwSJewknBpvQw2BBQWYpX_X7B3UgkKWyazqMZ9cDZ4wKVKBi7vF5x4FlNfUTL4X3BVv6qNrsxMg_76Hp0yWE4QCIX_WFs_D1dpg7Ofcw3LnyJqayfIppndD7yKijs&max-parts=1000 HTTP/1.1 Date: Fri, 22 Feb 2019 17:55:45 GMT x-amz-request-payer: requester x-amz-content-sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 Host: [bucket-name-redacted].s3.amazonaws.com x-amz-date: 20190222T175545Z Authorization: ******** Connection: Keep-Alive User-Agent: Cyberduck/6.9.3.30061 (Mac OS X/10.14.2) (x86_64) HTTP/1.1 404 Not Found
comment:3 Changed on Feb 23, 2019 at 3:07:35 PM by dkocher
- Summary changed from Multipart uploads to S3 fail if the destination path begins with a space to Multipart uploadsfail if key begins or ends with whitespace character
comment:4 Changed on Feb 23, 2019 at 5:25:57 PM by dkocher
- Summary changed from Multipart uploadsfail if key begins or ends with whitespace character to Multipart uploads fail if key begins or ends with whitespace character
comment:5 Changed on Feb 25, 2019 at 7:14:16 AM by yla
- Resolution set to fixed
- Status changed from assigned to closed
In r46426.
Successful upload of single-part file