Details
-
Bug
-
Resolution: Done
-
Major
-
6.0.2.Final, 7.0.0.Alpha5
-
None
Description
When I try to stop cache manager with cache that is configured like this:
<distributed-cache name="dist_lucene" owners="2" segments="512"> <locking acquire-timeout="3000" concurrency-level="1000" /> <transaction mode="NON_DURABLE_XA" locking="OPTIMISTIC"/> <indexing index="LOCAL"> <property name="default.directory_provider">infinispan</property> <property name="default.indexmanager">org.infinispan.query.indexmanager.InfinispanIndexManager</property> <property name="default.exclusive_index_use">true</property> <property name="default.reader.strategy">shared</property> <property name="hibernate.search.lucene_version">LUCENE_48</property> </indexing> </distributed-cache>
during stop, another cache (containing the locks) is accessed, but this can be already stopped. Then, the cacheManager.stop() fails:
Caused by: java.lang.IllegalStateException: Cache 'LuceneIndexesLocking' is in 'TERMINATED' state and so it does not accept new invocations. Either restart it or recreate the cache container. at org.infinispan.interceptors.InvocationContextInterceptor.handleAll(InvocationContextInterceptor.java:92) at org.infinispan.interceptors.InvocationContextInterceptor.handleDefault(InvocationContextInterceptor.java:74) at org.infinispan.commands.AbstractVisitor.visitGetKeyValueCommand(AbstractVisitor.java:75) at org.infinispan.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:44) at org.infinispan.interceptors.InterceptorChain.invoke(InterceptorChain.java:333) at org.infinispan.cache.impl.CacheImpl.get(CacheImpl.java:392) at org.infinispan.cache.impl.DecoratedCache.get(DecoratedCache.java:398) at org.infinispan.lucene.readlocks.DistributedSegmentReadLocker.deleteOrReleaseReadLock(DistributedSegmentReadLocker.java:74) at org.infinispan.lucene.impl.InfinispanIndexInput.close(InfinispanIndexInput.java:89) at org.apache.lucene.util.IOUtils.close(IOUtils.java:77) at org.apache.lucene.codecs.BlockTreeTermsReader.close(BlockTreeTermsReader.java:242) at org.apache.lucene.util.IOUtils.close(IOUtils.java:100) at org.apache.lucene.codecs.perfield.PerFieldPostingsFormat$FieldsReader.close(PerFieldPostingsFormat.java:227) at org.apache.lucene.util.IOUtils.close(IOUtils.java:77) at org.apache.lucene.index.SegmentCoreReaders.decRef(SegmentCoreReaders.java:178) at org.apache.lucene.index.SegmentReader.doClose(SegmentReader.java:260) at org.apache.lucene.index.IndexReader.decRef(IndexReader.java:243) at org.apache.lucene.index.StandardDirectoryReader.doClose(StandardDirectoryReader.java:362) at org.apache.lucene.index.IndexReader.decRef(IndexReader.java:243) at org.apache.lucene.index.IndexReader.close(IndexReader.java:479) at org.hibernate.search.indexes.impl.SharingBufferReaderProvider$ReaderUsagePair.close(SharingBufferReaderProvider.java:163) at org.hibernate.search.indexes.impl.SharingBufferReaderProvider.stop(SharingBufferReaderProvider.java:120) at org.hibernate.search.indexes.impl.DirectoryBasedIndexManager.destroy(DirectoryBasedIndexManager.java:74) at org.hibernate.search.indexes.impl.IndexManagerHolder.stop(IndexManagerHolder.java:197) at org.hibernate.search.impl.ImmutableSearchFactory.close(ImmutableSearchFactory.java:169) at org.hibernate.search.impl.MutableSearchFactory.close(MutableSearchFactory.java:127) at org.infinispan.query.impl.LifecycleManager.cacheStopped(LifecycleManager.java:278) at org.infinispan.factories.ComponentRegistry.stop(ComponentRegistry.java:244) at org.infinispan.cache.impl.CacheImpl.stop(CacheImpl.java:774) at org.infinispan.cache.impl.CacheImpl.stop(CacheImpl.java:769) at org.infinispan.manager.DefaultCacheManager.stop(DefaultCacheManager.java:630) ... 4 more Suppressed: java.lang.IllegalStateException: Cache 'LuceneIndexesLocking' is in 'TERMINATED' state and so it does not accept new invocations. Either restart it or recreate the cache container. at org.infinispan.interceptors.InvocationContextInterceptor.handleAll(InvocationContextInterceptor.java:92) at org.infinispan.interceptors.InvocationContextInterceptor.handleDefault(InvocationContextInterceptor.java:74) at org.infinispan.commands.AbstractVisitor.visitGetKeyValueCommand(AbstractVisitor.java:75) at org.infinispan.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:44) at org.infinispan.interceptors.InterceptorChain.invoke(InterceptorChain.java:333) at org.infinispan.cache.impl.CacheImpl.get(CacheImpl.java:392) at org.infinispan.cache.impl.DecoratedCache.get(DecoratedCache.java:398) at org.infinispan.lucene.readlocks.DistributedSegmentReadLocker.deleteOrReleaseReadLock(DistributedSegmentReadLocker.java:74) at org.infinispan.lucene.impl.InfinispanIndexInput.close(InfinispanIndexInput.java:89) at org.apache.lucene.util.IOUtils.close(IOUtils.java:77) at org.apache.lucene.codecs.lucene41.Lucene41PostingsReader.close(Lucene41PostingsReader.java:145) ... 29 more Suppressed: java.lang.IllegalStateException: Cache 'LuceneIndexesLocking' is in 'TERMINATED' state and so it does not accept new invocations. Either restart it or recreate the cache container. ... 40 more Suppressed: java.lang.IllegalStateException: Cache 'LuceneIndexesLocking' is in 'TERMINATED' state and so it does not accept new invocations. Either restart it or recreate the cache container. at org.infinispan.interceptors.InvocationContextInterceptor.handleAll(InvocationContextInterceptor.java:92) at org.infinispan.interceptors.InvocationContextInterceptor.handleDefault(InvocationContextInterceptor.java:74) at org.infinispan.commands.AbstractVisitor.visitGetKeyValueCommand(AbstractVisitor.java:75) at org.infinispan.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:44) at org.infinispan.interceptors.InterceptorChain.invoke(InterceptorChain.java:333) at org.infinispan.cache.impl.CacheImpl.get(CacheImpl.java:392) at org.infinispan.cache.impl.DecoratedCache.get(DecoratedCache.java:398) at org.infinispan.lucene.readlocks.DistributedSegmentReadLocker.deleteOrReleaseReadLock(DistributedSegmentReadLocker.java:74) at org.infinispan.lucene.impl.InfinispanIndexInput.close(InfinispanIndexInput.java:89) at org.apache.lucene.util.IOUtils.close(IOUtils.java:77) at org.apache.lucene.codecs.compressing.CompressingStoredFieldsReader.close(CompressingStoredFieldsReader.java:181) ... 25 more Suppressed: java.lang.IllegalStateException: Cache 'LuceneIndexesLocking' is in 'TERMINATED' state and so it does not accept new invocations. Either restart it or recreate the cache container. at org.infinispan.interceptors.InvocationContextInterceptor.handleAll(InvocationContextInterceptor.java:92) at org.infinispan.interceptors.InvocationContextInterceptor.handleDefault(InvocationContextInterceptor.java:74) at org.infinispan.commands.AbstractVisitor.visitGetKeyValueCommand(AbstractVisitor.java:75) at org.infinispan.commands.read.GetKeyValueCommand.acceptVisitor(GetKeyValueCommand.java:44) at org.infinispan.interceptors.InterceptorChain.invoke(InterceptorChain.java:333) at org.infinispan.cache.impl.CacheImpl.get(CacheImpl.java:392) at org.infinispan.cache.impl.DecoratedCache.get(DecoratedCache.java:398) at org.infinispan.lucene.readlocks.DistributedSegmentReadLocker.deleteOrReleaseReadLock(DistributedSegmentReadLocker.java:74) at org.infinispan.lucene.impl.InfinispanIndexInput.close(InfinispanIndexInput.java:89) at org.apache.lucene.codecs.lucene42.Lucene42DocValuesProducer.close(Lucene42DocValuesProducer.java:489) ... 25 more