[JBoss JIRA] (ISPN-4751) Hibernate search, infinispan, and Amazon S3 - IllegalArgumentException: bucketId: A96137216.bz2 (expected: integer)
by Lance Ess (JIRA)
[ https://issues.jboss.org/browse/ISPN-4751?page=com.atlassian.jira.plugin.... ]
Lance Ess updated ISPN-4751:
----------------------------
Description:
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
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}
> 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
> 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)
11 years, 6 months
[JBoss JIRA] (ISPN-3900) Expose mechanism to retrieve the set of keys associated with a group
by Paul Ferraro (JIRA)
[ https://issues.jboss.org/browse/ISPN-3900?page=com.atlassian.jira.plugin.... ]
Paul Ferraro closed ISPN-3900.
------------------------------
Fix Version/s: 7.0.0.Beta1
Resolution: Done
Incorporating issue was resolved (ISPN-3981)
> Expose mechanism to retrieve the set of keys associated with a group
> --------------------------------------------------------------------
>
> Key: ISPN-3900
> URL: https://issues.jboss.org/browse/ISPN-3900
> Project: Infinispan
> Issue Type: Feature Request
> Components: Core
> Affects Versions: 6.0.1.Final
> Reporter: Paul Ferraro
> Assignee: Mircea Markus
> Fix For: 7.0.0.Beta1
>
>
> The grouping API allows the association of set of keys to a group. It would be useful to be able to obtain the set of keys associated with a given group.
> In WildFly, a web session is stored using multiple cache entries, one entry for the session meta data (key is session id), and one entry for each session attribute (key is session id + attribute name). In order to look up find all the entries for a given session, the cache entry storing the meta has to store an additional Set<String> of attribute names so that I can locate all session attribute cache entries for a given session. Not only information redundant and bloats the session, but if I add or remove session attributes, I additionally need to replace the value for the cache entry containing the session meta data (since the set it contains will have mutated). This latter part could be avoided if Infinispan provided a mechanism to return all the cache keys that map to a given group.
--
This message was sent by Atlassian JIRA
(v6.3.1#6329)
11 years, 6 months
[JBoss JIRA] (ISPN-4356) Solr analysis cannot be used in OSGi due to Hibernate Search not being able to find Solr on classpath
by Sanne Grinovero (JIRA)
[ https://issues.jboss.org/browse/ISPN-4356?page=com.atlassian.jira.plugin.... ]
Sanne Grinovero updated ISPN-4356:
----------------------------------
Status: Open (was: Pull Request Sent)
needs some more changes
> Solr analysis cannot be used in OSGi due to Hibernate Search not being able to find Solr on classpath
> -----------------------------------------------------------------------------------------------------
>
> Key: ISPN-4356
> URL: https://issues.jboss.org/browse/ISPN-4356
> Project: Infinispan
> Issue Type: Bug
> Components: Embedded Querying
> Affects Versions: 7.0.0.Alpha4
> Reporter: Martin Gencur
> Assignee: Gustavo Fernandes
>
> Stacktrace I got while running org.infinispan.query.analysis.SolrAnalyzerTest in Karaf :
> {code}
> org.hibernate.search.SearchException: Use of @AnalyzerDef while Solr is not present in the classpath. Add apache-solr-analyzer.jar
> at org.hibernate.search.impl.ConfigContext.buildAnalyzer(ConfigContext.java:226)
> at org.hibernate.search.impl.ConfigContext.initLazyAnalyzers(ConfigContext.java:204)
> at org.hibernate.search.spi.SearchFactoryBuilder.initDocumentBuilders(SearchFactoryBuilder.java:389)
> at org.hibernate.search.spi.SearchFactoryBuilder.buildIncrementalSearchFactory(SearchFactoryBuilder.java:166)
> at org.hibernate.search.spi.SearchFactoryBuilder.buildSearchFactory(SearchFactoryBuilder.java:146)
> at org.hibernate.search.impl.MutableSearchFactory.addClasses(MutableSearchFactory.java:251)
> at org.infinispan.query.backend.QueryInterceptor.enableClassesIncrementally(QueryInterceptor.java:272)
> at org.infinispan.query.backend.QueryInterceptor.updateKnownTypesIfNeeded(QueryInterceptor.java:313)
> at org.infinispan.query.backend.QueryInterceptor.processPutKeyValueCommand(QueryInterceptor.java:518)
> at org.infinispan.query.backend.QueryInterceptor.visitPutKeyValueCommand(QueryInterceptor.java:161)
> at org.infinispan.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:71)
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:98)
> at org.infinispan.interceptors.locking.OptimisticLockingInterceptor.visitPutKeyValueCommand(OptimisticLockingInterceptor.java:99)
> at org.infinispan.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:71)
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:98)
> at org.infinispan.interceptors.base.CommandInterceptor.handleDefault(CommandInterceptor.java:112)
> at org.infinispan.commands.AbstractVisitor.visitPutKeyValueCommand(AbstractVisitor.java:32)
> at org.infinispan.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:71)
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:98)
> at org.infinispan.interceptors.TxInterceptor.enlistWriteAndInvokeNext(TxInterceptor.java:271)
> at org.infinispan.interceptors.TxInterceptor.visitPutKeyValueCommand(TxInterceptor.java:195)
> at org.infinispan.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:71)
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:98)
> at org.infinispan.interceptors.CacheMgmtInterceptor.updateStoreStatistics(CacheMgmtInterceptor.java:148)
> at org.infinispan.interceptors.CacheMgmtInterceptor.visitPutKeyValueCommand(CacheMgmtInterceptor.java:134)
> at org.infinispan.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:71)
> at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:98)
> at org.infinispan.interceptors.InvocationContextInterceptor.handleAll(InvocationContextInterceptor.java:111)
> at org.infinispan.interceptors.InvocationContextInterceptor.handleDefault(InvocationContextInterceptor.java:74)
> at org.infinispan.commands.AbstractVisitor.visitPutKeyValueCommand(AbstractVisitor.java:32)
> at org.infinispan.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:71)
> at org.infinispan.interceptors.InterceptorChain.invoke(InterceptorChain.java:333)
> at org.infinispan.cache.impl.CacheImpl.executeCommandAndCommitIfNeeded(CacheImpl.java:1429)
> at org.infinispan.cache.impl.CacheImpl.putInternal(CacheImpl.java:907)
> at org.infinispan.cache.impl.CacheImpl.put(CacheImpl.java:899)
> at org.infinispan.cache.impl.CacheImpl.put(CacheImpl.java:1474)
> at org.infinispan.cache.impl.CacheImpl.put(CacheImpl.java:232)
> at org.infinispan.query.analysis.SolrAnalyzerTest.testAnalyzerDef(SolrAnalyzerTest.java:56)
> at org.infinispan.it.osgi.query.blackbox.SolrAnalyzerTest.testAnalyzerDef(SolrAnalyzerTest.java:40)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[:1.7.0_17]
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)[:1.7.0_17]
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[:1.7.0_17]
> at java.lang.reflect.Method.invoke(Method.java:601)[:1.7.0_17]
> at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
> at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
> at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)
> at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
> at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
> at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
> at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271)[111:org.ops4j.pax.tipi.junit:4.11.0.1]
> at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70)
> at org.ops4j.pax.exam.invoker.junit.internal.ContainerTestRunner.runChild(ContainerTestRunner.java:67)
> at org.ops4j.pax.exam.invoker.junit.internal.ContainerTestRunner.runChild(ContainerTestRunner.java:37)
> at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238)[111:org.ops4j.pax.tipi.junit:4.11.0.1]
> at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63)[111:org.ops4j.pax.tipi.junit:4.11.0.1]
> at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236)[111:org.ops4j.pax.tipi.junit:4.11.0.1]
> at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53)[111:org.ops4j.pax.tipi.junit:4.11.0.1]
> at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229)[111:org.ops4j.pax.tipi.junit:4.11.0.1]
> at org.junit.runners.ParentRunner.run(ParentRunner.java:309)[111:org.ops4j.pax.tipi.junit:4.11.0.1]
> at org.junit.runner.JUnitCore.run(JUnitCore.java:160)
> at org.junit.runner.JUnitCore.run(JUnitCore.java:138)
> at org.ops4j.pax.exam.invoker.junit.internal.JUnitProbeInvoker.invokeViaJUnit(JUnitProbeInvoker.java:125)
> at org.ops4j.pax.exam.invoker.junit.internal.JUnitProbeInvoker.findAndInvoke(JUnitProbeInvoker.java:98)
> at org.ops4j.pax.exam.invoker.junit.internal.JUnitProbeInvoker.call(JUnitProbeInvoker.java:74)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[:1.7.0_17]
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)[:1.7.0_17]
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[:1.7.0_17]
> at java.lang.reflect.Method.invoke(Method.java:601)[:1.7.0_17]
> at org.ops4j.pax.exam.rbc.internal.RemoteBundleContextImpl.remoteCall(RemoteBundleContextImpl.java:80)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[:1.7.0_17]
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)[:1.7.0_17]
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[:1.7.0_17]
> at java.lang.reflect.Method.invoke(Method.java:601)[:1.7.0_17]
> at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:322)[:1.7.0_17]
> at sun.rmi.transport.Transport$1.run(Transport.java:177)[:1.7.0_17]
> at sun.rmi.transport.Transport$1.run(Transport.java:174)[:1.7.0_17]
> at java.security.AccessController.doPrivileged(Native Method)[:1.7.0_17]
> at sun.rmi.transport.Transport.serviceCall(Transport.java:173)[:1.7.0_17]
> at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:553)[:1.7.0_17]
> at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:808)[:1.7.0_17]
> at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:667)[:1.7.0_17]
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)[:1.7.0_17]
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)[:1.7.0_17]
> at java.lang.Thread.run(Thread.java:722)[:1.7.0_17]
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.1#6329)
11 years, 6 months