[ https://issues.apache.org/jira/browse/JCLOUDS-1366?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16290587#comment-16290587 ]
Andrew Gaul commented on JCLOUDS-1366: -------------------------------------- As a workaround can you try wrapping the {{File}} via Guava {{Files.asByteSource}}? This will also make the payload repeatable, allowing retries. > OutOfMemory when InputStream referencing to big file is used as payload > ----------------------------------------------------------------------- > > Key: JCLOUDS-1366 > URL: https://issues.apache.org/jira/browse/JCLOUDS-1366 > Project: jclouds > Issue Type: Bug > Components: jclouds-blobstore > Affects Versions: 2.0.3 > Environment: Linux and Windows > Reporter: Deyan > Priority: Critical > > If I use InputStream which source is large file (lets say 3GB) I am getting > OOE. This is with default java VM options. > Here is the code I am using to construct the blob: > {code:java} > File bigFile = new File(file); > try (InputStream inputStream = new FileInputStream(f)) { > Blob b = blobStore.blobBuilder(blobName) > .payload(inputStream).contentLength(f.length()) > .contentDisposition(blobName) > .contentType( > MediaType.OCTET_STREAM) > .userMetadata(ImmutableMap.of("a", "b", "test", > "beta")) > .build(); > blobStore.putBlob("test", bbbbb, multipart()); > } > {code} > Stacktrace: > {code:java} > java.lang.OutOfMemoryError: Java heap space > at > org.jclouds.io.internal.BasePayloadSlicer$InputStreamPayloadIterator.getNextPayload(BasePayloadSlicer.java:101) > at > org.jclouds.io.internal.BasePayloadSlicer$InputStreamPayloadIterator.next(BasePayloadSlicer.java:90) > at > org.jclouds.io.internal.BasePayloadSlicer$InputStreamPayloadIterator.next(BasePayloadSlicer.java:63) > at > org.jclouds.blobstore.internal.BaseBlobStore.putMultipartBlob(BaseBlobStore.java:363) > at > org.jclouds.blobstore.internal.BaseBlobStore.putMultipartBlob(BaseBlobStore.java:349) > at org.jclouds.s3.blobstore.S3BlobStore.putBlob(S3BlobStore.java:262) > {code} > If 'bigFile' is used as payload the bug is not reproducible. > -- This message was sent by Atlassian JIRA (v6.4.14#64029)