-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Matthew Toseland wrote:
> This is the downside of db4o. If it is a widespread problem, we're gonna have 
> to revert it. Which means throwing away more than 6 months work largely 
> funded by Google's $18K.

I think that using a database is a good idea (although I personally
would've opted for a relational database such as Derby). So I'd prefer
to try and understand and fix the issue rather than hiding from it :-).

> My database queue is usually pretty empty, even with queued downloads, but I 
> have 8G and fast mirrored disks...

The problem's that Freenet *doesn't* even use the amount of memory I
provide it with (I'm yet to see it use more than 120 megs out of 320 I
allow for the heap). I'd be willing to dedicate as much memory as
required if only it'd help.

My hard drives are nothing special - 250Gb 7200 RPM Seagate ones, 16 Mb
cache, SATA2, no NCQ - though definitely not the slowest out there. I
see ~35 Mb/s read speed and ~28 Mb/s write speed for medium-sized files
and ~5 Mb/s to 8 Mb/s for small files in the tests I'd done. I'll
probably have to test the same from inside Java to make absolutely sure
that it's not some weird JVM issue on my platform, though.

> 2650 handles is strange, on unix we are generally limited to 1024 and 
> generally we don't exceed that. Both of your problems may be caused by flaky 
> hardware, but frankly we do need to run on flaky real world hardware. :|

I don't have Freenet running right now, will check it later. But I2P is
using 2670 handles right now, and Azureus uses 1450 - so 2600 for
Freenet is definitely nothing out of the ordinary on Windows. Oh, and
the highest handle user on my machine is MySQL, which uses ~69000
handles and works absolutely fine :-).

>> Same here. Enormous disk queues. I've also compared i/o counts with i/o
>> bytes read/written - that's how I know that i/o operations are small. In
>> the statistics screen, I routinely see 100+ outstanding database jobs.
>> It can't be good.
> 
> This just confirms that disk I/O is the problem ... and almost certainly 
> caused by db4o as it goes away if nothing is queued.

My thinking exactly. Would providing you with a snapshot of CPU/memory
performance under YourKit Profiler (I have academic licenses for both
7.5 and 8.0, IIRC) or VisualVM (which is now a part of the JDK
distributive) on my machine help? Any logging I can turn on to help?
BTW, I have logging set to ERROR for now, as with NORMAL level it logs
~2Mb per minute, adding noticeably to overall disk contention.

Regards,
Victor Denisov.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFKAZQf1O5++4rTuI0RAr5KAKCPuXmaqThbq0g8jVxdGwj7fNGZ/wCgsBBw
YybivVLzs7FlJHvqXbvDJwA=
=SWCw
-----END PGP SIGNATURE-----

Reply via email to