You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@jclouds.apache.org by "Trần Tiến Đức (JIRA)" <ji...@apache.org> on 2019/01/02 04:05:00 UTC

[jira] [Updated] (JCLOUDS-1479) Swift API throws Exception when getting blob from containers

     [ https://issues.apache.org/jira/browse/JCLOUDS-1479?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Trần Tiến Đức updated JCLOUDS-1479:
-----------------------------------
    Summary: Swift API throws Exception when getting blob from containers  (was: Swift API throws Exception when creating container)

> Swift API throws Exception when getting blob from containers
> ------------------------------------------------------------
>
>                 Key: JCLOUDS-1479
>                 URL: https://issues.apache.org/jira/browse/JCLOUDS-1479
>             Project: jclouds
>          Issue Type: Bug
>          Components: jclouds-labs-openstack
>            Reporter: Trần Tiến Đức
>            Priority: Major
>
> Hello, I am getting a weird behavior from swift api client. The scenario is: I have a blobStore object, invoking blobStore.createContainerInLocation(location, container) works well but checking container exists before creating container, then use that blobStore to get a blob throws an exception:
>  {code:java}
> blobStore.createContainerInLocation(location, container); 
> blobStore.getBlob(container, blobId); // workw well
> {code}
> {code:java}
> blobStore.containerExists(container);
> blobStore.createContainerInLocation(location, container); 
> blobStore.getBlob(container, blobId); // throws here
> {code}
> This is a part of stack trace:
> {code:java}
> java.lang.IllegalStateException: Optional.get() cannot be called on an absent value
>  at com.google.common.base.Absent.get(Absent.java:43)
>  at org.jclouds.openstack.swift.v1.blobstore.RegionScopedSwiftBlobStore.toBlobMetadata(RegionScopedSwiftBlobStore.java:607)
>  at org.jclouds.openstack.swift.v1.blobstore.RegionScopedSwiftBlobStore.getBlob(RegionScopedSwiftBlobStore.java:384)
>  at org.jclouds.openstack.swift.v1.blobstore.RegionScopedSwiftBlobStore.getBlob(RegionScopedSwiftBlobStore.java:374)
> {code}
> Is it a bug or an expected behavior? Or if it is expected, could you explain the reason why exception thrown, Thanks! :)
> [full example is here|https://github.com/trantienduchn/test-docker/blob/master/src/test/java/duc/home/test/docker/openstack/swift/SwiftTest.java] 
> I'm using an [docker|https://github.com/jeantil/openstack-swift-keystone-docker] to run openstack swift which is using:
>  * keystone 12.0.0
>  * Swift 2.15.1
> and jcloud api version 2.1.1
> {code:java}
> <dependency>
>     <groupId>org.apache.jclouds.api</groupId>
>     <artifactId>openstack-swift</artifactId>
>     <version>${jclouds.version}</version>
> </dependency>
> {code}
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)