lucene-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jack Krupansky" <>
Subject Re: understanding the need to reindex a document
Date Mon, 22 Oct 2012 19:59:40 GMT
You can in fact add fields. And you can remove the value of a field for a 
single document. Both can be done by simply re-adding the document with the 
same unique key value. But that won't add that field to other or all 
documents, or remove the value of that field for all other documents.

Re-indexing is usually required when you change the type of a field, its 
attributes, or its analyzer.

The primary difficulty with automatically re-indexing from the index itself 
is that Lucene does not require all fields to be "stored". So, replacing a 
document means you need to have an external source for all non-stored 
fields, or at least non-stored fields which are not copied from another 
field which is stored.

-- Jack Krupansky

-----Original Message----- 
From: Shaya Potter
Sent: Monday, October 22, 2012 3:47 PM
Subject: Re: understanding the need to reindex a document

I can understand that (i.e. why in place wont work), but the Q would be,
why one can't read in a document, add() or removeField() that document
and then updateDocument() that document.

On 10/22/2012 03:43 PM, Apostolis Xekoukoulotakis wrote:
> I am not that familiar with Lucene, so my answer may be a bit off.
> Search on the internet about log structured storage. There you will find
> why rewriting an entry is better than updating an existing entry.
> Leveldb/cassandra/bigTable use it. maybe search these terms as well.
> 2012/10/22 Shaya Potter <>
>> so there are lots of Qs that are asked about wanting to modify a lucene
>> document (i.e. remove fields, add fields....) but are told that one needs
>> to reindex.
>> No one ever answers the technical Q of why this is, and I'm interested in
>> that.  presumambly because documents aren't stored as documents or even 
>> in
>> any form that could be reassembled into a document, but I'm interested in
>> what the actual answer is.
>> thanks.
>> ------------------------------**------------------------------**---------
>> To unsubscribe, e-mail: 
>> java-user-unsubscribe@lucene.**<>
>> For additional commands, e-mail: 
>> java-user-help@lucene.apache.**org<>

To unsubscribe, e-mail:
For additional commands, e-mail: 

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message