On Jan 22, 2008, at 1:22 PM, Matthew Toseland wrote:
> Nice. Are you fairly sure this works? Have you done at least some
> testing on
> it? I'm of half a mind to say revert it until after alpha 2 (this
> week) in
> the interests of stability, you see...
I have tested it, in the little simulator (20 nodes) and am running
this on my node now. The simulator works fine (CHK), my node has
locked up once with pInstantReject=100%{Outputbandwidth liability},
but I am not sure if it was running pre or post r17192 (forgot to set
this.status), so I just restarted it. Given the nature of r17192, the
symptoms make sense (thinking that every request is a failure for byte
logging).
I did think that it may have been a bit ambitious to get in the alpha,
but the only thing that really concerns me is if any of a
unregisterRequestSender() is missing. Previously it was *easy*, if the
thread quit, you unregister it. Closely related to applyByteCounts()
now... if one is forgotten it is a minor memory leak, and a big stats
error.
I also had a queue-per-priority patch, but I clobbered the diff and
was to frustrated to re-implement it :(
--
Robert Hailey
> On Monday 21 January 2008 19:17, robert at freenetproject.org wrote:
>> Author: robert
>> Date: 2008-01-21 19:17:14 +0000 (Mon, 21 Jan 2008)
>> New Revision: 17190
>>
>> Modified:
>> trunk/freenet/src/freenet/io/xfer/BlockTransmitter.java
>> trunk/freenet/src/freenet/node/RequestHandler.java
>> trunk/freenet/src/freenet/node/RequestSender.java
>> Log:
>> use callback for requestSender status; now only 1 thread per-
>> request (rather
> than 2)
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
<https://emu.freenetproject.org/pipermail/devl/attachments/20080122/667fa13b/attachment.html>