You shouldn't use doc.removeField -- it's costly (the fields are a list internally so we walk that list looking for which field(s) to remove).
To reuse you can just use Field.setValue, and leave the Field instance on the Document. But: you should only do this if you really have a meaningful performance problem during indexing... Mike McCandless http://blog.mikemccandless.com On Thu, Mar 1, 2012 at 2:20 AM, Sudarshan Gaikaiwari <sudars...@acm.org> wrote: > Hi > > https://builds.apache.org/job/Lucene-trunk/javadoc/core/org/apache/lucene/document/DocValuesField.html > > The documentation at the above link indicates that the optimal way to > add a DocValues field is to create it once and change the value as we > are indexing multiple documents. > It also mentions that the Document should be created only once and re-used. > > Does this mean that the optimal way of adding non DocValues fields for now is > > doc.removeField(fieldName); > doc.add(new Field(fieldName, newValue, fieldType); > > If this is the pattern that users should follow while creating > documents, would it be possible to augment the Document class to do > this in a single method? > > regards > Sudarshan > > -- > Sudarshan Gaikaiwari > www.sudarshan.org > sudars...@acm.org > > --------------------------------------------------------------------- > To unsubscribe, e-mail: java-user-unsubscr...@lucene.apache.org > For additional commands, e-mail: java-user-h...@lucene.apache.org > --------------------------------------------------------------------- To unsubscribe, e-mail: java-user-unsubscr...@lucene.apache.org For additional commands, e-mail: java-user-h...@lucene.apache.org