You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by ch...@apache.org on 2007/06/07 22:00:38 UTC
svn commit: r545289 -
/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/store/amq/AMQPersistenceAdapter.java
Author: chirino
Date: Thu Jun 7 13:00:37 2007
New Revision: 545289
URL: http://svn.apache.org/viewvc?view=rev&rev=545289
Log:
Fix for the DefaultStoreXARecoveryBrokerTest test failure.
Modified:
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/store/amq/AMQPersistenceAdapter.java
Modified: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/store/amq/AMQPersistenceAdapter.java
URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/store/amq/AMQPersistenceAdapter.java?view=diff&rev=545289&r1=545288&r2=545289
==============================================================================
--- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/store/amq/AMQPersistenceAdapter.java (original)
+++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/store/amq/AMQPersistenceAdapter.java Thu Jun 7 13:00:37 2007
@@ -175,14 +175,26 @@
}
},"ActiveMQ Journal Checkpoint Worker");
createTransactionStore();
- if(referenceStoreAdapter.isStoreValid()==false){
- log.warn("The ReferenceStore is not valid - recovering ...");
- recover();
- log.info("Finished recovering the ReferenceStore");
- }else {
- Location location=writeTraceMessage("RECOVERED "+new Date(),true);
- asyncDataManager.setMark(location,true);
- }
+
+//
+// The following was attempting to reduce startup times by avoiding the log
+// file scanning that recovery performs. The problem with it is that XA transactions
+// only live in transaction log and are not stored in the reference store, but they still
+// need to be recovered when the broker starts up. Perhaps on a graceful shutdown we
+// should record all the in flight XA transactions to a file to avoid having to scan
+// the entire transaction log. For now going to comment this bit out.
+//
+// if(referenceStoreAdapter.isStoreValid()==false){
+// log.warn("The ReferenceStore is not valid - recovering ...");
+// recover();
+// log.info("Finished recovering the ReferenceStore");
+// }else {
+// Location location=writeTraceMessage("RECOVERED "+new Date(),true);
+// asyncDataManager.setMark(location,true);
+// }
+
+ recover();
+
// Do a checkpoint periodically.
periodicCheckpointTask=new Runnable(){