As I understand it, if two writers try to acess the same index for
writing, then one of the writers should block waiting for a lock until
the lock timeout period expires, and then they will return a "Lock
wait timeout" exception.

I have a multithreaded indexing applications that writes into one of
multiple indexes depending on a hash value, and I intend to merge all
the hashes when the indexing finishes.  Locking usually works but
sometimes it doesn't and I get IO exceptions such as the following..

java.io.IOException: Cannot delete _19.fnm
        at org.apache.lucene.store.FSDirectory.deleteFile(FSDirectory.java:198)
        at 
org.apache.lucene.index.SegmentMerger.createCompoundFile(SegmentMerger.java:157)
        at org.apache.lucene.index.SegmentMerger.merge(SegmentMerger.java:100)
        at org.apache.lucene.index.IndexWriter.mergeSegments(IndexWriter.java:487)
        at org.apache.lucene.index.IndexWriter.optimize(IndexWriter.java:366)
        at org.apache.lucene.index.IndexWriter.addIndexes(IndexWriter.java:389)
        at org.en.global.indexer.IndexGroup.run(IndexGroup.java:387)


Any idea on why this could be happening?  I am using NFS currently,
but the problem appears on the local filesystem as well.

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to