Class NativeUnixDirectory
A Directory implementation for all Unixes that uses DIRECT I/O to bypass OS level IO caching during merging. For all other cases (searching, writing) we delegate to the provided Directory instance.
See Overview for more details.
To use this you must compile NativePosixUtil.cpp (exposes Linux-specific APIs through JNI) for your platform, by running
ant
build-native-unix
, and then putting the resulting
libNativePosixUtil.so
(from
lucene/build/native
) onto your dynamic
linker search path.
WARNING: this code is very new and quite easily could contain horrible bugs. For example, here's one known issue: if you use seek in
IndexOutput
, and then
write more than one buffer's worth of bytes, then the
file will be wrong. Lucene does not do this today (only writes
small number of bytes after seek), but that may change.
This directory passes Solr and Lucene tests on Linux and OS X; other Unixes should work but have not been tested! Use at your own risk. @lucene.experimental
Inheritance
System.Object
NativeUnixDirectory
Inherited Members
System.Object.ToString()
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
Assembly: cs.temp.dll.dll
Syntax
public class NativeUnixDirectory