-
Bug
-
Resolution: Done
-
Major
-
8.2.4.Final
-
None
When cloud cache store use AWS S3 as storage backend, cloud cache store fails on caches which conatins underscore (e.g. on ___defaultcache). It happen only when aws-s3 provider is used, as it uses URI in format http://CONTAINERPREFIX-___$CACHENAME.s3.amazonaws.com/. When s3 is used as a provider, it works fine, but aws-s3 is recommended provider (recommended by jclouds).
It fails with
ERROR StatusLogger Log4j2 could not find a logging implementation. Please add log4j-core to the classpath. Using SimpleLogger to log to the console... Exception in thread "main" org.infinispan.commons.CacheException: Unable to invoke method public void org.infinispan.persistence.manager.PersistenceManagerImpl.start() on object of type PersistenceManagerImpl at org.infinispan.commons.util.ReflectionUtil.invokeAccessibly(ReflectionUtil.java:172) at org.infinispan.factories.AbstractComponentRegistry$PrioritizedMethod.invoke(AbstractComponentRegistry.java:867) at org.infinispan.factories.AbstractComponentRegistry.invokeStartMethods(AbstractComponentRegistry.java:633) at org.infinispan.factories.AbstractComponentRegistry.internalStart(AbstractComponentRegistry.java:622) at org.infinispan.factories.AbstractComponentRegistry.start(AbstractComponentRegistry.java:547) at org.infinispan.factories.ComponentRegistry.start(ComponentRegistry.java:238) at org.infinispan.cache.impl.CacheImpl.start(CacheImpl.java:890) at org.infinispan.manager.DefaultCacheManager.wireAndStartCache(DefaultCacheManager.java:636) at org.infinispan.manager.DefaultCacheManager.createCache(DefaultCacheManager.java:587) at org.infinispan.manager.DefaultCacheManager.getCache(DefaultCacheManager.java:452) at org.infinispan.manager.DefaultCacheManager.getCache(DefaultCacheManager.java:438) at org.infinispan.manager.DefaultCacheManager.getCache(DefaultCacheManager.java:420) at org.infinispan.demo.S3CacheStore.main(S3CacheStore.java:22) Caused by: org.infinispan.commons.CacheException: Unable to start cache loaders at org.infinispan.persistence.manager.PersistenceManagerImpl.start(PersistenceManagerImpl.java:171) 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:498) at org.infinispan.commons.util.ReflectionUtil.invokeAccessibly(ReflectionUtil.java:168) ... 12 more Caused by: java.lang.IllegalArgumentException: endpoint.getHost() is null for http://ispn-store-___defaultcache.s3.amazonaws.com/ at com.google.common.base.Preconditions.checkArgument(Preconditions.java:125) at org.jclouds.http.HttpRequest.<init>(HttpRequest.java:245) at org.jclouds.rest.internal.GeneratedHttpRequest.<init>(GeneratedHttpRequest.java:83) at org.jclouds.rest.internal.GeneratedHttpRequest$Builder.build(GeneratedHttpRequest.java:63) at org.jclouds.rest.internal.GeneratedHttpRequest$Builder.build(GeneratedHttpRequest.java:42) at org.jclouds.rest.binders.BindAsHostPrefix.bindToRequest(BindAsHostPrefix.java:41) at org.jclouds.s3.binders.BindAsHostPrefixIfConfigured.bindToRequest(BindAsHostPrefixIfConfigured.java:59) at org.jclouds.rest.internal.RestAnnotationProcessor.decorateRequest(RestAnnotationProcessor.java:627) at org.jclouds.rest.internal.RestAnnotationProcessor.apply(RestAnnotationProcessor.java:326) at org.jclouds.rest.internal.RestAnnotationProcessor.apply(RestAnnotationProcessor.java:129) at org.jclouds.rest.internal.InvokeHttpMethod.toCommand(InvokeHttpMethod.java:188) at org.jclouds.rest.internal.InvokeHttpMethod.invoke(InvokeHttpMethod.java:84) at org.jclouds.rest.internal.InvokeHttpMethod.apply(InvokeHttpMethod.java:73) at org.jclouds.rest.internal.InvokeHttpMethod.apply(InvokeHttpMethod.java:44) at org.jclouds.rest.internal.DelegatesToInvocationFunction.handle(DelegatesToInvocationFunction.java:156) at org.jclouds.rest.internal.DelegatesToInvocationFunction.invoke(DelegatesToInvocationFunction.java:123) at com.sun.proxy.$Proxy45.bucketExists(Unknown Source) at org.jclouds.s3.blobstore.S3BlobStore.containerExists(S3BlobStore.java:130) at org.infinispan.persistence.cloud.CloudStore.start(CloudStore.java:112) at org.infinispan.persistence.manager.PersistenceManagerImpl.start(PersistenceManagerImpl.java:138) ... 17 more