Update of /cvsroot/freenet/freenet/src/freenet/node/rt
In directory sc8-pr-cvs1:/tmp/cvs-serv9597

Modified Files:
        StandardNodeEstimator.java 
Log Message:
Fix seting of the rtSearchFailed average when timeouts occur, make estimate
use numbers consistantly - edt


Index: StandardNodeEstimator.java
===================================================================
RCS file: /cvsroot/freenet/freenet/src/freenet/node/rt/StandardNodeEstimator.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- StandardNodeEstimator.java  30 Aug 2003 23:16:52 -0000      1.2
+++ StandardNodeEstimator.java  29 Sep 2003 23:16:47 -0000      1.3
@@ -136,12 +136,12 @@
                                                 double pLegitDNF) {
                double estimate = 0F;
                // First the simple failures
-               double pConnectFailed = rpConnectFailed.currentValue();
+               // would it be better just to remove the connectionFailed stuff...  edt
+               double pConnectFailed = needConnection ? 
rpConnectFailed.currentValue() : 0;
 //             double pQueryRejected = rpQueryRejected.currentValue();
-               double tConnectFailed = rtConnectFailed.currentValue();
+               double tConnectFailed = needConnection ? 
rtConnectFailed.currentValue() : 0;
 //             double tQueryRejected = rtQueryRejected.currentValue();
-               if(needConnection)
-                       estimate = (pConnectFailed * (tConnectFailed + 
requestFailTime));
+               estimate = (pConnectFailed * (tConnectFailed + requestFailTime));
 //                     + (pQueryRejected * (tQueryRejected + requestFailTime));
                double pSearchFailed = rpSearchFailed.currentValue();
                double tSearchFailed = rtSearchFailed.currentValue();
@@ -157,12 +157,11 @@
                double tDNF = etDNF.guessTime(k) * htl;
                double pNotConnectFailedOrSearchFailed =
                        (1 - pConnectFailed) * (1- pSearchFailed);
-               double realpDNF = pDNF * 
-                       pNotConnectFailedOrSearchFailed;
-               estimate += (realpDNF - pLegitDNF) * (tDNF + requestFailTime);
+               estimate += pNotConnectFailedOrSearchFailed 
+                       * (pDNF - pLegitDNF) * (tDNF + requestFailTime);
                // Success
-               double pSuccess = pNotConnectFailedOrSearchFailed *
-                       (1 - pDNF);
+               double pSuccess = pNotConnectFailedOrSearchFailed
+                       * (1 - pDNF);
                if(pSuccess > 1 || pSuccess < 0) {
                        Core.logger.log(this, "pSuccess = "+pSuccess, Logger.ERROR);
                        return Long.MAX_VALUE;
@@ -171,6 +170,15 @@
                        etSuccessSearch.guessTime(k) + ((double)size) / 
                        etTransferRate.guessTransferRate(k);
                estimate += pSuccess * tSuccess;
+
+/*              Core.logger.log(this, "rFT "+requestFailTime
+                         +" "+needConnection+" "+pConnectFailed+" "+tConnectFailed
+                         +" "+pSearchFailed+" "+tSearchFailed
+                         +" "+pTransferFailed+" "+tTransferFailed
+                         +" "+pDNF+" "+tDNF+" "+pLegitDNF
+                         +" "+tSuccess+" "+estimate,
+                         Logger.NORMAL);
+*/
                return (long)estimate;
        }
        

_______________________________________________
cvs mailing list
[EMAIL PROTECTED]
http://dodo.freenetproject.org/cgi-bin/mailman/listinfo/cvs

Reply via email to