To start with, I already read this:
http://wiki.apache.org/lucene-java/ImproveIndexingSpeed
I am profiling my Lucene code, and I noticed the following:
[image: Inline image 1]
As you can see, applying the deletes takes quite a bit of time.
I am always assuming that I update the documents in Lucene, so my process
is:
foreach(var item in items) // dummy code, but useful
{
indexWriter.DeleteDocuments(new Term("UniqueId", item.Id));
indexWriter.AddDocument(item.ToLuceneDocument());
}
Is there a way to avoid the costly ApplyDeletes if it doesn't need to do
the delete?