StatefulTreeCache removal task can't handle already removed beans
-----------------------------------------------------------------
Key: EJBTHREE-1807
URL:
https://jira.jboss.org/jira/browse/EJBTHREE-1807
Project: EJB 3.0
Issue Type: Bug
Components: core
Affects Versions: 1.1.4
Reporter: Brian Stansberry
Assignee: Brian Stansberry
Priority: Critical
Fix For: 1.1.5
[JBoss] 01:42:41,348 ERROR [SerialSessionBean] problem removing SFSB thread
[JBoss] javax.ejb.NoSuchEJBException: Could not find Stateful bean:
ag2g4z-q52gwe-ftdr0t7i-1-ftdrio8f-2th
[JBoss] at
org.jboss.ejb3.cache.tree.StatefulTreeCache.remove(StatefulTreeCache.java:216)
[JBoss] at
org.jboss.ejb3.cache.tree.StatefulTreeCache$RemovalTimeoutTask.run(StatefulTreeCache.java:739)
Presumably the NoSuchEJBException happens because a request thread has removed it while
the removal task is looping.
Problem is the NoSuchEJBException terminates that loop of the RemovalTimeoutTask. And an
entry is left behind in the StatefulTreeCache.beans map (question: why??) that will cause
the next loop of the task to try the same thing -- and fail again. Effect is bean removal
comes to a halt.
To-dos:
1) RemovalTimeoutTask needs to catch errors on each remove() call and not let them prevent
handling of other beans.
2) Need to ensure the StatefulTreeCache.beans map is cleaned up properly.
See also
http://hudson.qa.jboss.com/hudson/job/as5-soak-ejb3-buddy-async-failover/...
and related reports.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira