NPE in DataContainerImpl.getNodesForEviction()
----------------------------------------------
Key: JBCACHE-1361
URL: http:/
/jira.jboss.com/jira/browse/JBCACHE-1361
Project: JBoss Cache
Issue Type: Bug
Security Level: Public (Everyone can see)
Components: Eviction
Affects Versions: 2.2.0.GA
Reporter: Brian Stansberry
Assigned To: Manik Surtani
Actually effects 2.2.0.CR2, but that wasn't a choice.
Call to recursively evict a subtree fails with an NPE:
2008-06-03 21:05:13,419 ERROR
[org.jboss.web.tomcat.service.session.JBossCacheManager]
processExpires(): failed expiring 2 with exception:
java.lang.NullPointerException
java.lang.NullPointerException
at
org.jboss.cache.DataContainerImpl.recursiveAddEvictionNodes(
DataContainerImpl.java:267)
at
org.jboss.cache.DataContainerImpl.getNodesForEviction(DataCo
ntainerImpl.java:241)
at
org.jboss.cache.interceptors.PassivationInterceptor.visitEvi
ctFqnCommand(PassivationInterceptor.java:54)
at
org.jboss.cache.commands.write.EvictCommand.acceptVisitor(Ev
ictCommand.java:88)
at
org.jboss.cache.interceptors.base.CommandInterceptor.invokeN
extInterceptor(CommandInterceptor.java:142)
at
org.jboss.cache.interceptors.base.CommandInterceptor.handleD
efault(CommandInterceptor.java:157)
at
org.jboss.cache.commands.AbstractVisitor.visitEvictFqnComman
d(AbstractVisitor.java:55)
at
org.jboss.cache.commands.write.EvictCommand.acceptVisitor(Ev
ictCommand.java:88)
at
org.jboss.cache.interceptors.base.CommandInterceptor.invokeN
extInterceptor(CommandInterceptor.java:142)
at
org.jboss.cache.interceptors.PessimisticLockInterceptor.hand
leEvictFqnCommand(PessimisticLockInterceptor.java:303)
at
org.jboss.cache.interceptors.base.PostProcessingCommandInter
ceptor.visitEvictFqnCommand(PostProcessingCommandInterceptor
.java:138)
at
org.jboss.cache.commands.write.EvictCommand.acceptVisitor(Ev
ictCommand.java:88)
at
org.jboss.cache.interceptors.base.CommandInterceptor.invokeN
extInterceptor(CommandInterceptor.java:142)
at
org.jboss.cache.interceptors.base.CommandInterceptor.handleD
efault(CommandInterceptor.java:157)
at
org.jboss.cache.commands.AbstractVisitor.visitEvictFqnComman
d(AbstractVisitor.java:55)
at
org.jboss.cache.commands.write.EvictCommand.acceptVisitor(Ev
ictCommand.java:88)
at
org.jboss.cache.interceptors.base.CommandInterceptor.invokeN
extInterceptor(CommandInterceptor.java:142)
at
org.jboss.cache.interceptors.TxInterceptor.attachGtxAndPassU
pChain(TxInterceptor.java:266)
at
org.jboss.cache.interceptors.TxInterceptor.handleDefault(TxI
nterceptor.java:253)
at
org.jboss.cache.commands.AbstractVisitor.visitEvictFqnComman
d(AbstractVisitor.java:55)
at
org.jboss.cache.commands.write.EvictCommand.acceptVisitor(Ev
ictCommand.java:88)
at
org.jboss.cache.interceptors.base.CommandInterceptor.invokeN
extInterceptor(CommandInterceptor.java:142)
at
org.jboss.cache.interceptors.CacheMgmtInterceptor.visitEvict
FqnCommand(CacheMgmtInterceptor.java:66)
at
org.jboss.cache.commands.write.EvictCommand.acceptVisitor(Ev
ictCommand.java:88)
at
org.jboss.cache.interceptors.base.CommandInterceptor.invokeN
extInterceptor(CommandInterceptor.java:142)
at
org.jboss.cache.interceptors.InvocationContextInterceptor.ha
ndleAll(InvocationContextInterceptor.java:158)
at
org.jboss.cache.interceptors.InvocationContextInterceptor.ha
ndleDefault(InvocationContextInterceptor.java:108)
at
org.jboss.cache.commands.AbstractVisitor.visitEvictFqnComman
d(AbstractVisitor.java:55)
at
org.jboss.cache.commands.write.EvictCommand.acceptVisitor(Ev
ictCommand.java:88)
at
org.jboss.cache.interceptors.InterceptorChain.invoke(Interce
ptorChain.java:215)
at
org.jboss.cache.invocation.CacheInvocationDelegate.evict(Cac
heInvocationDelegate.java:347)
at
org.jboss.web.tomcat.service.session.JBossCacheWrapper.evict
Subtree(JBossCacheWrapper.java:289)
at
org.jboss.web.tomcat.service.session.JBossCacheService.evict
Session(JBossCacheService.java:371)
at
org.jboss.web.tomcat.service.session.JBossCacheService.evict
Session(JBossCacheService.java:361)
at
org.jboss.web.tomcat.service.session.JBossCacheManager.proce
ssSessionPassivation(JBossCacheManager.java:1777)
at
org.jboss.web.tomcat.service.session.JBossCacheManager.proce
ssExpires(JBossCacheManager.java:1542)
at
org.jboss.web.tomcat.service.session.JBossCacheManager.creat
eSession(JBossCacheManager.java:804)
at
org.jboss.test.cluster.defaultcfg.simpleweb.test.SessionCoun
tUnitTestCase.createAndUseSession(SessionCountUnitTestCase.j
ava:902)
at
org.jboss.test.cluster.defaultcfg.simpleweb.test.SessionCoun
tUnitTestCase.testStandaloneMaxSessionsWithMinIdle(SessionCo
untUnitTestCase.java:269)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAcce
ssorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMe
thodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at junit.framework.TestCase.runTest(TestCase.java:164)
at junit.framework.TestCase.runBare(TestCase.java:130)
at
junit.framework.TestResult$1.protect(TestResult.java:106)
at
junit.framework.TestResult.runProtected(TestResult.java:124)
at junit.framework.TestResult.run(TestResult.java:109)
at junit.framework.TestCase.run(TestCase.java:120)
at junit.framework.TestSuite.runTest(TestSuite.java:230)
at junit.framework.TestSuite.run(TestSuite.java:225)
at
org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner
.run(JUnitTestRunner.java:297)
at
org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner
.launch(JUnitTestRunner.java:672)
at
org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner
.main(JUnitTestRunner.java:567)
Looks like DataContainerImpl.getNodesForEviction() is doing
a peek() and passing the result to
recursiveAddEvictionNodes() even if the peek() returns
null.
JBAS web session replication manages eviction itself, which
is why the evict() call is coming from the session
management layer.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the
administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atl
assian.com/software/jira
_______________________________________________
jboss-jira mailing list
jboss-jira lists.jboss.org
h
ttps://lists.jboss.org/mailman/listinfo/jboss-jira
|