views:

83

answers:

1

What is the best way to update an existing Lucene index. I dont't just have to add/delete documents from it, rather update the existing documents.

+1  A: 

You will have to open the index without overwriting thus:

IndexWriter writer = new IndexWriter("MyIndexPath",analyzer, false);

The false flag at the end tells it to open in append mode.

The writer has an UpdateDocument method

writer.UpdateDocument(new Term("IDField",id), doc);

the id field should be some unique document identifier such as filename or file number etc.

Mikos