lucenenet-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Digy" <digyd...@gmail.com>
Subject RE: Lucene.Net 2.4.0
Date Fri, 31 Jul 2009 17:56:38 GMT
Hi Doug,

WeakHashTable(implemented in SupportClass) was used in FieldCacheImpl,
CachingSpanFilter, CachingWrapperFilter in v2.3.2 because HashTable had
caused memory leak
(http://issues.apache.org/jira/browse/LUCENENET-106) . But as I said before,
some patches made to Lucene.Net 2.3.2(2.3.1?) are lost with your new 2.4.0

DIGY



-----Original Message-----
From: Doug Sale [mailto:dougsale@gmail.com] 
Sent: Friday, July 31, 2009 7:06 PM
To: lucene-net-dev@incubator.apache.org
Subject: Lucene.Net 2.4.0

Regarding the 2.4.0 port:

On Tuesday, I checked in the port that I completed earlier this year.
We've been integrating it into a number of systems at MySpace (thanks
to Bala Rangaraj and Michael Garski for catching and fixing a handful
of bugs).

The initial check-in lacks a few classes/features that exist in the
Lucene Java 2.4.0 release.

TODO
====

1) Implement Lucene.Net.Store.NIOFSDirectory.cs
(org.apache.lucene.store.NIOFSDirectory.java)

This is a Java subclass of FSDirectory that allows multiple threads to
read from a single file without blocking each other.  Write behavior
is inherited from FSDirectory.  If anyone would like to take a stab at
this, please be my guest.

2) File Descriptor syncing in FSDirectory.cs

FSDirectory.Sync(string) is supposed to sync the underlying file
descriptor, flushing all downstream buffers.  I'm not sure how to
accomplish this is C#, and this code needs to be reviewed/fixed/nuked.

3) Lucene.Net.Search.TimeLimitedCollector.cs

I have implemented this class and I am currently working on the unit test.

4) Weak References

I plan to work on these later today.

Lucene.Net.Util.CloseableThreadLocal.cs
- Lucene Java uses weak references
- Lucene.Net is using 'regular' references

Lucene.Net.Search.CachingSpanFilter.cs
Lucene.Net.Search.CachingWrapperFilter.cs
Lucene.Net.Search.FieldCacheImpl.cs
- Lucene Java utilizes java.util.WeakHashMap
- Lucene.Net is not using a data structure with weak references

5) Lucene.Net.Store.CheckSumIndex[Input|Output].cs

These, I completed and checked in on Wednesday.  They use, to the best
of my knowledge, the same CRC32 algorithm as the java.util.zip classes
(they have to, for index compatibility between Lucene.Net and Lucene
Java.)  I provided a new test, TestSupportClass.cs, to verify the
results against a checksum generated in Java.

Thanks,
Doug


Mime
View raw message