You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jclouds.apache.org by ga...@apache.org on 2016/06/04 07:23:49 UTC
[1/2] jclouds-labs-google git commit: Delete GCS composite object
components
Repository: jclouds-labs-google
Updated Branches:
refs/heads/master 0673713c6 -> 3d0192ca8
Delete GCS composite object components
Previously we left dangling subobjects. The composite object retains
a reference to the components data.
Project: http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/repo
Commit: http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/commit/d7525f6f
Tree: http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/tree/d7525f6f
Diff: http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/diff/d7525f6f
Branch: refs/heads/master
Commit: d7525f6fb6e30b7dd5a32d8479a74be931bfc4a5
Parents: 0673713
Author: Andrew Gaul <ga...@apache.org>
Authored: Fri Jun 3 23:30:08 2016 -0700
Committer: Andrew Gaul <ga...@apache.org>
Committed: Sat Jun 4 00:23:22 2016 -0700
----------------------------------------------------------------------
.../blobstore/GoogleCloudStorageBlobStore.java | 19 ++++++++++++++-----
...oogleCloudStorageBlobIntegrationLiveTest.java | 6 +-----
2 files changed, 15 insertions(+), 10 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/d7525f6f/google-cloud-storage/src/main/java/org/jclouds/googlecloudstorage/blobstore/GoogleCloudStorageBlobStore.java
----------------------------------------------------------------------
diff --git a/google-cloud-storage/src/main/java/org/jclouds/googlecloudstorage/blobstore/GoogleCloudStorageBlobStore.java b/google-cloud-storage/src/main/java/org/jclouds/googlecloudstorage/blobstore/GoogleCloudStorageBlobStore.java
index 1cb927e..cce5d3c 100644
--- a/google-cloud-storage/src/main/java/org/jclouds/googlecloudstorage/blobstore/GoogleCloudStorageBlobStore.java
+++ b/google-cloud-storage/src/main/java/org/jclouds/googlecloudstorage/blobstore/GoogleCloudStorageBlobStore.java
@@ -384,9 +384,9 @@ public final class GoogleCloudStorageBlobStore extends BaseBlobStore {
@Override
public String completeMultipartUpload(MultipartUpload mpu, List<MultipartPart> parts) {
- ImmutableList.Builder<GoogleCloudStorageObject> builder = ImmutableList.builder();
+ ImmutableList.Builder<GoogleCloudStorageObject> objects = ImmutableList.builder();
for (MultipartPart part : parts) {
- builder.add(api.getObjectApi().getObject(mpu.containerName(),
+ objects.add(api.getObjectApi().getObject(mpu.containerName(),
Strings2.urlEncode(getMPUPartName(mpu, part.partNumber()))));
}
@@ -400,11 +400,20 @@ public final class GoogleCloudStorageBlobStore extends BaseBlobStore {
destination.addAcl(controls);
}
- ComposeObjectTemplate template = ComposeObjectTemplate.builder().fromGoogleCloudStorageObject(builder.build())
+ ComposeObjectTemplate template = ComposeObjectTemplate.builder()
+ .fromGoogleCloudStorageObject(objects.build())
.destination(destination).build();
- return api.getObjectApi().composeObjects(mpu.containerName(), Strings2.urlEncode(mpu.blobName()), template)
+ String eTag = api.getObjectApi().composeObjects(mpu.containerName(), Strings2.urlEncode(mpu.blobName()), template)
.etag();
- // TODO: delete components?
+
+ // remove parts, composite object keeps a reference to them
+ ImmutableList.Builder<String> builder = ImmutableList.builder();
+ for (MultipartPart part : parts) {
+ builder.add(getMPUPartName(mpu, part.partNumber()));
+ }
+ removeBlobs(mpu.containerName(), builder.build());
+
+ return eTag;
}
@Override
http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/d7525f6f/google-cloud-storage/src/test/java/org/jclouds/googlecloudstorage/blobstore/integration/GoogleCloudStorageBlobIntegrationLiveTest.java
----------------------------------------------------------------------
diff --git a/google-cloud-storage/src/test/java/org/jclouds/googlecloudstorage/blobstore/integration/GoogleCloudStorageBlobIntegrationLiveTest.java b/google-cloud-storage/src/test/java/org/jclouds/googlecloudstorage/blobstore/integration/GoogleCloudStorageBlobIntegrationLiveTest.java
index 8aa3fe1..244076f 100644
--- a/google-cloud-storage/src/test/java/org/jclouds/googlecloudstorage/blobstore/integration/GoogleCloudStorageBlobIntegrationLiveTest.java
+++ b/google-cloud-storage/src/test/java/org/jclouds/googlecloudstorage/blobstore/integration/GoogleCloudStorageBlobIntegrationLiveTest.java
@@ -18,10 +18,8 @@ package org.jclouds.googlecloudstorage.blobstore.integration;
import static org.assertj.core.api.Assertions.assertThat;
import static org.testng.Assert.assertEquals;
-import static org.testng.Assert.assertNotEquals;
import static org.testng.Assert.assertNotNull;
import static org.testng.Assert.assertNull;
-import static org.testng.Assert.assertTrue;
import java.io.File;
import java.io.IOException;
@@ -224,9 +222,7 @@ public class GoogleCloudStorageBlobIntegrationLiveTest extends BaseBlobIntegrati
addMultipartBlobToContainer(containerName, "const.txt");
long countAfter = blobStore.countBlobs(containerName);
- assertNotEquals(countBefore, countAfter, "No blob was created");
- assertTrue(countAfter - countBefore > 1, "A multipart blob wasn't actually created - "
- + "there was only 1 extra blob but there should be one manifest blob and multiple chunk blobs");
+ assertThat(countAfter).isEqualTo(countBefore + 1);
} finally {
returnContainer(containerName);
}
[2/2] jclouds-labs-google git commit: JCLOUDS-866: Reduce GCS
multipart limit to 32
Posted by ga...@apache.org.
JCLOUDS-866: Reduce GCS multipart limit to 32
Project: http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/repo
Commit: http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/commit/3d0192ca
Tree: http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/tree/3d0192ca
Diff: http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/diff/3d0192ca
Branch: refs/heads/master
Commit: 3d0192ca87bb34abac5d2b2ad508e0d6844edb87
Parents: d7525f6
Author: Andrew Gaul <ga...@apache.org>
Authored: Fri Jun 3 23:30:43 2016 -0700
Committer: Andrew Gaul <ga...@apache.org>
Committed: Sat Jun 4 00:23:40 2016 -0700
----------------------------------------------------------------------
.../blobstore/GoogleCloudStorageBlobStore.java | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/3d0192ca/google-cloud-storage/src/main/java/org/jclouds/googlecloudstorage/blobstore/GoogleCloudStorageBlobStore.java
----------------------------------------------------------------------
diff --git a/google-cloud-storage/src/main/java/org/jclouds/googlecloudstorage/blobstore/GoogleCloudStorageBlobStore.java b/google-cloud-storage/src/main/java/org/jclouds/googlecloudstorage/blobstore/GoogleCloudStorageBlobStore.java
index cce5d3c..fe14fa3 100644
--- a/google-cloud-storage/src/main/java/org/jclouds/googlecloudstorage/blobstore/GoogleCloudStorageBlobStore.java
+++ b/google-cloud-storage/src/main/java/org/jclouds/googlecloudstorage/blobstore/GoogleCloudStorageBlobStore.java
@@ -452,8 +452,8 @@ public final class GoogleCloudStorageBlobStore extends BaseBlobStore {
@Override
public int getMaximumNumberOfParts() {
- // TODO: should this be 32? See: https://cloud.google.com/storage/docs/composite-objects
- return 10 * 1000;
+ // can raise limit via composite objects of composites
+ return 32;
}
private static String getMPUPartName(MultipartUpload mpu, int partNumber) {