[freenet-dev] [freenet-cvs] r17473 - trunk/freenet/src/freenet/node

Robert Hailey robert at freenetproject.org
Mon Feb 4 16:47:27 UTC 2008


I think this is a more complicated case than this solution provides.  
With reasonable frequency we will incur a success (just too late). In  
which case, will adding a failure table entry notice that?

Maybe it should be closer too:

if (success)
	send offer?;
else
	addToFailureTable;

--
Robert Hailey


On Feb 2, 2008, at 10:25 AM, toad at freenetproject.org wrote:

> Author: toad
> Date: 2008-02-02 16:25:41 +0000 (Sat, 02 Feb 2008)
> New Revision: 17473
>
> Modified:
>   trunk/freenet/src/freenet/node/RequestHandler.java
> Log:
> If a request takes so long that the predecessor times out, but we do  
> eventually get the data, we need to offer it to the predecessor  
> through ULPRs.
>
> Modified: trunk/freenet/src/freenet/node/RequestHandler.java
> ===================================================================
> --- trunk/freenet/src/freenet/node/RequestHandler.java	2008-02-02  
> 16:06:24 UTC (rev 17472)
> +++ trunk/freenet/src/freenet/node/RequestHandler.java	2008-02-02  
> 16:25:41 UTC (rev 17473)
> @@ -228,6 +228,8 @@
> 		this.status=status;
> 		
> 		if (now > responseDeadline) {
> +			// Offer the data if there is any.
> +    		node.failureTable.onFailure(key, htl, new PeerNode[]  
> { source }, null, -1, System.currentTimeMillis());
> 			Logger.error(this, "requestsender took too long to respond to  
> requestor ("+TimeUtil.formatTime((now - searchStartTime), 2, true) 
> +"/"+rs.getStatusString()+")");
> 			applyByteCounts();
> 			unregisterRequestHandlerWithNode();
>



More information about the Devl mailing list