[
https://issues.apache.org/jira/browse/LUCENE-4864?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13609698#comment-13609698
]
Michael Poindexter commented on LUCENE-4864:
--------------------------------------------
On any platform other than Windows (at least in JDK7, haven't checked JDK8
prereleases) the AsynchronousFileChannel is quite unlikely to be faster since
it's just a normal NIO read + the cost of notifying the future. On Windows it
should theoretically be better as long as multiple threads are being used for
reads (perhaps with tweaking the ExecutorService passed to it) since it uses
overlapped IO. For the case of single threaded reads it is again likely to be
roughly the same as SimpleFSDirectory. I'd love to run some comparisons on a
Windows platform if someone can point out to me the best way to do so.
> Add AsyncFSDirectory to work around Windows issues with NIOFS (Lucene 5.0
> only)
> -------------------------------------------------------------------------------
>
> Key: LUCENE-4864
> URL: https://issues.apache.org/jira/browse/LUCENE-4864
> Project: Lucene - Core
> Issue Type: Improvement
> Components: core/store
> Affects Versions: 5.0
> Reporter: Michael Poindexter
> Attachments: LUCENE-4864.patch, LUCENE-4864.patch
>
>
> On LUCENE-4848 a new directory implementation was proposed that uses
> AsyncFileChannel to make a sync-less directory implementation (only needed
> for IndexInput). The problem on Windows is that positional reads are
> impossible without overlapping (async) I/O, so FileChannel in the JDK has to
> syncronize all reads, because they consist of an atomic seek and atomic read.
> AsyncFSDirectoty would not have this issue, but has to take care of thread
> management, because you need a separate thread to get notified when the read
> is done. This involves overhead, but might still be better than the
> synchronization.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
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]