You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jclouds.apache.org by an...@apache.org on 2013/08/27 02:18:14 UTC

git commit: Handle large putBlob with filesystem blobstore

Updated Branches:
  refs/heads/master d60d2681d -> 1a003ee73


Handle large putBlob with filesystem blobstore

Previously large putBlob caused an OutOfMemoryError even with
repeatable Payloads.  Fixes JCLOUDS-248.


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

Branch: refs/heads/master
Commit: 1a003ee731a30c1d2546027dbe58941f5f6093c2
Parents: d60d268
Author: Andrew Gaul <ga...@apache.org>
Authored: Tue Aug 20 16:50:02 2013 -0700
Committer: Andrew Phillips <an...@apache.org>
Committed: Mon Aug 26 20:17:46 2013 -0400

----------------------------------------------------------------------
 .../strategy/internal/FilesystemStorageStrategyImpl.java         | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/1a003ee7/apis/filesystem/src/main/java/org/jclouds/filesystem/strategy/internal/FilesystemStorageStrategyImpl.java
----------------------------------------------------------------------
diff --git a/apis/filesystem/src/main/java/org/jclouds/filesystem/strategy/internal/FilesystemStorageStrategyImpl.java b/apis/filesystem/src/main/java/org/jclouds/filesystem/strategy/internal/FilesystemStorageStrategyImpl.java
index f5b2ce2..0206f01 100644
--- a/apis/filesystem/src/main/java/org/jclouds/filesystem/strategy/internal/FilesystemStorageStrategyImpl.java
+++ b/apis/filesystem/src/main/java/org/jclouds/filesystem/strategy/internal/FilesystemStorageStrategyImpl.java
@@ -199,7 +199,9 @@ public class FilesystemStorageStrategyImpl implements LocalStorageStrategy {
          if (payload.getRawContent() instanceof File)
             Files.copy((File) payload.getRawContent(), outputFile);
          else {
-            payload = Payloads.newPayload(ByteStreams.toByteArray(payload));
+            if (!payload.isRepeatable()) {
+               payload = Payloads.newPayload(ByteStreams.toByteArray(payload));
+            }
             Files.copy(payload, outputFile);
          }
          Payloads.calculateMD5(payload);