[infinispan-issues] [JBoss JIRA] (ISPN-4751) Hibernate search, infinispan and Amazon S3 - IllegalArgumentException: bucketId: A96137216.bz2 (expected: integer)

Lance Ess (JIRA) issues at jboss.org
Tue Sep 23 13:31:02 EDT 2014


    [ https://issues.jboss.org/browse/ISPN-4751?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13005465#comment-13005465 ] 

Lance Ess commented on ISPN-4751:
---------------------------------

Thanks for your insightful comments [~sannegrinovero]

The idea of using [abandonware|http://en.wikipedia.org/wiki/Abandonware] in my product scares me so I'd prefer not to use the cachestore cloud.

My main reason for using infinispan is for it's local cache where it will only hit amazon s3 for a cache miss. Reading and writing to Amazon-S3 is dead simple and I'm thinking that jclouds isn't really that necessary and just ads yet another level of abstraction.

Would it be simple enough for me to write my own {{CacheStore}} implementation? Is there an abstract class I can extend which provides local caching where I can provide a custom {{remoteGet()}} and {{remotePut()}} for amazon-s3?

> Hibernate search, infinispan and Amazon S3 - IllegalArgumentException: bucketId: A96137216.bz2 (expected: integer)
> ------------------------------------------------------------------------------------------------------------------
>
>                 Key: ISPN-4751
>                 URL: https://issues.jboss.org/browse/ISPN-4751
>             Project: Infinispan
>          Issue Type: Bug
>            Reporter: Lance Ess
>            Assignee: Mircea Markus
>
> I'm trying to use hibernate-search to host a Lucene index on Amazon S3 but I'm getting the following exception:
> {code}
> Exception in thread "LuceneIndexesData-CloudCacheStore-0" java.lang.IllegalArgumentException: bucketId: A96137216.bz2 (expected: integer)
>     at org.infinispan.loaders.bucket.Bucket.setBucketId(Bucket.java:84)
>     at org.infinispan.loaders.cloud.CloudCacheStore.readFromBlob(CloudCacheStore.java:450)
>     at org.infinispan.loaders.cloud.CloudCacheStore.scanBlobForExpiredEntries(CloudCacheStore.java:292)
>     at org.infinispan.loaders.cloud.CloudCacheStore.purge(CloudCacheStore.java:284)
>     at org.infinispan.loaders.cloud.CloudCacheStore.purgeInternal(CloudCacheStore.java:336)
>     at org.infinispan.loaders.AbstractCacheStore$2.run(AbstractCacheStore.java:111)
>     at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
>     at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
>     at java.lang.Thread.run(Unknown Source)
> {code}
> The documentation for persisting Lucene indexes on Amazon-S3 is a little sparse but I think I'm on the right track. I'm trying to start infinispan embedded within my application so I've specified a path to the infinispan XML as follows in my hibernate.cfg.xml
> {code:xml}
> <property name="hibernate.search.default.directory_provider">infinispan</property>
> <property name="hibernate.search.infinispan.configuration_resourcename">infinispan-amazons3.xml</property>
> <property name="hibernate.search.infinispan.chunk_size">300000000</property>
> {code}
> And my infinispan-amazons3.xml is:
> {code:xml}
> <infinispan>
>     <default>
>         <loaders>
>             <cloudStore xmlns="urn:infinispan:config:cloud:5.3"
>                 cloudService="aws-s3"
>                 identity="user"
>                 password="password"
>                 bucketPrefix="bucket">
>             </cloudStore>
>         </loaders>
>     </default>
> </infinispan>
> {code}
> I'm using the following versions (maven pom.xml)
> {code}
> <dependency>
>     <groupId>org.hibernate</groupId>
>     <artifactId>hibernate-search</artifactId>
>     <version>4.4.4.Final</version>
> </dependency>
> <dependency>
>     <groupId>org.hibernate</groupId>
>     <artifactId>hibernate-search-infinispan</artifactId>
>     <version>4.4.4.Final</version>
> </dependency>
> <dependency>
>     <groupId>org.infinispan</groupId>
>     <artifactId>infinispan-cachestore-cloud</artifactId>
>     <version>5.3.0.Final</version>
> </dependency>        
> <dependency>
>     <groupId>org.jclouds.provider</groupId>
>     <artifactId>aws-s3</artifactId>
>     <version>1.4.1</version>
> </dependency>
> {code}
> I initially thought this was related to ISPN-1909 but my version is after the fix for that issue (5.1.3.CR1, 5.1.3.FINAL)
> FYI here's my maven dependency tree (grepped for infinispan)
> {code}
> $ mvn dependency:tree | grep infinispan
> [INFO] +- org.hibernate:hibernate-search-infinispan:jar:4.4.4.Final:compile
> [INFO] |  \- org.infinispan:infinispan-lucene-directory:jar:5.3.0.Final:compile
> [INFO] +- org.infinispan:infinispan-cachestore-cloud:jar:5.3.0.Final:compile
> [INFO] |  \- org.infinispan:infinispan-core:jar:5.3.0.Final:compile
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.1#6329)


More information about the infinispan-issues mailing list