求indexwriter问题解决
interlxs
2010-05-14
下面这条语句
IndexWriter indexWriter = new IndexWriter(to.toString(), new StandardAnalyzer(),true,MaxFieldLength.UNLIMITED);报错。 org.apache.lucene.store.LockObtainFailedException: Lock obtain timed out: SimpleFSLock@/home/lixueshou/workspace/DCD_Indexer/indextmp/write.lock at org.apache.lucene.store.Lock.obtain(Lock.java:85) at org.apache.lucene.index.IndexWriter.init(IndexWriter.java:1054) at org.apache.lucene.index.IndexWriter.<init>(IndexWriter.java:550) at IndexerClass.merge(IndexerClass.java:85) at AdvancedTextFileIndexer.main(AdvancedTextFileIndexer.java:38) 是什么原因。 |
|
martin3000
2010-05-15
那是说明索引被锁定了。
正常来说,indexwriter在写入前,会先锁定索引,写完后释放。 我估计是上次你写的时候出错,没有释放,后来程序再运行,就会报错。 你可以用Luke(一个查看Lucene索引的工具)以解锁的方式打开索引就好了 |