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

Modified Files:
      Tag: ngrouting
        NGRouting.java TreeRouting.java 
Log Message:
add binomial diag var: requestSuccessRatio


Index: NGRouting.java
===================================================================
RCS file: /cvsroot/freenet/freenet/src/freenet/node/rt/Attic/NGRouting.java,v
retrieving revision 1.1.2.9
retrieving revision 1.1.2.10
diff -u -r1.1.2.9 -r1.1.2.10
--- NGRouting.java      27 Aug 2003 15:54:35 -0000      1.1.2.9
+++ NGRouting.java      28 Aug 2003 00:55:54 -0000      1.1.2.10
@@ -28,6 +28,7 @@
     Node node;
     boolean hasSearchFailed = false;
     long origStartTime;
+    boolean logged = false;
     
     NGRouting(NGRoutingTable ngrt, Estimate[] list, int maxSteps, Key k,
              boolean doDesperate, Node n) {
@@ -52,8 +53,7 @@
                    continue;
                }
                last = null;
-               long t = System.currentTimeMillis()-origStartTime;
-               ngrt.globalEstimator.reportTime(key, t);
+               terminate(false);
                return null;
            }
            last = list[at].ne;
@@ -153,8 +153,7 @@
     public void transferFailed(long time, int htl, long size,
                               long transferTime) {
        last.transferFailed(key, System.currentTimeMillis() - lastTime, size);
-       long t = System.currentTimeMillis()-origStartTime;
-       ngrt.globalEstimator.reportTime(key, t);
+       terminate(false);
     }
     
     public void transferSucceeded(long searchTime, int htl, long size, 
@@ -164,23 +163,27 @@
            double rate = ((double)size) / ((double)transferTime);
            ngrt.reportRate(rate);
        }
-       long t = System.currentTimeMillis()-origStartTime;
-       ngrt.globalEstimator.reportTime(key, t);
+       terminate(true);
     }
     
     public void terminate() {
+       terminate(false);
+    }
+
+    public void terminate(boolean success) {
        desperate = true;
        count = maxSteps+1;
        at = list.length;
        long t = System.currentTimeMillis()-origStartTime;
        ngrt.globalEstimator.reportTime(key, t);
+       Core.diagnostics.occurrenceBinomial("requestSuccessRatio", 1, 
+                                           success ? 1 : 0);
     }
     
     public void dataNotFound(int htl) {
        long now = System.currentTimeMillis();
        last.dataNotFound(key, now - lastTime, htl);
        lastTime = now;
-       long t = System.currentTimeMillis()-origStartTime;
-       ngrt.globalEstimator.reportTime(key, t);
+       terminate(false);
     }
 }

Index: TreeRouting.java
===================================================================
RCS file: /cvsroot/freenet/freenet/src/freenet/node/rt/TreeRouting.java,v
retrieving revision 1.21.2.9
retrieving revision 1.21.2.10
diff -u -r1.21.2.9 -r1.21.2.10
--- TreeRouting.java    27 Aug 2003 15:54:35 -0000      1.21.2.9
+++ TreeRouting.java    28 Aug 2003 00:55:54 -0000      1.21.2.10
@@ -69,6 +69,7 @@
                                        desperate+", doDesperate="+
                                        doDesperate+", stepCount="+stepCount+" for "+
                                        refWalk, Logger.DEBUG);
+                   terminate(false);
                    return null;
                } else {
                    if(logDEBUG)
@@ -253,16 +254,28 @@
     
     public void transferFailed(long time, int htl, long size, long etime) {
         rt.transferFailed(mem);
+       terminate(false);
     };
     
-    public void transferSucceeded(long time, int htl, long size, long etime) {};
+    public void transferSucceeded(long time, int htl, long size, long etime) {
+       terminate(true);
+    };
     
     public void dataNotFound(int htl) {
+       terminate(false);
        // We don't care
     }
     
-    public void terminate() { }
-    // We don't care
+    public void terminate() {
+       terminate(false);
+    }
+    
+    public void terminate(boolean success) {
+       desperate = true;
+       stepCount = node.maxRoutingSteps+1;
+       Core.diagnostics.occurrenceBinomial("requestSuccessRatio", 1, 
+                                           success ? 1 : 0);
+    }
 }
 
 

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

Reply via email to