Author: toad
Date: 2008-07-01 17:14:58 +0000 (Tue, 01 Jul 2008)
New Revision: 20919

Modified:
   
branches/db4o/freenet/src/freenet/client/async/ClientRequestSchedulerCore.java
Log:
Reduce latency penalty from big RegisterMe's (i.e. splitfile segments)

Modified: 
branches/db4o/freenet/src/freenet/client/async/ClientRequestSchedulerCore.java
===================================================================
--- 
branches/db4o/freenet/src/freenet/client/async/ClientRequestSchedulerCore.java  
    2008-07-01 17:14:16 UTC (rev 20918)
+++ 
branches/db4o/freenet/src/freenet/client/async/ClientRequestSchedulerCore.java  
    2008-07-01 17:14:58 UTC (rev 20919)
@@ -511,6 +511,7 @@
        class RegisterMeRunner implements DBJob {

                public void run(ObjectContainer container, ClientContext 
context) {
+                       long deadline = System.currentTimeMillis() + 10*1000;
                        for(int i=0;i < 10; i++) {
                                try {
                                        if(!registerMeSet.hasNext()) break;
@@ -544,6 +545,7 @@
                                        // Cancel the request, and commit so it 
isn't tried again.
                                        reg.getter.internalError(null, t, 
sched, container, context);
                                }
+                               if(System.currentTimeMillis() > deadline) break;
                        }
                        if(registerMeSet.hasNext())
                                context.jobRunner.queue(registerMeRunner, 
NativeThread.NORM_PRIORITY, true);


Reply via email to