lucenenet-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Tim Januario (JIRA)" <>
Subject [jira] Commented: (LUCENENET-106) Lucene.NET (Revision: 603121) is leaking memory
Date Mon, 22 Dec 2008 21:19:44 GMT


Tim Januario commented on LUCENENET-106:

I'm not sure what the protocols are here with regards to when things get committed so I apologize
for my possible ignorance.  

This bug can be pretty serious depending on how Lucene is being used and how often the sort
caches are loaded.  Is there a reason that these patches haven't been committed to the HEAD
or branch yet?  The .NET Hashtable and the Java WeakHashMap are very different structures.
 By using a Hashtable, the code is out-of-line with the Java release.  It seems strange that
users have to track down the patches that should be applied to fix this bug.  Digy, Erich's
and then your code were both pretty solid implementations of the Java port.  They should really
be included in the build.

> Lucene.NET (Revision: 603121) is leaking memory
> -----------------------------------------------
>                 Key: LUCENENET-106
>                 URL:
>             Project: Lucene.Net
>          Issue Type: Bug
>         Environment: .NET 2.0
>            Reporter: Anton K.
>            Priority: Critical
>         Attachments: DIGY-FieldCacheImpl.patch, Digy.rar, luceneSrc_memUsage.patch, Paches
for v2.3.1.rar, WeakHashTable+FieldCacheImpl.rar, WeakReferences.rar
> readerCache Hashtable field (see FieldCacheImpl.cs) never releases some hash items that
have closed IndexReader object as a key. So a lot of Term instances are never released.
> Java version of Lucene uses WeakHashMap and therefore doesn't have this problem.
> This bug can be reproduced only when Sort functionality used during search. 
> See following link for additional information.
> Steps to reproduce:
> 1)Create index
> 2) Modify index by IndexWiter; Close IndexWriter
> 3) Use IndexSearcher for searching with Sort; Close InexSearcher
> 4) Go to step 2
> You'll get OutOfMemoryException after some time of running this algorithm.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message