I have an existing index. I want to add new fields to each document in the index. Ideally I would do it in-place on the same index, but let's assume I can create a new, separate index. Easy I thought:
<code> IndexReader reader = IndexReader.open(originalIndex); int maxdocs = reader.maxDoc(); IndexWriter writer = new IndexWriter("indexWithMoreFields", new StandardAnalyzer(), true); for (int i=0; i<maxdocs; i++) { Document d = reader.document(i); Field f = new Field("extraField", text_for_extra_field, true, true, true); d.add(f); writer.addDocument(d); } writer.close(); reader.close(); </code> - This is not working two ways: 1) Not all documents in the original index appear be copied 2) Some of the fields from the original index are dropped when copying the document Now I figure it has something to do with the original index not "storing" all the original fields (indexed, tokenized, not stored) and perhaps this is not the proper way to loop through an index, so I can understand that my approach is incorrect. However, this seems like something that would be very common. I do not want to reindex every document from scratch again just to add a field. Help please. Thanks, JMA --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]