S3 uses a different ETag for multipart uploads (MPUs) than regular objects. The ETag consists of the md5 hash of the concatenated ETags of individual parts followed by the number of parts (separated by "-").
The patch changes the LocalBlobStore's implementation of CompleteMultipartUpload to set the S3-style ETag before calling putBlob() and return that ETag to the caller. To simplify testing, a new protected method with a default NOOP implementation is added to the BaseBlobIntegrationTest. It allows providers to further verify MPUs (i.e. ensuring the correct ETag has been stored alongside the object). You can view, comment on, or merge this pull request online at: https://github.com/jclouds/jclouds/pull/1251 -- Commit Summary -- * JCLOUDS-1450: Use S3-style ETags for MPUs. -- File Changes -- M apis/filesystem/src/main/java/org/jclouds/filesystem/strategy/internal/FilesystemStorageStrategyImpl.java (50) M apis/filesystem/src/test/java/org/jclouds/filesystem/integration/FilesystemBlobIntegrationTest.java (19) M blobstore/src/main/java/org/jclouds/blobstore/config/LocalBlobStore.java (16) M blobstore/src/main/java/org/jclouds/blobstore/domain/BlobBuilder.java (8) M blobstore/src/main/java/org/jclouds/blobstore/domain/internal/BlobBuilderImpl.java (14) M blobstore/src/test/java/org/jclouds/blobstore/integration/internal/BaseBlobIntegrationTest.java (5) -- Patch Links -- https://github.com/jclouds/jclouds/pull/1251.patch https://github.com/jclouds/jclouds/pull/1251.diff -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/jclouds/jclouds/pull/1251