lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Uwe Schindler (JIRA)" <j...@apache.org>
Subject [jira] Updated: (LUCENE-1658) Absorb NIOFSDirectory into FSDirectory
Date Sat, 30 May 2009 23:40:07 GMT

     [ https://issues.apache.org/jira/browse/LUCENE-1658?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Uwe Schindler updated LUCENE-1658:
----------------------------------

    Attachment: LUCENE-1658-take2.patch

This is a revised patch (on current trunk):
- FSDir.open() was removed, the logic was included into FSDir.getDirectory and this un-deprectated:
If the system property is missing, the same like in Mikes open() happens: choosing the best
impl for platform
- Caching of FSDirs was completely removed
- FSDir.IndexInput/Output (deprected) was removed (suplicate code) and simply replaced by
(deprecated) subclasses of SimpleFSDir ones). This is OK for backwards compatibility.

Some tests currently fail:
- TestCompoundFile (do not know why)
- TestLockFactory (test is obsolete, execption can only occur on cached dirs)
- Sometimes reopen does not work because already closed (see LUCENE-1453)

TODO:
- Remove the caching code completely (currently comented out)
- Fix 1453, because if somebody uses a self-instantiated FSDir and not the default, the reopened
dir would use the default again! So fix (maybe clone of FSDir, or LUCENE-1453 is obsolete
without caching?).

This patch also contains an overflow fix in MMapDir for files <2 GB but large. "int*int"
should be written as "(long)int*int", if the result maybe large (thanks Earwin!).

> Absorb NIOFSDirectory into FSDirectory
> --------------------------------------
>
>                 Key: LUCENE-1658
>                 URL: https://issues.apache.org/jira/browse/LUCENE-1658
>             Project: Lucene - Java
>          Issue Type: Improvement
>          Components: Store
>            Reporter: Michael McCandless
>            Assignee: Uwe Schindler
>            Priority: Minor
>             Fix For: 2.9
>
>         Attachments: LUCENE-1658-take2.patch, LUCENE-1658.patch, LUCENE-1658.patch, LUCENE-1658.patch
>
>
> I think whether one uses java.io.* vs java.nio.* or eventually
> java.nio2.*, or some other means, is an under-the-hood implementation
> detail of FSDirectory and doesn't merit a whole separate class.
> I think FSDirectory should be the core class one uses when one's index
> is in the filesystem.
> So, I'd like to deprecate NIOFSDirectory, absorbing it into
> FSDirectory, and add a setting "useNIO" to FSDirectory.  It should
> default to "true" for non-Windows OSs, because it gives far better
> concurrent performance on all platforms but Windows (due to known Sun
> JRE issue http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6265734).

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


---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-dev-help@lucene.apache.org


Mime
View raw message