[
https://issues.apache.org/jira/browse/JCLOUDS-1419?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Suresh updated JCLOUDS-1419:
----------------------------
Description:
When calling BlobStore.putBlob the object is created but we receive an exception
{code:java}
SEVERE: Error parsing input: No enum constant
org.jclouds.googlecloudstorage.domain.DomainResourceReferences.StorageClass.REGIONAL
java.lang.IllegalArgumentException: No enum constant
org.jclouds.googlecloudstorage.domain.DomainResourceReferences.StorageClass.REGIONAL
{code}
The bucket itself is defined as a "Regional" storage class (other choices
available are Multi-Regional, Nearline and Coldline)
Here is the full exception we receive:
{code:java}
May 15, 2018 5:47:55 PM org.jclouds.logging.jdk.JDKLogger logError
SEVERE: Error parsing input: No enum constant
org.jclouds.googlecloudstorage.domain.DomainResourceReferences.StorageClass.REGIONAL
java.lang.IllegalArgumentException: No enum constant
org.jclouds.googlecloudstorage.domain.DomainResourceReferences.StorageClass.REGIONAL
at java.lang.Enum.valueOf(Enum.java:238)
at
org.jclouds.json.internal.EnumTypeAdapterThatReturnsFromValue.deserialize(EnumTypeAdapterThatReturnsFromValue.java:41)
at
org.jclouds.json.internal.EnumTypeAdapterThatReturnsFromValue.deserialize(EnumTypeAdapterThatReturnsFromValue.java:32)
at com.google.gson.TreeTypeAdapter.read(TreeTypeAdapter.java:58)
at
org.jclouds.json.internal.DeserializationConstructorAndReflectiveTypeAdapterFactory$ParameterReader.read(DeserializationConstructorAndReflectiveTypeAdapterFactory.java:272)
at
org.jclouds.json.internal.DeserializationConstructorAndReflectiveTypeAdapterFactory$DeserializeIntoParameterizedConstructor.read(DeserializationConstructorAndReflectiveTypeAdapterFactory.java:184)
at com.google.gson.Gson.fromJson(Gson.java:861)
at com.google.gson.Gson.fromJson(Gson.java:826)
at org.jclouds.json.internal.GsonWrapper.fromJson(GsonWrapper.java:55)
at org.jclouds.http.functions.ParseJson.apply(ParseJson.java:82)
at org.jclouds.http.functions.ParseJson.apply(ParseJson.java:76)
at org.jclouds.http.functions.ParseJson.apply(ParseJson.java:61)
at org.jclouds.http.functions.ParseJson.apply(ParseJson.java:41)
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.$Proxy104.simpleUpload(Unknown Source)
at
org.jclouds.googlecloudstorage.blobstore.GoogleCloudStorageBlobStore.uploadMultipartPart(GoogleCloudStorageBlobStore.java:425)
at
org.jclouds.blobstore.internal.BaseBlobStore$BlobUploader.call(BaseBlobStore.java:388)
at
org.jclouds.blobstore.internal.BaseBlobStore$BlobUploader.call(BaseBlobStore.java:375)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
{code}
It looks like the list of [StorageClass
enum]([https://github.com/jclouds/jclouds-labs-google/blob/master/google-cloud-storage/src/main/java/org/jclouds/googlecloudstorage/domain/DomainResourceReferences.java#L48])
is incomplete
EDIT: buckets created with Regional storage class are not working either
was:
When calling BlobStore.putBlob the object is created but we receive an exception
{code}
java.lang.IllegalArgumentException: No enum constant
org.jclouds.googlecloudstorage.domain.DomainResourceReferences.StorageClass.MULTI_REGIONAL
{code}
In the logs we see that the server replied with
{code}
2017-03-20 14:45:12 DEBUG main wire:56 - << " "storageClass":
"MULTI_REGIONAL",[\n]"
{code}
The bucket itself is defined as a "Multi-Regional" storage class (other choices
available are Nearline and Coldline)
Here is the full exception we receive:
{code}
java.lang.IllegalArgumentException: No enum constant
org.jclouds.googlecloudstorage.domain.DomainResourceReferences.StorageClass.MULTI_REGIONAL
at java.lang.Enum.valueOf(Enum.java:238)
at
org.jclouds.json.internal.EnumTypeAdapterThatReturnsFromValue.deserialize(EnumTypeAdapterThatReturnsFromValue.java:41)
at
org.jclouds.json.internal.EnumTypeAdapterThatReturnsFromValue.deserialize(EnumTypeAdapterThatReturnsFromValue.java:32)
at com.google.gson.TreeTypeAdapter.read(TreeTypeAdapter.java:58)
at
org.jclouds.json.internal.DeserializationConstructorAndReflectiveTypeAdapterFactory$ParameterReader.read(DeserializationConstructorAndReflectiveTypeAdapterFactory.java:272)
at
org.jclouds.json.internal.DeserializationConstructorAndReflectiveTypeAdapterFactory$DeserializeIntoParameterizedConstructor.read(DeserializationConstructorAndReflectiveTypeAdapterFactory.java:184)
at com.google.gson.Gson.fromJson(Gson.java:861)
at com.google.gson.Gson.fromJson(Gson.java:826)
at org.jclouds.json.internal.GsonWrapper.fromJson(GsonWrapper.java:55)
at org.jclouds.http.functions.ParseJson.apply(ParseJson.java:82)
at org.jclouds.http.functions.ParseJson.apply(ParseJson.java:76)
at org.jclouds.http.functions.ParseJson.apply(ParseJson.java:61)
at org.jclouds.http.functions.ParseJson.apply(ParseJson.java:41)
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.$Proxy65.multipartUpload(Unknown Source)
at
org.jclouds.googlecloudstorage.blobstore.GoogleCloudStorageBlobStore.putBlob(GoogleCloudStorageBlobStore.java:240)
at
org.jclouds.googlecloudstorage.blobstore.GoogleCloudStorageBlobStore.putBlob(GoogleCloudStorageBlobStore.java:212)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at
com.google.inject.internal.DelegatingInvocationHandler.invoke(DelegatingInvocationHandler.java:37)
at com.sun.proxy.$Proxy49.putBlob(Unknown Source)
{code}
It looks like the list of [StorageClass
enum](https://github.com/jclouds/jclouds-labs-google/blob/master/google-cloud-storage/src/main/java/org/jclouds/googlecloudstorage/domain/DomainResourceReferences.java#L48)
is incomplete
EDIT: buckets created with Regional storage class are not working either
> Missing StorageClass REGIONAL for GCS buckets
> ---------------------------------------------
>
> Key: JCLOUDS-1419
> URL: https://issues.apache.org/jira/browse/JCLOUDS-1419
> Project: jclouds
> Issue Type: Bug
> Components: jclouds-blobstore, jclouds-labs-google
> Affects Versions: 2.0.0
> Environment: jclouds.provider=google-cloud-storage
> using bucket "Regional"
> Reporter: Suresh
> Assignee: Andrew Gaul
> Priority: Major
> Labels: google-cloud-storage
> Fix For: 2.1.0, 2.0.2
>
>
> When calling BlobStore.putBlob the object is created but we receive an
> exception
> {code:java}
> SEVERE: Error parsing input: No enum constant
> org.jclouds.googlecloudstorage.domain.DomainResourceReferences.StorageClass.REGIONAL
> java.lang.IllegalArgumentException: No enum constant
> org.jclouds.googlecloudstorage.domain.DomainResourceReferences.StorageClass.REGIONAL
> {code}
> The bucket itself is defined as a "Regional" storage class (other choices
> available are Multi-Regional, Nearline and Coldline)
> Here is the full exception we receive:
> {code:java}
> May 15, 2018 5:47:55 PM org.jclouds.logging.jdk.JDKLogger logError
> SEVERE: Error parsing input: No enum constant
> org.jclouds.googlecloudstorage.domain.DomainResourceReferences.StorageClass.REGIONAL
> java.lang.IllegalArgumentException: No enum constant
> org.jclouds.googlecloudstorage.domain.DomainResourceReferences.StorageClass.REGIONAL
> at java.lang.Enum.valueOf(Enum.java:238)
> at
> org.jclouds.json.internal.EnumTypeAdapterThatReturnsFromValue.deserialize(EnumTypeAdapterThatReturnsFromValue.java:41)
> at
> org.jclouds.json.internal.EnumTypeAdapterThatReturnsFromValue.deserialize(EnumTypeAdapterThatReturnsFromValue.java:32)
> at com.google.gson.TreeTypeAdapter.read(TreeTypeAdapter.java:58)
> at
> org.jclouds.json.internal.DeserializationConstructorAndReflectiveTypeAdapterFactory$ParameterReader.read(DeserializationConstructorAndReflectiveTypeAdapterFactory.java:272)
> at
> org.jclouds.json.internal.DeserializationConstructorAndReflectiveTypeAdapterFactory$DeserializeIntoParameterizedConstructor.read(DeserializationConstructorAndReflectiveTypeAdapterFactory.java:184)
> at com.google.gson.Gson.fromJson(Gson.java:861)
> at com.google.gson.Gson.fromJson(Gson.java:826)
> at org.jclouds.json.internal.GsonWrapper.fromJson(GsonWrapper.java:55)
> at org.jclouds.http.functions.ParseJson.apply(ParseJson.java:82)
> at org.jclouds.http.functions.ParseJson.apply(ParseJson.java:76)
> at org.jclouds.http.functions.ParseJson.apply(ParseJson.java:61)
> at org.jclouds.http.functions.ParseJson.apply(ParseJson.java:41)
> 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.$Proxy104.simpleUpload(Unknown Source)
> at
> org.jclouds.googlecloudstorage.blobstore.GoogleCloudStorageBlobStore.uploadMultipartPart(GoogleCloudStorageBlobStore.java:425)
> at
> org.jclouds.blobstore.internal.BaseBlobStore$BlobUploader.call(BaseBlobStore.java:388)
> at
> org.jclouds.blobstore.internal.BaseBlobStore$BlobUploader.call(BaseBlobStore.java:375)
> at java.util.concurrent.FutureTask.run(FutureTask.java:266)
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
> at java.lang.Thread.run(Thread.java:745)
> {code}
> It looks like the list of [StorageClass
> enum]([https://github.com/jclouds/jclouds-labs-google/blob/master/google-cloud-storage/src/main/java/org/jclouds/googlecloudstorage/domain/DomainResourceReferences.java#L48])
> is incomplete
> EDIT: buckets created with Regional storage class are not working either
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)