-
Bug
-
Resolution: Duplicate
-
Major
-
None
-
8.2.2.Final
-
None
-
None
Receiving a NullPointerException out of infinispan with the following stack (using 8.2.2 final):
java.lang.NullPointerException at org.infinispan.commons.util.concurrent.jdk8backported.BoundedEquivalentConcurrentHashMapV8$LIRSEvictionPolicy.findIfEntriesNeedEvicting(BoundedEquivalentConcurrentHashMapV8.java:1531) at org.infinispan.commons.util.concurrent.jdk8backported.BoundedEquivalentConcurrentHashMapV8.compute(BoundedEquivalentConcurrentHashMapV8.java:3657) at org.infinispan.container.DefaultDataContainer.put(DefaultDataContainer.java:227) at org.infinispan.container.entries.ReadCommittedEntry.commit(ReadCommittedEntry.java:168) at org.infinispan.statetransfer.CommitManager.commit(CommitManager.java:100) at org.infinispan.interceptors.locking.ClusteringDependentLogic$LocalLogic.commitSingleEntry(ClusteringDependentLogic.java:299) at org.infinispan.interceptors.locking.ClusteringDependentLogic$AbstractClusteringDependentLogic.commitEntry(ClusteringDependentLogic.java:115) at org.infinispan.interceptors.EntryWrappingInterceptor.commitContextEntry(EntryWrappingInterceptor.java:479) at org.infinispan.interceptors.EntryWrappingInterceptor.commitEntryIfNeeded(EntryWrappingInterceptor.java:655) at org.infinispan.interceptors.EntryWrappingInterceptor.commitContextEntries(EntryWrappingInterceptor.java:465) at org.infinispan.interceptors.EntryWrappingInterceptor.visitPrepareCommand(EntryWrappingInterceptor.java:108) at org.infinispan.commands.tx.PrepareCommand.acceptVisitor(PrepareCommand.java:176) at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:99) at org.infinispan.interceptors.NotificationInterceptor.visitPrepareCommand(NotificationInterceptor.java:37) at org.infinispan.commands.tx.PrepareCommand.acceptVisitor(PrepareCommand.java:176) at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:99) at org.infinispan.interceptors.locking.AbstractTxLockingInterceptor.invokeNextAndCommitIf1Pc(AbstractTxLockingInterceptor.java:93) at org.infinispan.interceptors.locking.PessimisticLockingInterceptor.visitPrepareCommand(PessimisticLockingInterceptor.java:100) at org.infinispan.commands.tx.PrepareCommand.acceptVisitor(PrepareCommand.java:176) at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:99) at org.infinispan.interceptors.TxInterceptor.invokeNextInterceptorAndVerifyTransaction(TxInterceptor.java:158) at org.infinispan.interceptors.TxInterceptor.visitPrepareCommand(TxInterceptor.java:145) at org.infinispan.commands.tx.PrepareCommand.acceptVisitor(PrepareCommand.java:176) at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:99) at org.infinispan.interceptors.base.CommandInterceptor.handleDefault(CommandInterceptor.java:113) at org.infinispan.commands.AbstractVisitor.visitPrepareCommand(AbstractVisitor.java:112) at org.infinispan.commands.tx.PrepareCommand.acceptVisitor(PrepareCommand.java:176) at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:99) at org.infinispan.interceptors.InvocationContextInterceptor.handleAll(InvocationContextInterceptor.java:114) at org.infinispan.interceptors.InvocationContextInterceptor.handleDefault(InvocationContextInterceptor.java:83) at org.infinispan.commands.AbstractVisitor.visitPrepareCommand(AbstractVisitor.java:112) at org.infinispan.commands.tx.PrepareCommand.acceptVisitor(PrepareCommand.java:176) at org.infinispan.interceptors.InterceptorChain.invoke(InterceptorChain.java:335) at org.infinispan.transaction.impl.TransactionCoordinator.commit(TransactionCoordinator.java:157) at org.infinispan.transaction.xa.TransactionXaAdapter.commit(TransactionXaAdapter.java:114) at org.infinispan.transaction.tm.DummyTransaction.finishResource(DummyTransaction.java:401) at org.infinispan.transaction.tm.DummyTransaction.commitResources(DummyTransaction.java:448) at org.infinispan.transaction.tm.DummyTransaction.runCommit(DummyTransaction.java:321) at org.infinispan.transaction.tm.DummyTransaction.commit(DummyTransaction.java:108) at org.infinispan.transaction.tm.DummyBaseTransactionManager.commit(DummyBaseTransactionManager.java:73) at org.infinispan.cache.impl.CacheImpl.tryCommit(CacheImpl.java:1722) at org.infinispan.cache.impl.CacheImpl.executeCommandAndCommitIfNeeded(CacheImpl.java:1679) at org.infinispan.cache.impl.CacheImpl.putInternal(CacheImpl.java:1121) at org.infinispan.cache.impl.CacheImpl.put(CacheImpl.java:1111) at org.infinispan.cache.impl.CacheImpl.put(CacheImpl.java:1742) at org.infinispan.cache.impl.CacheImpl.put(CacheImpl.java:248)
Looks very similar to this issue: https://issues.jboss.org/browse/ISPN-6366
However, not sure if it's a duplicate as our configuration is nothing like that mentioned & the line number in the stack is one off.
Not sure what version the other issue was reported against though (and the line number in the stack on the mentioned issue is a null check in 8.2.2 final).
Configuration for the cache with this problem is included below:
<?xml version="1.0" encoding="UTF-8"?> <infinispan xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:infinispan:config:8.2 http://www.infinispan.org/schemas/infinispan-config-8.2.xsd urn:infinispan:config:store:jdbc:8.0 http://www.infinispan.org/schemas/infinispan-cachestore-jdbc-config-8.0.xsd" xmlns="urn:infinispan:config:8.2"> <cache-container name="default" default-cache="default" statistics="true"> <serialization> <advanced-externalizer class="com.lavastorm.lae.service.element.compile.storage.infinispan.impl.CompiledStorageNodeExternalizer"/> <advanced-externalizer class="com.lavastorm.lae.service.element.resolution.storage.infinispan.impl.ResolutionCacheEntryExternalizer"/> </serialization> <jmx duplicate-domains="true"/> <!-- cache configuration for non repository usages --> <!-- resolved-element cache --> <local-cache-configuration name="resolvedElementConfig"> <transaction transaction-manager-lookup="org.infinispan.transaction.lookup.DummyTransactionManagerLookup" locking="PESSIMISTIC" /> <!-- max 2k in memory entries --> <eviction thread-policy="DEFAULT" max-entries="2000" strategy="LIRS" /> <persistence passivation="true"> <!-- max 10k entries on disk --> <file-store fetch-state="false" read-only="false" purge="true" path="${ls.home}/data/webapp/cache/infinispan" max-entries="10000"/> </persistence> </local-cache-configuration> <local-cache name="resolvedElements" configuration="resolvedElementConfig" statistics="true"/> </infinispan>
- duplicates
-
ISPN-6998 Replace bounded hash map with alternative
- Closed