Author: toad
Date: 2007-03-24 18:06:34 +0000 (Sat, 24 Mar 2007)
New Revision: 12317
Modified:
trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java
Log:
Detect another indicator of a corrupt secondary DB
Modified: trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java
===================================================================
--- trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java 2007-03-24
16:59:22 UTC (rev 12316)
+++ trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java 2007-03-24
18:06:34 UTC (rev 12317)
@@ -1841,7 +1841,9 @@
}
private void checkSecondaryDatabaseError(Throwable ex) {
- if((ex instanceof DatabaseException) && (ex.getMessage() != null &&
ex.getMessage().indexOf("missing key in the primary database") > -1)) {
+ String msg = ex.getMessage();
+ if((ex instanceof DatabaseException) && (msg != null &&
(msg.indexOf("missing key in the primary database") > -1) ||
+ msg.indexOf("the primary record contains a key that is
not present in the secondary") > -1)) {
try {
fixSecondaryFile.createNewFile();
} catch (IOException e) {