From 22c789da9eebce8420d098f795ae4249e7608c95 Mon Sep 17 00:00:00 2001 From: Andrew Gaul Date: Fri, 13 Nov 2015 12:12:02 -0800 Subject: [PATCH] JCLOUDS-894: Use prefix when listing MPU on Swift Previously we only used the blob name and not the blob name/slo/timestamp/part size cookie which yield extra parts when listing an MPU with parts from a previous MPU. Listing using the stricter prefix gives the expected results. Fixes andrewgaul/s3proxy#91. --- .../swift/v1/blobstore/RegionScopedSwiftBlobStore.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apis/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/blobstore/RegionScopedSwiftBlobStore.java b/apis/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/blobstore/RegionScopedSwiftBlobStore.java index f63aedb53d..692401c404 100644 --- a/apis/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/blobstore/RegionScopedSwiftBlobStore.java +++ b/apis/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/blobstore/RegionScopedSwiftBlobStore.java @@ -479,7 +479,7 @@ public class RegionScopedSwiftBlobStore implements BlobStore { public List listMultipartUpload(MultipartUpload mpu) { ImmutableList.Builder parts = ImmutableList.builder(); PageSet pageSet = list(mpu.containerName(), - new ListContainerOptions().inDirectory(mpu.blobName()).recursive()); + new ListContainerOptions().prefix(mpu.id() + "/")); // TODO: pagination for (StorageMetadata sm : pageSet) { int lastSlash = sm.getName().lastIndexOf('/');