Author: toad
Date: 2007-05-02 16:12:45 +0000 (Wed, 02 May 2007)
New Revision: 13099

Modified:
   trunk/freenet/src/freenet/node/NodeStats.java
Log:
Minor refactoring, make fair liability split between different request types 
work for both output and input

Modified: trunk/freenet/src/freenet/node/NodeStats.java
===================================================================
--- trunk/freenet/src/freenet/node/NodeStats.java       2007-05-02 14:35:36 UTC 
(rev 13098)
+++ trunk/freenet/src/freenet/node/NodeStats.java       2007-05-02 16:12:45 UTC 
(rev 13099)
@@ -398,11 +398,16 @@
                // Increment each running count unless it is the one we are 
currently processing.
                // Purpose: Don't allow an SSK request (e.g.) unless there is 
space for a CHK insert *as well*.

+               int numCHKRequests = node.getNumCHKRequests() + ((!isInsert) && 
(!isSSK) ? 0 : 1);
+               int numSSKRequests = node.getNumSSKRequests() + ((!isInsert) && 
isSSK ? 0 : 1);
+               int numCHKInserts = node.getNumCHKInserts() + (isInsert && 
(!isSSK) ? 0 : 1);
+               int numSSKInserts = node.getNumSSKInserts() + (isInsert && 
isSSK ? 0 : 1);
+               
                double bandwidthLiabilityOutput =
-                       successfulChkFetchBytesSentAverage.currentValue() * 
(node.getNumCHKRequests() + ((!isInsert) && (!isSSK) ? 0 : 1)) +
-                       successfulSskFetchBytesSentAverage.currentValue() * 
(node.getNumSSKRequests() + ((!isInsert) && isSSK ? 0 : 1)) +
-                       successfulChkInsertBytesSentAverage.currentValue() * 
(node.getNumCHKInserts() + (isInsert && (!isSSK) ? 0 : 1)) +
-                       successfulSskInsertBytesSentAverage.currentValue() * 
(node.getNumSSKInserts() + (isInsert && isSSK ? 0 : 1));
+                       successfulChkFetchBytesSentAverage.currentValue() * 
numCHKRequests +
+                       successfulSskFetchBytesSentAverage.currentValue() * 
numSSKRequests +
+                       successfulChkInsertBytesSentAverage.currentValue() * 
numCHKInserts +
+                       successfulSskInsertBytesSentAverage.currentValue() * 
numSSKInserts;
                bandwidthLiabilityOutput += getSuccessfulBytes(isSSK, isInsert, 
false).currentValue();
                double bandwidthAvailableOutput =
                        node.getOutputBandwidthLimit() * 90; // 90 seconds at 
full power; we have to leave some time for the search as well
@@ -413,10 +418,10 @@
                }

                double bandwidthLiabilityInput =
-                       successfulChkFetchBytesReceivedAverage.currentValue() * 
node.getNumCHKRequests() +
-                       successfulSskFetchBytesReceivedAverage.currentValue() * 
node.getNumSSKRequests() +
-                       successfulChkInsertBytesReceivedAverage.currentValue() 
* node.getNumCHKInserts() +
-                       successfulSskInsertBytesReceivedAverage.currentValue() 
* node.getNumSSKInserts();
+                       successfulChkFetchBytesReceivedAverage.currentValue() * 
numCHKRequests +
+                       successfulSskFetchBytesReceivedAverage.currentValue() * 
numSSKRequests +
+                       successfulChkInsertBytesReceivedAverage.currentValue() 
* numCHKInserts +
+                       successfulSskInsertBytesReceivedAverage.currentValue() 
* numSSKInserts;
                bandwidthLiabilityInput += getSuccessfulBytes(isSSK, isInsert, 
true).currentValue();
                double bandwidthAvailableInput =
                        node.getInputBandwidthLimit() * 90; // 90 seconds at 
full power


Reply via email to