[jboss-jira] [JBoss JIRA] Created: (JBCACHE-921) Eviction eventually cleans up nodes that are cleared but not removed
Brian Stansberry (JIRA)
jira-events at jboss.com
Tue Jan 2 16:52:37 EST 2007
Eviction eventually cleans up nodes that are cleared but not removed
--------------------------------------------------------------------
Key: JBCACHE-921
URL: http://jira.jboss.com/jira/browse/JBCACHE-921
Project: JBoss Cache
Issue Type: Feature Request
Security Level: Public (Everyone can see)
Reporter: Brian Stansberry
Assigned To: Manik Surtani
Eviction does not remove nodes that have children, it only clears their data map. If such nodes are never accessed again, the eviction thread will never process them, and they will never be removed, leaving around several hundred bytes of litter per node.
E.g.
1) create /a/1
2) create /a/1/xxx
An LRU policy will try to evict /a/1 first, but the node will not be removed because /a/1/xxx still exists. Later /a/1/xxx will be evicted, but unless some event occurs that puts an entry for /a/1 back into the queue, it will never be evicted.
One possible solution is to have CacheImpl._evict return a boolean that indicates if the node was actually removed. EvictionInterceptor could track that return value, and if false, add a new event to the region, perhaps with a new NodeEventType. Eviction policies could then revisit those nodes on the next run of the thread.
--
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