Repository: jclouds
Updated Branches:
  refs/heads/master 584ca19fa -> 775921cd5


JCLOUDS-1394: Increase Azure max blob size to 256MB


Project: http://git-wip-us.apache.org/repos/asf/jclouds/repo
Commit: http://git-wip-us.apache.org/repos/asf/jclouds/commit/775921cd
Tree: http://git-wip-us.apache.org/repos/asf/jclouds/tree/775921cd
Diff: http://git-wip-us.apache.org/repos/asf/jclouds/diff/775921cd

Branch: refs/heads/master
Commit: 775921cd5d5fa82532befed7e1858802a7419dfd
Parents: 584ca19
Author: Alin Dreghiciu <[email protected]>
Authored: Fri Mar 9 12:28:51 2018 +0200
Committer: Andrew Gaul <[email protected]>
Committed: Fri Mar 9 07:56:59 2018 -0800

----------------------------------------------------------------------
 .../main/java/org/jclouds/azureblob/AzureBlobClient.java  |  4 ++--
 .../azureblob/binders/BindAzureBlobMetadataToRequest.java |  6 ++++--
 .../binders/BindAzureBlobMetadataToRequestTest.java       | 10 +++++-----
 3 files changed, 11 insertions(+), 9 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/jclouds/blob/775921cd/providers/azureblob/src/main/java/org/jclouds/azureblob/AzureBlobClient.java
----------------------------------------------------------------------
diff --git 
a/providers/azureblob/src/main/java/org/jclouds/azureblob/AzureBlobClient.java 
b/providers/azureblob/src/main/java/org/jclouds/azureblob/AzureBlobClient.java
index 32da1de..38d3a47 100644
--- 
a/providers/azureblob/src/main/java/org/jclouds/azureblob/AzureBlobClient.java
+++ 
b/providers/azureblob/src/main/java/org/jclouds/azureblob/AzureBlobClient.java
@@ -321,10 +321,10 @@ public interface AzureBlobClient extends Closeable {
     * blob.
     * <p/>
     * <h4>Remarks</h4>
-    * The maximum upload size for a blob is 64 MB. If your blob is larger than 
64 MB, you may upload
+    * The maximum upload size for a blob is 256 MB. If your blob is larger 
than 256 MB, you may upload
     * it as a set of blocks. For more information, see the Put Block and Put 
Block List operations.
     * <p/>
-    * If you attempt to upload a blob that is larger than 64 MB, the service 
returns status code 413
+    * If you attempt to upload a blob that is larger than 256 MB, the service 
returns status code 413
     * (Request Payload Too Large). The Blob service also returns additional 
information about the
     * error in the response, including the maximum blob size permitted in 
bytes.
     */

http://git-wip-us.apache.org/repos/asf/jclouds/blob/775921cd/providers/azureblob/src/main/java/org/jclouds/azureblob/binders/BindAzureBlobMetadataToRequest.java
----------------------------------------------------------------------
diff --git 
a/providers/azureblob/src/main/java/org/jclouds/azureblob/binders/BindAzureBlobMetadataToRequest.java
 
b/providers/azureblob/src/main/java/org/jclouds/azureblob/binders/BindAzureBlobMetadataToRequest.java
index 3343121..0a384d2 100644
--- 
a/providers/azureblob/src/main/java/org/jclouds/azureblob/binders/BindAzureBlobMetadataToRequest.java
+++ 
b/providers/azureblob/src/main/java/org/jclouds/azureblob/binders/BindAzureBlobMetadataToRequest.java
@@ -76,9 +76,11 @@ public class BindAzureBlobMetadataToRequest implements 
Binder {
          headers.put("x-ms-blob-content-length", 
blob.getPayload().getContentMetadata().getContentLength().toString());
          break;
       case BLOCK_BLOB:
+         // see 
https://docs.microsoft.com/en-us/rest/api/storageservices/understanding-block-blobs--append-blobs--and-page-blobs
+         // see AzureBlobApiMetadata#version (current API version used is 
2017-04-17)
          checkArgument(
-               
checkNotNull(blob.getPayload().getContentMetadata().getContentLength(), 
"blob.getContentLength()") <= 64L * 1024 * 1024,
-               "maximum size for put Blob is 64MB");
+               
checkNotNull(blob.getPayload().getContentMetadata().getContentLength(), 
"blob.getContentLength()") <= 256L * 1024 * 1024,
+               "maximum size for put Blob is 256MB");
          break;
       }
       request = (R) 
request.toBuilder().replaceHeaders(Multimaps.forMap(headers.build())).build();

http://git-wip-us.apache.org/repos/asf/jclouds/blob/775921cd/providers/azureblob/src/test/java/org/jclouds/azureblob/binders/BindAzureBlobMetadataToRequestTest.java
----------------------------------------------------------------------
diff --git 
a/providers/azureblob/src/test/java/org/jclouds/azureblob/binders/BindAzureBlobMetadataToRequestTest.java
 
b/providers/azureblob/src/test/java/org/jclouds/azureblob/binders/BindAzureBlobMetadataToRequestTest.java
index 46af13f..43f69a3 100644
--- 
a/providers/azureblob/src/test/java/org/jclouds/azureblob/binders/BindAzureBlobMetadataToRequestTest.java
+++ 
b/providers/azureblob/src/test/java/org/jclouds/azureblob/binders/BindAzureBlobMetadataToRequestTest.java
@@ -35,10 +35,10 @@ import com.google.common.collect.ImmutableMap;
 public class BindAzureBlobMetadataToRequestTest extends 
BaseRestAnnotationProcessingTest<AzureBlobClient> {
 
    @Test
-   public void testPassWithMinimumDetailsAndPayload64MB() {
+   public void testPassWithMinimumDetailsAndPayload256MB() {
       AzureBlob blob = 
injector.getInstance(AzureBlob.Factory.class).create(null);
       Payload payload = Payloads.newStringPayload("");
-      payload.getContentMetadata().setContentLength(64 * 1024 * 1024L);
+      payload.getContentMetadata().setContentLength(256 * 1024 * 1024L);
       blob.setPayload(payload);
       blob.getProperties().setName("foo");
 
@@ -55,7 +55,7 @@ public class BindAzureBlobMetadataToRequestTest extends 
BaseRestAnnotationProces
    public void testExtendedPropertiesBind() {
       AzureBlob blob = 
injector.getInstance(AzureBlob.Factory.class).create(null);
       Payload payload = Payloads.newStringPayload("");
-      payload.getContentMetadata().setContentLength(64 * 1024 * 1024L);
+      payload.getContentMetadata().setContentLength(256 * 1024 * 1024L);
       blob.setPayload(payload);
       blob.getProperties().setName("foo");
       blob.getProperties().setMetadata(ImmutableMap.of("foo", "bar"));
@@ -96,10 +96,10 @@ public class BindAzureBlobMetadataToRequestTest extends 
BaseRestAnnotationProces
    }
 
    @Test(expectedExceptions = IllegalArgumentException.class)
-   public void testOver64MBIsBad() {
+   public void testOver256MBIsBad() {
       AzureBlob blob = 
injector.getInstance(AzureBlob.Factory.class).create(null);
       Payload payload = Payloads.newStringPayload("");
-      payload.getContentMetadata().setContentLength(64 * 1024 * 1024L + 1);
+      payload.getContentMetadata().setContentLength(256 * 1024 * 1024L + 1);
       blob.setPayload(payload);
       blob.getProperties().setName("foo");
 

Reply via email to