The db4o branch of Freenet is rapidly approaching usability, so I'd very much 
like some more folk to try it out and let me know what they think, especially 
in terms of performance. I include instructions below. The db4o branch is a 
version of Freenet with all persistent requests kept in a database, this has 
several advantages:
- Much lower memory usage for large queues. You will need a fixed 3.7MB for 
every 10GB of queued downloads, plus obviously some temporary space; locally 
I have 4.86GB queued on a 128MB node memory limit.
- Fewer memory-related problems: Many nodes with largish queues have to do 
garbage collection very frequently, causing high CPU usage, and get 
OutOfMemoryExceptions and crashes.
- Instant request resuming: On restarting, a db4o node will immediately have 
all of your persistent downloads up and running from exactly where they were 
before your node was shut down. On the current Freenet, downloads have to 
start all over again on restart, causing the node to thrash the datastore for 
a long time, high CPU usage, I/O, and wasting time that could be used to 
fetch data. Also, startup should be significantly quicker.

Possible disadvantages: We may have slightly higher CPU usage if there is 
plenty of RAM and the node isn't restarted, and there will probably be 
slightly higher disk I/O. Also, I have put a lot of effort into debugging and 
optimising downloads, uploads seem to work but may be slow, and I haven't 
tested directory uploads yet.

If you would like to help to test the db4o branch, especially on slow systems, 
this would be very helpful. Please download the freenet-ext.jar and 
freenet-cvs-latest.jar from the CHKs below, shut down your node, replace 
freenet-ext.jar with the downloaded version, and replace 
freenet-stable-latest.jar or freenet.jar or freenet.jar.new (you may have one 
or more of these files, they're all the same thing), with the downloaded 
freenet-cvs-latest.jar.

CHK at 
qOcoVmDoMz2gP03I77~Ax375Ixq-Z~kvmYYEj6aJXG8,FlOIKbkwiIxp5Hl9b~~WzBq7UQD01WUf55g-QU8g7TM,AAIC--8/freenet-cvs-snapshot.jar
CHK at 
hgyAtyRgEujwAnx~U~emgdHHkf6SuXPMP0CnEXAlzH4,P65Gw3WRgxJc~29NkRMGw2yG-WkL5K54DgP4UBl7~3M,AAIC--8/freenet-ext-db4o.jar

(based on SVN revision 21903)

A few tips once you've got it set up:

The db4o testing howto site is now out of date, you can get it working much 
more quickly. However, you may find it a useful source of testing material to 
download (see the end); my testing collection includes files listed on the 
db4o test site, a few other linux ISOs, a few FMS binaries/source files, some 
pages/images from the Ghost Town mirror, all the CD images from the Resources 
page on my flog, all the >2MB bibles on TCR and all the big audio zip files 
from a site linked from TCR. All in an under 128MB memory footprint and ~ 15% 
CPU.

You can test with whatever you want, but bear in mind that ANY BUG REPORTS OR 
TEST RESULTS FROM USERS OBVIOUSLY ENGAGED IN COPYRIGHT INFRINGEMENT WILL BE 
IGNORED AND WILL LOSE THEIR RIGHT TO TECH SUPPORT!

USK at 
hiBur-SUasOR-m7qzR2HmTDLGmVQTuZKzS7va2zUyhQ,lOXQvKathjQzrbAt4Wy~puFsVvmcUDzo5z2Y59isf2c,AQACAAE/db4o-testing-howto/5

CHK at 
Y7JTTsam8WgSGV5gdDmYq7nEGx6cLOV3MrHpXk3V2Us,HXWDlR9VXU0woUJu~gVpJMuhhpJpo9kwI8GFjJY~NUw,AAIC--8/mandriva-linux-free-2008-spring-cd1-i586.iso
CHK at 
dYbLzaLYhOqVYfQcsJj5o91AwdctrbVwbJMU929P4-0,N5BUpWFeEfi5WpD49jB1XyIcmY-6SZiroUUg0~GOenA,AAIC--8/debian-40r3-i386-xfce-CD-1.iso
CHK at 
8WY4whItpoVvZN5HPuFi70YokL-ituk1W0Ogaqg~J4o,JJ587LGGbHi9zUqMJ~j1MqPVt0mDuD6uPeAk2fym3B8,AAIC--8/slackware-12.1-install-d1.iso
CHK at 
1xFD0Pes-2ON5fa2l0g1xCMH5jpRzpljk0n2ZMHZztc,uINsyVsBcuL-O5-ji7ReHiltouMSplUw-PxW1Tx8vLA,AAIC--8/ubuntu-8.04-desktop-i386.iso

Finally, note that I may still have to change data structures in a way which 
will make upgrading to a new version of the branch impossible without 
deleting your node.db4o and thus wiping your download and upload queues. I 
will indicate when this is necessary when I post a new jar.

Thanks, and looking forward to hearing from you!
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 827 bytes
Desc: not available
URL: 
<https://emu.freenetproject.org/pipermail/tech/attachments/20080901/bbc90498/attachment.pgp>

Reply via email to