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 2013/01/30 15:43:25 UTC
svn commit: r1440435 -
/activemq/activemq-apollo/trunk/apollo-leveldb/src/main/scala/org/apache/activemq/apollo/broker/store/leveldb/LevelDBClient.scala
Author: chirino
Date: Wed Jan 30 14:43:25 2013
New Revision: 1440435
URL: http://svn.apache.org/viewvc?rev=1440435&view=rev
Log:
Do an index repair if the index file fails to initially open.
Modified:
activemq/activemq-apollo/trunk/apollo-leveldb/src/main/scala/org/apache/activemq/apollo/broker/store/leveldb/LevelDBClient.scala
Modified: activemq/activemq-apollo/trunk/apollo-leveldb/src/main/scala/org/apache/activemq/apollo/broker/store/leveldb/LevelDBClient.scala
URL: http://svn.apache.org/viewvc/activemq/activemq-apollo/trunk/apollo-leveldb/src/main/scala/org/apache/activemq/apollo/broker/store/leveldb/LevelDBClient.scala?rev=1440435&r1=1440434&r2=1440435&view=diff
==============================================================================
--- activemq/activemq-apollo/trunk/apollo-leveldb/src/main/scala/org/apache/activemq/apollo/broker/store/leveldb/LevelDBClient.scala (original)
+++ activemq/activemq-apollo/trunk/apollo-leveldb/src/main/scala/org/apache/activemq/apollo/broker/store/leveldb/LevelDBClient.scala Wed Jan 30 14:43:25 2013
@@ -351,7 +351,14 @@ class LevelDBClient(store: LevelDBStore)
}
}
- index = new RichDB(factory.open(dirty_index_file, index_options));
+ try {
+ index = new RichDB(factory.open(dirty_index_file, index_options))
+ } catch {
+ case e:DBException =>
+ // lets try to recover by repairing the index file.
+ factory.repair(dirty_index_file, index_options)
+ index = new RichDB(factory.open(dirty_index_file, index_options))
+ }
try {
load_log_refs