try {
if (!unexpectedClose)
makeSnapshot(true);
-
+
mainProgram.close();
clusters.shutdown();
executor.shutdown();
boolean executorTerminated = executor.awaitTermination(500, TimeUnit.MILLISECONDS);
boolean saverTerminated = saver.awaitTermination(500, TimeUnit.MILLISECONDS);
- System.err.println("executorTerminated=" + executorTerminated + ", saverTerminated=" + saverTerminated);
-
+ LOGGER.info("executorTerminated=" + executorTerminated + ", saverTerminated=" + saverTerminated);
+
+ try {
+ clusters.mainState.save(dbFolder);
+ } catch (IOException e) {
+ LOGGER.error("Failed to save " + MainState.MAIN_STATE + " file in database folder " + dbFolder);
+ }
+
mainProgram = null;
executor = null;
saver = null;
final int changeSetId = clusters.state.headChangeSetId;
if(ClusterUpdateProcessorBase.DEBUG)
- System.err.println(" === BEGIN UNDO ===");
+ LOGGER.info(" === BEGIN UNDO ===");
for(int i=0;i<changeSetIds.length;i++) {
final long id = changeSetIds[changeSetIds.length-1-i];
String ccsid = ccss.get(ccss.size()-j-1);
try {
if(ClusterUpdateProcessorBase.DEBUG)
- System.err.println("performUndo " + ccsid);
+ LOGGER.info("performUndo " + ccsid);
performUndo(ccsid, clusterChanges, support);
} catch (DatabaseException e) {
e.printStackTrace();
}
if(ClusterUpdateProcessorBase.DEBUG)
- System.err.println(" === END UNDO ===");
+ LOGGER.info(" === END UNDO ===");
for(int i=0;i<clusterChanges.size();i++) {