From reading the code, it looks like the Etag is used on writing to check that what was written is what AWS received. This is still ok, since the writing is under s3ql control. Although "Using Content-MD5 when uploading objects" in https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html suggests we could provide the MD5 and AWS will itself reject the upload if it doesn't match.

The Etag is used on reading to check that the calculated md5 of the received data matches the Etag - which we now know is not always the case.

Could the md5 (or some other signature) of the data be stored in metadata, and we check that instead of the Etag on reading? I've only briefly looked at the source - maybe an existing header is suitable.

It would be great if we could get the AWS automatic S3 backup/restore to work.


--
You received this message because you are subscribed to the Google Groups 
"s3ql" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to s3ql+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/s3ql/05fba65d-808e-9dec-d2a5-8da6a0a4f2c5%40goteck.co.uk.

Reply via email to