Implements {@link LockFactory} using {@link
File#createNewFile()}.NOTE: the javadocs
for 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 {@link 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 {@link
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 {@link VerifyingLockFactory}, {@link
LockVerifyServer} and {@link LockStressTest}.
Namespace: Lucene.Net.StoreCopyC#
File.createNewFile
Assembly: Lucene.Net (in Lucene.Net.dll) Version: 2.9.4.1
Syntax
C# |
---|
public class SimpleFSLockFactory : FSLockFactory |
Visual Basic |
---|
Public Class SimpleFSLockFactory _ Inherits FSLockFactory |
Visual C++ |
---|
public ref class SimpleFSLockFactory : public FSLockFactory |
Inheritance Hierarchy
System..::..Object
Lucene.Net.Store..::..LockFactory
Lucene.Net.Store..::..FSLockFactory
Lucene.Net.Store..::..SimpleFSLockFactory
Lucene.Net.Store..::..LockFactory
Lucene.Net.Store..::..FSLockFactory
Lucene.Net.Store..::..SimpleFSLockFactory