diff src/goodjava/lucene/logging/LoggingIndexWriter.java @ 1556:52241b69c339

lucene logging
author Franklin Schmidt <fschmidt@gmail.com>
date Sun, 11 Oct 2020 17:28:16 -0600
parents 9cc4cee39b8b
children ea7075b7afe1
line wrap: on
line diff
--- a/src/goodjava/lucene/logging/LoggingIndexWriter.java	Tue Oct 06 20:53:43 2020 -0600
+++ b/src/goodjava/lucene/logging/LoggingIndexWriter.java	Sun Oct 11 17:28:16 2020 -0600
@@ -81,7 +81,16 @@
 				dis.close();
 			}
 		}
-		newLogs();
+		logger.info("building new logs");
+		for( int i=0; i<logs.length; i++ ) {
+			logs[i] = newLogFile();
+		}
+		LogOutputStream log = logs[0].output();
+		logLucene( System.currentTimeMillis(), log, indexWriter );
+		log.close();
+		writeIndex();
+		setLog();
+		logger.info("done building new logs");
 		wasCreated = true;
 	}
 
@@ -112,32 +121,9 @@
 		}
 	}
 
-	public synchronized void newLogs() throws IOException {
-		getMergeLock();
-		try {
-			newLogs2();
-		} finally {
-			mergeLock.unlock();
-		}
-	}
-
-	private void newLogs2() throws IOException {
-		logger.info("building new logs");
-		for( int i=0; i<logs.length; i++ ) {
-			logs[i] = newLogFile();
-		}
-		LogOutputStream log = logs[0].output();
-		logLucene( System.currentTimeMillis(), log, indexWriter );
-		log.close();
-		writeIndex();
-		setLog();
-		logger.info("done building new logs");
-	}
-
 	public synchronized void logLucene()
 		throws IOException
 	{
-		//log.rollback();  ?
 		logLucene( System.currentTimeMillis(), log, indexWriter );
 	}
 
@@ -465,21 +451,12 @@
 	private static void playLogs(LogInputStream[] logReaders,OpDoer opDoer)
 		throws IOException
 	{
-		if( numDocs(opDoer.writer()) != 0 )
-			throw new RuntimeException ("not empty");
 		for( LogInputStream reader : logReaders ) {
 			playLog(reader,opDoer);
 		}
 		opDoer.commit();
 	}
 
-	private static int numDocs(GoodIndexWriter indexWriter) throws IOException {
-		IndexReader reader = indexWriter.openReader();
-		int n = reader.numDocs();
-		reader.close();
-		return n;
-	}
-
 	private static void playLog(LogInputStream in,OpDoer opDoer)
 		throws IOException
 	{