[jboss-jira] [JBoss JIRA] Created: (JBCACHE-794) Eviction Queue hard limit can cause deadlocks
Owen Taylor (JIRA)
jira-events at jboss.com
Thu Oct 5 15:27:41 EDT 2006
Eviction Queue hard limit can cause deadlocks
---------------------------------------------
Key: JBCACHE-794
URL: http://jira.jboss.com/jira/browse/JBCACHE-794
Project: JBoss Cache
Issue Type: Bug
Security Level: Public (Everyone can see)
Reporter: Owen Taylor
Assigned To: Manik Surtani
if the eviction queue fills up, you can get the situation where:
- The eviction queue processing task calls evict() which needs to get a write lock on a node
- A different thread has a read lock on that node and is blocking to put something into the eviction queue
Once this starts happening the evication queue thread is procesing events *very* slowly because
it repeatedly stalls while the lock times out, so the queue will stay full.
Without digging into the code too much, possible fixes that occur to me include:
1) Don't have a hard limit on the size of the eviction queue, and just warn when it gets too big
2) Use a timeout of 0 when trying to get the write lock to evict a node, after all, if a node is
locked when we try to evict it, it probably shouldn't be evicted anyways.
--
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.atlassian.com/software/jira
More information about the jboss-jira
mailing list