| Summary: | [GSS] LIRS Eviction with local cache under high load fail with a NullPointerException at BoundedEquivalentConcurrentHashMapV8.java:1414 | ||
|---|---|---|---|
| Product: | [JBoss] JBoss Data Grid 6 | Reporter: | wfink |
| Component: | Embedded, Infinispan | Assignee: | Tristan Tarrant <ttarrant> |
| Status: | VERIFIED --- | QA Contact: | Martin Gencur <mgencur> |
| Severity: | unspecified | Docs Contact: | |
| Priority: | unspecified | ||
| Version: | 6.6.1 | CC: | jdg-bugs, jsenko, vjuranek, wburns |
| Target Milestone: | DR1 | ||
| Target Release: | 6.6.2 | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | If docs needed, set a value | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | Type: | Bug | |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Bug Depends On: | |||
| Bug Blocks: | 1374440 | ||
Description of problem: NullPointerException occured some times during heavy load. Since it only seems to occur during heavy load and that LIRSEvictionPolicy is involved, we suspect that it has something to do with the number of entries in the cache. The configuration is: <namedCache name="myCache"> <transaction transactionMode="NON_TRANSACTIONAL" /> <eviction strategy="LIRS" maxEntries="10000" /> <expiration maxIdle="250000" lifespan="600000" wakeUpInterval="10000" /> </namedCache> This unresolved case https://issues.jboss.org/browse/ISPN-6366 might be related. Stack trace example: ERROR [org.infinispan.interceptors.InvocationContextInterceptor] (pool-9-thread-17) ISPN000136: Error executing command PutKeyValueCommand, writing keys [9c7708a2-18e9-4b3f-9f62-c9fd702a241b]: java.lang.NullPointerException at org.infinispan.commons.util.concurrent.jdk8backported.BoundedEquivalentConcurrentHashMapV8$LIRSEvictionPolicy.findIfEntriesNeedEvicting(BoundedEquivalentConcurrentHashMapV8.java:1414) [infinispan-commons-6.4.0.Final-redhat-4.jar:6.4.0.Final-redhat-4] at org.infinispan.commons.util.concurrent.jdk8backported.BoundedEquivalentConcurrentHashMapV8.compute(BoundedEquivalentConcurrentHashMapV8.java:3534) [infinispan-commons-6.4.0.Final-redhat-4.jar:6.4.0.Final-redhat-4] at org.infinispan.container.DefaultDataContainer$BoundedEquivalentConcurrentExtendedMap.putAndActivate(DefaultDataContainer.java:611) [infinispan-core-6.4.0.Final-redhat-4-bz-1316132.jar:6.4.0.Final-redhat-4] at org.infinispan.container.DefaultDataContainer.put(DefaultDataContainer.java:191) [infinispan-core-6.4.0.Final-redhat-4-bz-1316132.jar:6.4.0.Final-redhat-4] at org.infinispan.container.entries.ReadCommittedEntry.commit(ReadCommittedEntry.java:168) [infinispan-core-6.4.0.Final-redhat-4-bz-1316132.jar:6.4.0.Final-redhat-4] at org.infinispan.statetransfer.CommitManager.commit(CommitManager.java:98) [infinispan-core-6.4.0.Final-redhat-4-bz-1316132.jar:6.4.0.Final-redhat-4] at org.infinispan.interceptors.locking.ClusteringDependentLogic$LocalLogic.commitEntry(ClusteringDependentLogic.java:239) [infinispan-core-6.4.0.Final-redhat-4-bz-1316132.jar:6.4.0.Final-redhat-4] at org.infinispan.interceptors.EntryWrappingInterceptor.commitContextEntry(EntryWrappingInterceptor.java:349) [infinispan-core-6.4.0.Final-redhat-4-bz-1316132.jar:6.4.0.Final-redhat-4] at org.infinispan.interceptors.EntryWrappingInterceptor.commitEntryIfNeeded(EntryWrappingInterceptor.java:567) [infinispan-core-6.4.0.Final-redhat-4-bz-1316132.jar:6.4.0.Final-redhat-4] at org.infinispan.interceptors.EntryWrappingInterceptor.commitContextEntries(EntryWrappingInterceptor.java:326) [infinispan-core-6.4.0.Final-redhat-4-bz-1316132.jar:6.4.0.Final-redhat-4] at org.infinispan.interceptors.EntryWrappingInterceptor.invokeNextAndApplyChanges(EntryWrappingInterceptor.java:400) [infinispan-core-6.4.0.Final-redhat-4-bz-1316132.jar:6.4.0.Final-redhat-4] at org.infinispan.interceptors.EntryWrappingInterceptor.setSkipRemoteGetsAndInvokeNextForDataCommand(EntryWrappingInterceptor.java:454) [infinispan-core-6.4.0.Final-redhat-4-bz-1316132.jar:6.4.0.Final-redhat-4] at org.infinispan.interceptors.EntryWrappingInterceptor.visitPutKeyValueCommand(EntryWrappingInterceptor.java:188) [infinispan-core-6.4.0.Final-redhat-4-bz-1316132.jar:6.4.0.Final-redhat-4] at org.infinispan.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:71) [infinispan-core-6.4.0.Final-redhat-4-bz-1316132.jar:6.4.0.Final-redhat-4] at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:98) [infinispan-core-6.4.0.Final-redhat-4-bz-1316132.jar:6.4.0.Final-redhat-4] at org.infinispan.interceptors.locking.AbstractLockingInterceptor.visitPutKeyValueCommand(AbstractLockingInterceptor.java:49) [infinispan-core-6.4.0.Final-redhat-4-bz-1316132.jar:6.4.0.Final-redhat-4] at org.infinispan.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:71) [infinispan-core-6.4.0.Final-redhat-4-bz-1316132.jar:6.4.0.Final-redhat-4] at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:98) [infinispan-core-6.4.0.Final-redhat-4-bz-1316132.jar:6.4.0.Final-redhat-4] at org.infinispan.interceptors.CacheMgmtInterceptor.updateStoreStatistics(CacheMgmtInterceptor.java:182) [infinispan-core-6.4.0.Final-redhat-4-bz-1316132.jar:6.4.0.Final-redhat-4] at org.infinispan.interceptors.CacheMgmtInterceptor.visitPutKeyValueCommand(CacheMgmtInterceptor.java:168) [infinispan-core-6.4.0.Final-redhat-4-bz-1316132.jar:6.4.0.Final-redhat-4] at org.infinispan.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:71) [infinispan-core-6.4.0.Final-redhat-4-bz-1316132.jar:6.4.0.Final-redhat-4] at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:98) [infinispan-core-6.4.0.Final-redhat-4-bz-1316132.jar:6.4.0.Final-redhat-4] at org.infinispan.interceptors.InvocationContextInterceptor.handleAll(InvocationContextInterceptor.java:105) [infinispan-core-6.4.0.Final-redhat-4-bz-1316132.jar:6.4.0.Final-redhat-4] at org.infinispan.interceptors.InvocationContextInterceptor.handleDefault(InvocationContextInterceptor.java:74) [infinispan-core-6.4.0.Final-redhat-4-bz-1316132.jar:6.4.0.Final-redhat-4] at org.infinispan.commands.AbstractVisitor.visitPutKeyValueCommand(AbstractVisitor.java:43) [infinispan-core-6.4.0.Final-redhat-4-bz-1316132.jar:6.4.0.Final-redhat-4] at org.infinispan.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:71) [infinispan-core-6.4.0.Final-redhat-4-bz-1316132.jar:6.4.0.Final-redhat-4] at org.infinispan.interceptors.InterceptorChain.invoke(InterceptorChain.java:336) [infinispan-core-6.4.0.Final-redhat-4-bz-1316132.jar:6.4.0.Final-redhat-4] at org.infinispan.CacheImpl.executeCommandAndCommitIfNeeded(CacheImpl.java:1610) [infinispan-core-6.4.0.Final-redhat-4-bz-1316132.jar:6.4.0.Final-redhat-4] at org.infinispan.CacheImpl.putInternal(CacheImpl.java:1079) [infinispan-core-6.4.0.Final-redhat-4-bz-1316132.jar:6.4.0.Final-redhat-4] at org.infinispan.CacheImpl.put(CacheImpl.java:1070) [infinispan-core-6.4.0.Final-redhat-4-bz-1316132.jar:6.4.0.Final-redhat-4] at org.infinispan.CacheImpl.put(CacheImpl.java:1655) [infinispan-core-6.4.0.Final-redhat-4-bz-1316132.jar:6.4.0.Final-redhat-4] at org.infinispan.CacheImpl.put(CacheImpl.java:253) [infinispan-core-6.4.0.Final-redhat-4-bz-1316132.jar:6.4.0.Final-redhat-4]