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, [EMAIL PROTECTED] 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();
>
_______________________________________________
Devl mailing list
[email protected]
http://emu.freenetproject.org/cgi-bin/mailman/listinfo/devl