[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