On 2010-06-29 13:40, Naveen Kumar wrote: > Hey, > > I need to add a new field (a stored , not indexed field) for all > documents present in an existing large index. Reindexing the whole > index will be very costly. Is there a way to do this or any work > around?
There are some other low-level ways to do this, but the easiest is to use a FilterIndexReader, especially since you just want to add a stored field - implement a subclass of FilterIndexReader that adds a new field in getFieldNames() and document(int). Then use IndexWriter.addIndexes(IndexReader[]) to create the output index. > > I would also like to know, if data or term vector, of a field > indexed without storing, can somehow be retrieved. This would enable > a work around solution to my problem. Not really, and the re-construction is very costly. Indexing is a lossy process, so not all content can be recovered. See the "Reconstruct & Edit" functionality in Luke (http://www.getopt.org/luke). -- Best regards, Andrzej Bialecki <>< ___. ___ ___ ___ _ _ __________________________________ [__ || __|__/|__||\/| Information Retrieval, Semantic Web ___|||__|| \| || | Embedded Unix, System Integration http://www.sigram.com Contact: info at sigram dot com --------------------------------------------------------------------- To unsubscribe, e-mail: java-user-unsubscr...@lucene.apache.org For additional commands, e-mail: java-user-h...@lucene.apache.org