DP backup to S3 issue

Dear All,

While testing the DP backup on S3, we encountered an error.

 

After enabling extended logging on S3, we saw that DP successfully creates a bucket,

initializes a session for multipart upload and uploads a file (piece).

Next, according to the protocol, it is necessary to transfer to the S3 (storage) side

a command to complete the multipart and an xml file, which should list all the downloaded

parts of the future file for its assembly.

 

The format of this xml file is defined by the Amazon S3 API specification at the link below:

docs.aws.amazon.com/.../API_CompleteMultipartUpload.html

 

In particular, it says that the xml file should contain information about the PartNumber

and ETAG of each uploaded part: “For each part in the list, you must provide the PartNumber

value and the ETag value that are returned after that part was uploaded.”

 

ETAG is a field containing the MD5 hash sum of the object, which the storage system returns

to the application after loading each part

 

Log analysis showed that Data Protector sends an xml file with an empty ETAG field:

 

Apr 18 12:43:37 hostname1 GW-hostname.domain [3995171]: ([]uint8) (len=109 cap=512) {

Apr 18 12:43:37 hostname1 GW-hostname.domain [3995171]:  00000000  3c 43 6f 6d 70 6c 65 74  65 4d 75 6c 74 69 70 61  |<CompleteMultipa|

Apr 18 12:43:37 hostname1 GW-hostname.domain [3995171]:  00000010  72 74 55 70 6c 6f 61 64  3e 0a 09 3c 50 61 72 74  |rtUpload>..<Part|

Apr 18 12:43:37 hostname1 GW-hostname.domain [3995171]:  00000020  3e 0a 09 09 3c 50 61 72  74 4e 75 6d 62 65 72 3e  |>...<PartNumber>|

Apr 18 12:43:37 hostname1 GW-hostname.domain [3995171]:  00000030  31 3c 2f 50 61 72 74 4e  75 6d 62 65 72 3e 0a 09  |1</PartNumber>..|

Apr 18 12:43:37 hostname1 GW-hostname.domain [3995171]:  00000040  09 3c 45 54 61 67 2f 3e  0a 09 3c 2f 50 61 72 74  |.<ETag/>..</Part|

Apr 18 12:43:37 hostname1 GW-hostname.domain [3995171]:  00000050  3e 0a 3c 2f 43 6f 6d 70  6c 65 74 65 4d 75 6c 74  |>.</CompleteMult|

Apr 18 12:43:37 hostname1 GW-hostname.domain [3995171]:  00000060  69 70 61 72 74 55 70 6c  6f 61 64 3e 0a           |ipartUpload>.|

 

That is, DP sends this xml file to the storage side:

 

<CompleteMultipartUpload>

<Part> <PartNumber>1</PartNumber>

<ETag/>

</Part>

</CompleteMultipartUpload>

 

--

 

This looks like a violation of the S3 protocol and the "complete multipart" operation fails.

Does anyone has an experience with the above functionality? Any ideas? 

Maybe it was done on purpose? Maybe there are some local (omnirc) or global (global)

parameters that allows you to enable for usage of the ETAG field?

Thank you!