Build 623 is in CVS. Amongst other improvements: * it fixes a bug in 622 which caused the routing table to be wiped on startup (!) * it initializes all servlets on startup by default, rather than doing it lazily * it adds a mechanism for threads to wait for the node to initialize * it makes the Distribution Servlet start background threads on startup attempting to download the missing files from freenet. As implemented now, each missing file gets a thread, and each thread does exponential backoff but starting at 5 seconds, all requests are at max HTL.
Build 622: * the much-heralded "pissing in your pants to stay warm" (oskar's description): automatic browser side retries of DNFs and RNFs, escalating the HTL by 4 in the case of a DNF, with exponential backoff starting at 10 seconds. * automatic removal of orphaned nodes and properties from the routing store; this interacted with a bug in SimpleDataObjectStore to cause the above routing-table-wipe-on-startup bug that Bombe reported on IRC. * probably other stuff I can't remember right now Anyway, the Distribution Servlet is arguably more or less feature complete. I'd prefer that somebody else prettified it since I have no talent in that area - Bombe has done some good work recently, and his mockups suggest that the best is yet to come. Future directions before 0.5.1: *** SPLITFILES FEC splitfiles are IMHO a killer app, or a component of any likely killer app for freenet. * Current bugs: at least two different substantial bugs in the downloader, one seems to affect the uploader too. Sound like deadlocks or something - this will take some time. * Config options: We need to expose the mainport options to the user, in the config file, documented, so that they can tweak, for example, splitFileThreads and splitFileUIMinSize. The simplest way to do this would be to move them out into Node as regular parameters; I fixed Params a while back so this is fesible. * (probably later) Interface - the UI needs overhauling. This can be post-0.5.1 IMHO, and I'm not working on it currently (I think Bombe is). * (probably 0.5.2) Threads. We need to be able to use more parallel requests, but we don't want to overload the node. Hence, a pool of requests, and some sort of semi-dynamic allocation to splitfile downloads/uploads, prefetch hints and regular browsing. IMHO we should release 0.5.1 when we have fixed the current known bugs in splitfiles, done something about the config options, and prettified the Distribution Servlet a bit. I will start porting low risk stuff over to stable soon. The anonymity issues recently mentioned come up from time to time; if there is a quick fix it should go in for 0.5.1, if not... we should address it more thoroughly in 0.5.2, ideally using a parser... a lot of work if we can't find a suitable parser to bundle, not trivial even if we can. -- Matthew Toseland toad at amphibian.dyndns.org amphibian at users.sourceforge.net Freenet/Coldstore open source hacker. Employed full time by Freenet Project Inc. from 11/9/02 to 11/1/03 http://freenetproject.org/ -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: not available URL: <https://emu.freenetproject.org/pipermail/devl/attachments/20021122/a5235b4e/attachment.pgp>
