----- Original Message -----
From: "Ray Arachelian" <ray at arachelian.com>
To: "General Discussion: On-Topic and Off-Topic Posts"
<cctalk at classiccmp.org>
Sent: Wednesday, February 10, 2010 4:54 PM
Subject: Re: Algol vs Fortran was RE: VHDL vs Verilog
Some of the stuff amazes me. We now have an app at $WORK that's an in
memory XML db - the data in memory is just a plain XML file as far as we
can tell - not tokenized and structured. Our db is ~100GB in size and
growing. Worse yet, this db "engine" is not multithreaded. Also, it
takes about an hour to save or load the db from/to disk. Of course this
is on a clustered system for high availability. But it takes more than
an hour to do a failover.
The previous version required you to load X copies of the db in memory
if you wanted to do X things with it at once! So a 384GB - yes GB
machine with 32 AMD 2GHz cores just isn't enough for this thing.
They've fixed this a bit, but nowhere near what it should be.
Like all poorly written apps, this one crashes occasionally. Care to
guess what happens to the poor file system when it tries to write a
300GB core file to disk that's far smaller? :-(
That is shocking. I may not be writing professional programs (thank god, no
time limits or other pressures), but when I do write software (usually for
the Amiga) I always include error checks. When attempting to save a file to
disk, I always check to make sure that there is enough space on the target
device for the file.
I had Windows Media Player crash on me the other week and jammed CPU usage
at 100% :( Not great on my laptop, as the only way to shut it down is to
pull the plug out of the mains and then pull out the battery (timed
carefully - thank god for the HD access light!). It was just as it was about
to reload in the music file (something else I hate - why re-load in the
music file you were just playing, especially when it's not a large file
(<5MB)?!!) after reaching the end when the problem occured.
I had selected the file to play in a slightly different way to normal, so
thankfully I can avoid that problem again quite easily :)
I'm certainly no expert at programming (good at BASIC and beginner at 68K
ASM), but if you don't sort out the easy bugs (or put in safety nets) how on
earth can you expect to catch the hard-to-find ones?!
Regards,
Andrew B
aliensrcooluk at yahoo.co.uk