[
https://issues.apache.org/jira/browse/LUCENE-776?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12464601
]
Karl Wettin commented on LUCENE-776:
------------------------------------
Michael McCandless [14/Jan/07 04:07 AM]
> Good catch! And thanks for opening this.
>
> But: how would we actually use WeakHashMap here?
>
> With WeakHashMap, it's the keys that are the weak reference, so we'd
> need to have our FSDirectory instance be the keys (I think?). But
> then I don't see how we could cleanly "look up" a given key to see if
> we already have an FSDirectory instance for the incoming canonical
> path?
Not sure if this helps, but I just posted a SoftReferenceMap<K,V>.java in issue
550. Need to take a look at the license though, as it is based on something I
found on the net. URL is in the javadoc.
> Use WeakHashMap instead of Hashtable in FSDirectory
> ---------------------------------------------------
>
> Key: LUCENE-776
> URL: https://issues.apache.org/jira/browse/LUCENE-776
> Project: Lucene - Java
> Issue Type: Improvement
> Affects Versions: 2.0.0
> Reporter: Nicolas Lalevée
> Assigned To: Michael McCandless
> Priority: Trivial
>
> I was just reading the FSDirectory java code, then I found this :
> /** This cache of directories ensures that there is a unique Directory
> * instance per path, so that synchronization on the Directory can be used
> to
> * synchronize access between readers and writers.
> *
> * This should be a WeakHashMap, so that entries can be GC'd, but that would
> * require Java 1.2. Instead we use refcounts...
> */
> private static final Hashtable DIRECTORIES = new Hashtable();
> Since Lucene is now requiring at least 1.2 (for ThreadLocal for instance,
> which is using BTW some WeakHashMap), maybe it is time to change ?
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]