> Could you post this part of the code (deleting) too? Here it is:
private static void remove (File index_file, String[] doc_ids, int start) { String number; String list; Term term; TermDocs matches; if (debug_mode) System.err.println("index file is " + index_file + " and it " + (index_file.exists() ? "exists." : "does not exist.")); try { if (index_file.exists() && (doc_ids.length > start)) { IndexReader reader = IndexReader.open(index_file); try { for (int i = start; i < doc_ids.length; i++) { term = new Term("id", doc_ids[i]); int deleted = reader.deleteDocuments(term); System.out.println("Deleted " + deleted + " existing instances of " + doc_ids[i]); } } finally { reader.close(); } } } catch (Exception e) { if (debug_mode) { e.printStackTrace(System.err); } else { System.out.println("* LuceneIndexing 'remove' raised " + e.getClass() + " with message " + e.getMessage()); System.err.println("LuceneIndexing 'remove': caught a " + e.getClass() + "\n with message: " + e.getMessage()); System.out.flush(); } System.exit(JAVA_EXCEPTION); } System.out.flush(); } private static void update (File index_file, File doc_root_dir, String[] ids, int start) { ExtractIndexingInfo.DocumentIterator docit; String number; remove (index_file, ids, start); try { // Now add the documents to the index IndexWriter writer = new IndexWriter(index_file, new StandardAnalyzer(), !index_file.exists()); if (debug_mode) writer.setInfoStream(System.err); writer.setMaxFieldLength(Integer.MAX_VALUE); try { for (int i = start; i < ids.length; i ++) { docit = build_document_iterator(doc_root_dir, ids[i]); int count = 0; while (docit.hasNext()) { writer.addDocument((Document)(docit.next())); count += 1; } System.out.println("Added " + docit.id + " (" + count + " versions)"); System.out.flush(); } } finally { // And close the index System.out.println("Optimizing..."); // See http://www.gossamer-threads.com/lists/lucene/java-dev/47895 about optimize // Can fail if low on disk space writer.optimize(); writer.close(); } } catch (Exception e) { if (debug_mode) { e.printStackTrace(System.err); } else { System.out.println("* Lucene search engine raised " + e.getClass() + " with message " + e.getMessage()); System.err.println(" 'update' caught a " + e.getClass() + "\n with message: " + e.getMessage()); System.out.flush(); } System.exit(JAVA_EXCEPTION); } System.out.flush(); } --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]