[ http://issues.apache.org/jira/browse/COCOON-1885?page=all ]
Antonio Gallardo closed COCOON-1885.
------------------------------------
Fix Version/s: 2.2-dev (Current SVN)
2.1.10-dev (current SVN)
Resolution: Fixed
Thanks for the patch. It was applied with minor changes. Feel free to reopen
the issue if needed.
> The EHDefaultStore returns in the size() method the wrong number of keys
> ------------------------------------------------------------------------
>
> Key: COCOON-1885
> URL: http://issues.apache.org/jira/browse/COCOON-1885
> Project: Cocoon
> Issue Type: Bug
> Components: * Cocoon Core
> Affects Versions: 2.1.9
> Reporter: Ard Schrijvers
> Assigned To: Antonio Gallardo
> Priority: Critical
> Fix For: 2.2-dev (Current SVN), 2.1.10-dev (current SVN)
>
> Attachments: EHDefaultStore.patch
>
>
> The excalibut store interface defines a size() method for a store:
> /**
> * Returns count of the objects in the store, or -1 if could not be
> * obtained.
> */
> int size();
> What it not explicitely says, is that it is the number of keys in memoryStore
> (so not the diskStore) is needed. The StoreJanitor uses this size() to free
> some memory from cache when the JVM is low on memory. Since the current
> EHDefaultStore returns with size() ALL cachekeys (memoryStoreSize +
> diskStoreSize), it is quite likely when having a large cache that the
> StoreJanitor removes all cachekeys in memoryStore. Simply changing the size()
> method of EHDefaultStore to return the number of keys in memoryStore is
> sufficient. The JCSDefaultStore did implement it correctly already (though I
> do not see it in the cocoon trunk anymore..?)
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira