Author: toad
Date: 2006-07-25 21:11:35 +0000 (Tue, 25 Jul 2006)
New Revision: 9764
Modified:
trunk/freenet/src/freenet/io/comm/IOStatisticCollector.java
trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java
Log:
Maybe fix a wierd NPE.
Reduce memory usage when shrinking datastore.
Modified: trunk/freenet/src/freenet/io/comm/IOStatisticCollector.java
===================================================================
--- trunk/freenet/src/freenet/io/comm/IOStatisticCollector.java 2006-07-25
20:45:49 UTC (rev 9763)
+++ trunk/freenet/src/freenet/io/comm/IOStatisticCollector.java 2006-07-25
21:11:35 UTC (rev 9764)
@@ -13,7 +13,7 @@
private static IOStatisticCollector _currentSC;
private long totalbytesin;
private long totalbytesout;
- private HashMap targets;
+ private final HashMap targets;
private IOStatisticCollector() {
// Only I should be able to create myself
Modified: trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java
===================================================================
--- trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java 2006-07-25
20:45:49 UTC (rev 9763)
+++ trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java 2006-07-25
21:11:35 UTC (rev 9764)
@@ -262,11 +262,18 @@
if(result.equals(OperationStatus.SUCCESS))
deleted++;
+ if((curBlocks-i) % 2048 == 0) {
+ t.commit();
+ if(i-1 >= maxBlocks)
+ t =
environment.beginTransaction(null,null);
+ else
+ t = null;
+ }
+
synchronized(this) {
maxBlocks = maxChkBlocks;
curBlocks = chkBlocksInStore;
- if(maxBlocks >= curBlocks)
- return;
+ if(maxBlocks >= curBlocks)
break;
}
}