Andreas L Delmelle wrote:

On Nov 12, 2007, at 19:10, Andreas L Delmelle wrote:

Hi Chris

On Nov 12, 2007, at 18:29, Chris Bowditch wrote:

<snip />
Thanks for the prompt reply! I've now committed the check for null in the rehash method.

Good! Just checked the code more closely, and I think your suggestion is actually the only way to deal with it.

Just looked closer, and I may have found a slightly better way of dealing with it.

Since the cause of the problem is CacheCleaners interfering with rehash(), maybe the below patch is a better approach. Once rehash() has been entered, and has acquired the lock on the first segment, set a flag. A CacheCleaner will then only be launched if there is no rehash in progress.

Can you try and see if this resolves the issue in your tests? If so, I'll commit it later on (or you can do so, if you like).

Thanks for the patch Andreas. It does seem like a slightly cleaner approach so I've applied it and just started a new test run now.

The bad news is though that I left my tests running overnight and found that FOP ran out of memory after 26,000 documents. So I guess there is a small memory leak somewhere as well. :(



Reply via email to