[freenet-cvs] r12035 - trunk/freenet/src/freenet/store
toad at freenetproject.org
toad at freenetproject.org
Thu Mar 8 14:49:12 UTC 2007
Author: toad
Date: 2007-03-08 14:49:09 +0000 (Thu, 08 Mar 2007)
New Revision: 12035
Modified:
trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java
Log:
Check for dupes while reconstructing
Modified: trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java
===================================================================
--- trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java 2007-03-08 14:44:41 UTC (rev 12034)
+++ trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java 2007-03-08 14:49:09 UTC (rev 12035)
@@ -1104,8 +1104,13 @@
DatabaseEntry blockDBE = new DatabaseEntry();
storeBlockTupleBinding.objectToEntry(storeBlock, blockDBE);
OperationStatus op = chkDB.putNoOverwrite(t,routingkeyDBE,blockDBE);
- if(op == OperationStatus.KEYEXIST) dupes++;
- else if(op != OperationStatus.SUCCESS) failures++;
+ if(op == OperationStatus.KEYEXIST) {
+ addFreeBlock(l, true, "duplicate");
+ dupes++;
+ } else if(op != OperationStatus.SUCCESS) {
+ addFreeBlock(l, true, "failure: "+op);
+ failures++;
+ }
t.commit();
if(l % 1024 == 0)
System.out.println("Key "+l+ '/' +(chkStore.length()/(dataBlockSize+headerBlockSize))+" OK ("+dupes+" dupes, "+failures+" failures)");
More information about the cvs
mailing list