I think its a directory access synchronisation problem, I have also posted about this before. The scenario can be like this ..

When Indexwriter object is created it reads the segment information from the file "segments" which nothing but list of files with .cfs or mayn more type, at teh same time IndexSearcher object is created which also make a list of index files from segements file, then you invoke the some write operation which triggers the index pemrging, fragmenting etc started haoppening and it modifies the file list in the segments file, but still we have the IndexerSearcher object with old file list and probably that throws the FileNotFoundExcpetion becuase physically the file is not there.

May be I am wrong but I try to put some light on this issue.

I posted the similar problem with subject "FileNotFoundException: occurs during the optimization of index", I am also experiencing the similar problem when the index optimization task runs on the index and parallally search function is also running.

Lucene has file-based locking for exactly this reason. Can you double-check that the same lockDir is being used in both your IndexModifier process and your searching process?

Also: this directory can't be an NFS mount -- there are known problems with the current Lucene locking implementation and NFS file systems. Are you using NFS?

Mike

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

Reply via email to