Implements
LockFactory using
File.createNewFile . This is the default LockFactory
for
FSDirectory .
NOTE: the javadocs
for File.createNewFile contain a vague
yet spooky warning about not using the API for file
locking. This warning was added due to this
bug, and in fact the only known problem with using
this API for locking is that the Lucene write lock may
not be released when the JVM exits abnormally.
When this happens, a
LockObtainFailedException is hit when trying to create a writer, in which case you
need to explicitly clear the lock file first. You can
either manually remove the file, or use the
org.apache.lucene.index.IndexReader.unlock(Directory) API. But, first be certain that no writer is in fact
writing to the index otherwise you can easily corrupt
your index.
If you suspect that this or any other LockFactory is
not working properly in your environment, you can easily
test it by using
VerifyingLockFactory ,
LockVerifyServer and
LockStressTest .
See Also: LockFactory |