[
https://issues.apache.org/jira/browse/JCLOUDS-1064?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15116217#comment-15116217
]
Ramesh Gojji commented on JCLOUDS-1064:
---------------------------------------
Here is the error on the console:
Exception in thread "main" org.jclouds.http.HttpResponseException: command: PUT
https://swiftserver.com:8443/v1/AUTH_22b76e9063a5412090447ec669576f7b/jclouds-example/dom4j-1.6.1.jar/slo/1453761106.613000/313898/33554432/00000001
HTTP/1.1 failed with response: HTTP/1.1 502 Bad Gateway; content: [<!DOCTYPE
HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>502 Bad Gateway</title>
</head><body>
<h1>Bad Gateway</h1>
<p>The proxy server received an invalid
response from an upstream server.<br />
</p>
</body></html>
]
at
org.jclouds.openstack.swift.v1.handlers.SwiftErrorHandler.handleError(SwiftErrorHandler.java:45)
at
org.jclouds.http.handlers.DelegatingErrorHandler.handleError(DelegatingErrorHandler.java:67)
at
org.jclouds.http.internal.BaseHttpCommandExecutorService.shouldContinue(BaseHttpCommandExecutorService.java:136)
at
org.jclouds.http.internal.BaseHttpCommandExecutorService.invoke(BaseHttpCommandExecutorService.java:105)
at
org.jclouds.rest.internal.InvokeHttpMethod.invoke(InvokeHttpMethod.java:90)
at
org.jclouds.rest.internal.InvokeHttpMethod.apply(InvokeHttpMethod.java:73)
at
org.jclouds.rest.internal.InvokeHttpMethod.apply(InvokeHttpMethod.java:44)
at
org.jclouds.reflect.FunctionalReflection$FunctionalInvocationHandler.handleInvocation(FunctionalReflection.java:117)
at
com.google.common.reflect.AbstractInvocationHandler.invoke(AbstractInvocationHandler.java:87)
at com.sun.proxy.$Proxy64.put(Unknown Source)
at
org.jclouds.openstack.swift.v1.blobstore.RegionScopedSwiftBlobStore.uploadMultipartPart(RegionScopedSwiftBlobStore.java:479)
at
org.jclouds.openstack.swift.v1.blobstore.RegionScopedSwiftBlobStore.putMultipartBlob(RegionScopedSwiftBlobStore.java:567)
at
org.jclouds.openstack.swift.v1.blobstore.RegionScopedSwiftBlobStore.putBlob(RegionScopedSwiftBlobStore.java:244)
at JCloudTest.<init>(JCloudTest.java:76)
at JCloudTest.main(JCloudTest.java:26)
Note: I changed the name of the server to swiftserver.com because of security
reasons.
Here is content of the jclouds.log
2016-01-25 14:31:45,590 DEBUG [org.jclouds.rest.internal.InvokeHttpMethod]
[main] >> invoking AuthenticationApi.authenticateWithTenantNameAndCredentials
2016-01-25 14:31:45,593 DEBUG
[org.jclouds.http.internal.JavaUrlHttpCommandExecutorService] [main] Sending
request 585637727: POST https://keystonestg.com:5443/v2.0/tokens HTTP/1.1
2016-01-25 14:31:46,521 DEBUG
[org.jclouds.http.internal.JavaUrlHttpCommandExecutorService] [main] Receiving
response 585637727: HTTP/1.1 200 OK
2016-01-25 14:31:46,557 DEBUG
[org.jclouds.openstack.keystone.v2_0.suppliers.RegionIdToURIFromAccessForTypeAndVersion]
[main] endpoints for apiType object-store and version 1:
{RegionOne=[Endpoint{id=5dbcd479dd1b485bb7918c66f8e77ae3, region=RegionOne,
publicURL=https://swiftserver.com:8443/v1/AUTH_22b76e9063a5412090447ec669576f7b,
internalURL=https://swiftserver.com:8443/v1/AUTH_22b76e9063a5412090447ec669576f7b,
adminURL=https://swiftserver.com:8443/}]}
2016-01-25 14:31:46,557 DEBUG
[org.jclouds.location.suppliers.fromconfig.RegionIdsFromConfiguration] [main]
no jclouds.regions configured for provider openstack-swift
2016-01-25 14:31:46,563 DEBUG
[org.jclouds.location.suppliers.fromconfig.RegionIdsFromConfiguration] [main]
no jclouds.regions configured for provider openstack-swift
2016-01-25 14:31:46,564 DEBUG
[org.jclouds.location.suppliers.fromconfig.RegionIdsFromConfiguration] [main]
no jclouds.regions configured for provider openstack-swift
2016-01-25 14:31:46,642 DEBUG [org.jclouds.rest.internal.InvokeHttpMethod]
[main] >> invoking object:put
2016-01-25 14:31:46,642 DEBUG
[org.jclouds.http.internal.JavaUrlHttpCommandExecutorService] [main] Sending
request 534857313: PUT
https://swiftserver.com:8443/v1/AUTH_22b76e9063a5412090447ec669576f7b/jclouds-example/dom4j-1.6.1.jar/slo/1453761106.613000/313898/33554432/00000001
HTTP/1.1
2016-01-25 14:31:46,643 DEBUG [org.jclouds.http.internal.HttpWire] [main] over
limit 313898/262144: wrote temp file
2016-01-25 14:31:48,940 DEBUG
[org.jclouds.http.internal.JavaUrlHttpCommandExecutorService] [main] Receiving
response 1550659132: HTTP/1.1 502 Bad Gateway
2016-01-25 14:31:48,943 DEBUG
[org.jclouds.http.handlers.BackoffLimitedRetryHandler] [main] Retry 1/5:
delaying for 51 ms: server error:
[method=org.jclouds.openstack.swift.v1.features.ObjectApi.public abstract
java.lang.String
org.jclouds.openstack.swift.v1.features.ObjectApi.put(java.lang.String,org.jclouds.io.Payload)[dom4j-1.6.1.jar/slo/1453761106.613000/313898/33554432/00000001,
[content=true, contentMetadata=[cacheControl=null,
contentDisposition=attachment; filename=dom4j-1.6.1.jar, contentEncoding=null,
contentLanguage=null, contentLength=313898, contentMD5=null,
contentType=application/octet-stream, expires=null], written=false,
isSensitive=false]], request=PUT
https://swiftserver.com:8443/v1/AUTH_22b76e9063a5412090447ec669576f7b/jclouds-example/dom4j-1.6.1.jar/slo/1453761106.613000/313898/33554432/00000001
HTTP/1.1]
2016-01-25 14:31:48,998 DEBUG
[org.jclouds.http.internal.JavaUrlHttpCommandExecutorService] [main] Sending
request 534857313: PUT
https://swiftserver.com:8443/v1/AUTH_22b76e9063a5412090447ec669576f7b/jclouds-example/dom4j-1.6.1.jar/slo/1453761106.613000/313898/33554432/00000001
HTTP/1.1
2016-01-25 14:31:48,999 DEBUG [org.jclouds.http.internal.HttpWire] [main] over
limit 313898/262144: wrote temp file
2016-01-25 14:31:50,965 DEBUG
[org.jclouds.http.internal.JavaUrlHttpCommandExecutorService] [main] Receiving
response 1116139474: HTTP/1.1 502 Bad Gateway
2016-01-25 14:31:50,967 DEBUG
[org.jclouds.http.handlers.BackoffLimitedRetryHandler] [main] Retry 2/5:
delaying for 203 ms: server error:
[method=org.jclouds.openstack.swift.v1.features.ObjectApi.public abstract
java.lang.String
org.jclouds.openstack.swift.v1.features.ObjectApi.put(java.lang.String,org.jclouds.io.Payload)[dom4j-1.6.1.jar/slo/1453761106.613000/313898/33554432/00000001,
[content=true, contentMetadata=[cacheControl=null,
contentDisposition=attachment; filename=dom4j-1.6.1.jar, contentEncoding=null,
contentLanguage=null, contentLength=313898, contentMD5=null,
contentType=application/octet-stream, expires=null], written=false,
isSensitive=false]], request=PUT
https://swiftserver.com:8443/v1/AUTH_22b76e9063a5412090447ec669576f7b/jclouds-example/dom4j-1.6.1.jar/slo/1453761106.613000/313898/33554432/00000001
HTTP/1.1]
2016-01-25 14:31:51,172 DEBUG
[org.jclouds.http.internal.JavaUrlHttpCommandExecutorService] [main] Sending
request 534857313: PUT
https://swiftserver.com:8443/v1/AUTH_22b76e9063a5412090447ec669576f7b/jclouds-example/dom4j-1.6.1.jar/slo/1453761106.613000/313898/33554432/00000001
HTTP/1.1
2016-01-25 14:31:51,173 DEBUG [org.jclouds.http.internal.HttpWire] [main] over
limit 313898/262144: wrote temp file
2016-01-25 14:31:53,284 DEBUG
[org.jclouds.http.internal.JavaUrlHttpCommandExecutorService] [main] Receiving
response 246474395: HTTP/1.1 502 Bad Gateway
2016-01-25 14:31:53,286 DEBUG
[org.jclouds.http.handlers.BackoffLimitedRetryHandler] [main] Retry 3/5:
delaying for 487 ms: server error:
[method=org.jclouds.openstack.swift.v1.features.ObjectApi.public abstract
java.lang.String
org.jclouds.openstack.swift.v1.features.ObjectApi.put(java.lang.String,org.jclouds.io.Payload)[dom4j-1.6.1.jar/slo/1453761106.613000/313898/33554432/00000001,
[content=true, contentMetadata=[cacheControl=null,
contentDisposition=attachment; filename=dom4j-1.6.1.jar, contentEncoding=null,
contentLanguage=null, contentLength=313898, contentMD5=null,
contentType=application/octet-stream, expires=null], written=false,
isSensitive=false]], request=PUT
https://swiftserver.com:8443/v1/AUTH_22b76e9063a5412090447ec669576f7b/jclouds-example/dom4j-1.6.1.jar/slo/1453761106.613000/313898/33554432/00000001
HTTP/1.1]
2016-01-25 14:31:53,776 DEBUG
[org.jclouds.http.internal.JavaUrlHttpCommandExecutorService] [main] Sending
request 534857313: PUT
https://swiftserver.com:8443/v1/AUTH_22b76e9063a5412090447ec669576f7b/jclouds-example/dom4j-1.6.1.jar/slo/1453761106.613000/313898/33554432/00000001
HTTP/1.1
2016-01-25 14:31:53,777 DEBUG [org.jclouds.http.internal.HttpWire] [main] over
limit 313898/262144: wrote temp file
2016-01-25 14:31:55,842 DEBUG
[org.jclouds.http.internal.JavaUrlHttpCommandExecutorService] [main] Receiving
response -2109778096: HTTP/1.1 502 Bad Gateway
2016-01-25 14:31:55,844 DEBUG
[org.jclouds.http.handlers.BackoffLimitedRetryHandler] [main] Retry 4/5:
delaying for 500 ms: server error:
[method=org.jclouds.openstack.swift.v1.features.ObjectApi.public abstract
java.lang.String
org.jclouds.openstack.swift.v1.features.ObjectApi.put(java.lang.String,org.jclouds.io.Payload)[dom4j-1.6.1.jar/slo/1453761106.613000/313898/33554432/00000001,
[content=true, contentMetadata=[cacheControl=null,
contentDisposition=attachment; filename=dom4j-1.6.1.jar, contentEncoding=null,
contentLanguage=null, contentLength=313898, contentMD5=null,
contentType=application/octet-stream, expires=null], written=false,
isSensitive=false]], request=PUT
https://swiftserver.com:8443/v1/AUTH_22b76e9063a5412090447ec669576f7b/jclouds-example/dom4j-1.6.1.jar/slo/1453761106.613000/313898/33554432/00000001
HTTP/1.1]
2016-01-25 14:31:56,346 DEBUG
[org.jclouds.http.internal.JavaUrlHttpCommandExecutorService] [main] Sending
request 534857313: PUT
https://swiftserver.com:8443/v1/AUTH_22b76e9063a5412090447ec669576f7b/jclouds-example/dom4j-1.6.1.jar/slo/1453761106.613000/313898/33554432/00000001
HTTP/1.1
2016-01-25 14:31:56,347 DEBUG [org.jclouds.http.internal.HttpWire] [main] over
limit 313898/262144: wrote temp file
2016-01-25 14:31:58,334 DEBUG
[org.jclouds.http.internal.JavaUrlHttpCommandExecutorService] [main] Receiving
response 1463370095: HTTP/1.1 502 Bad Gateway
2016-01-25 14:31:58,336 DEBUG
[org.jclouds.http.handlers.BackoffLimitedRetryHandler] [main] Retry 5/5:
delaying for 500 ms: server error:
[method=org.jclouds.openstack.swift.v1.features.ObjectApi.public abstract
java.lang.String
org.jclouds.openstack.swift.v1.features.ObjectApi.put(java.lang.String,org.jclouds.io.Payload)[dom4j-1.6.1.jar/slo/1453761106.613000/313898/33554432/00000001,
[content=true, contentMetadata=[cacheControl=null,
contentDisposition=attachment; filename=dom4j-1.6.1.jar, contentEncoding=null,
contentLanguage=null, contentLength=313898, contentMD5=null,
contentType=application/octet-stream, expires=null], written=false,
isSensitive=false]], request=PUT
https://swiftserver.com:8443/v1/AUTH_22b76e9063a5412090447ec669576f7b/jclouds-example/dom4j-1.6.1.jar/slo/1453761106.613000/313898/33554432/00000001
HTTP/1.1]
2016-01-25 14:31:58,842 DEBUG
[org.jclouds.http.internal.JavaUrlHttpCommandExecutorService] [main] Sending
request 534857313: PUT
https://swiftserver.com:8443/v1/AUTH_22b76e9063a5412090447ec669576f7b/jclouds-example/dom4j-1.6.1.jar/slo/1453761106.613000/313898/33554432/00000001
HTTP/1.1
2016-01-25 14:31:58,844 DEBUG [org.jclouds.http.internal.HttpWire] [main] over
limit 313898/262144: wrote temp file
2016-01-25 14:32:00,790 DEBUG
[org.jclouds.http.internal.JavaUrlHttpCommandExecutorService] [main] Receiving
response 483784884: HTTP/1.1 502 Bad Gateway
2016-01-25 14:32:00,791 ERROR
[org.jclouds.http.handlers.BackoffLimitedRetryHandler] [main] Cannot retry
after server error, command has exceeded retry limit 5:
[method=org.jclouds.openstack.swift.v1.features.ObjectApi.public abstract
java.lang.String
org.jclouds.openstack.swift.v1.features.ObjectApi.put(java.lang.String,org.jclouds.io.Payload)[dom4j-1.6.1.jar/slo/1453761106.613000/313898/33554432/00000001,
[content=true, contentMetadata=[cacheControl=null,
contentDisposition=attachment; filename=dom4j-1.6.1.jar, contentEncoding=null,
contentLanguage=null, contentLength=313898, contentMD5=null,
contentType=application/octet-stream, expires=null], written=false,
isSensitive=false]], request=PUT
https://swiftserver.com:8443/v1/AUTH_22b76e9063a5412090447ec669576f7b/jclouds-example/dom4j-1.6.1.jar/slo/1453761106.613000/313898/33554432/00000001
HTTP/1.1]
> multipart upload throwing : NullPointerException: Null partETag
> ---------------------------------------------------------------
>
> Key: JCLOUDS-1064
> URL: https://issues.apache.org/jira/browse/JCLOUDS-1064
> Project: jclouds
> Issue Type: Bug
> Components: jclouds-blobstore
> Affects Versions: 2.0.0
> Reporter: Ramesh Gojji
> Assignee: Zack Shoylev
> Labels: openstack-swift
>
> I am trying to upload a file in chunks to the openstack-swift. Here is the
> snippet of the code I am using to upload a file named dom4j-1.6.1.jar in
> chunks.
> blobStore.putBlob("jclouds-example", blob) does work, but if I add multipart
> to the method, then I get NullPointerException: Null partETag.
> {code:java}
> ByteSource payload = Files.asByteSource(tempFile);
> Blob blob = blobStore.blobBuilder(objectName)
> .payload(payload)
> .contentDisposition("attachment; filename=dom4j-1.6.1.jar")
> .contentMD5(payload.hash(Hashing.md5()))
> .contentLength(payload.size())
> .contentType(MediaType.OCTET_STREAM.toString())
> .build();
> System.out.println(blob.getMetadata().getName());
> // Upload the Blob
> String eTag = blobStore.putBlob("jclouds-example", blob,
> multipart());
> {code}
> Exception Stacktrace:
> {noformat}
> Exception in thread "main" java.lang.NullPointerException: Null partETag
> at
> org.jclouds.blobstore.domain.AutoValue_MultipartPart.<init>(AutoValue_MultipartPart.java:20)
> at
> org.jclouds.blobstore.domain.MultipartPart.create(MultipartPart.java:29)
> at
> org.jclouds.openstack.swift.v1.blobstore.RegionScopedSwiftBlobStore.uploadMultipartPart(RegionScopedSwiftBlobStore.java:481)
> at
> org.jclouds.openstack.swift.v1.blobstore.RegionScopedSwiftBlobStore.putMultipartBlob(RegionScopedSwiftBlobStore.java:567)
> at
> org.jclouds.openstack.swift.v1.blobstore.RegionScopedSwiftBlobStore.putBlob(RegionScopedSwiftBlobStore.java:244)
> at JCloudTest.<init>(JCloudTest.java:75)
> at JCloudTest.main(JCloudTest.java:26)
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)