[MacLoggerContest] Journalling

Jack Brindle jackbrindle at earthlink.net
Sat Mar 12 14:25:27 EST 2005


Before I go on to the next topic, let me report my research on the 
journalling issue. I sent a previous email on this, but it somehow got 
lost.

I spent some time going over the operation of several PC-based contest 
programs, including TRLog, WriteLog and N1MM. Several of the programs 
(very notably WriteLog) keep their log information in RAM, writing it 
to storage only when requested. This provides for fast access to all 
data, but also leaves that data open to loss on a power failure or 
other computer calamity (faulty pointers, etc). The reason for this is 
that in the early days of PCs, especially under DOS, mass storage 
consisted of some hard disks, but mainly floppies. Neither were that 
reliable, and all were very slow (especially floppies). Thus for fast 
access to data, you really needed to have that data in RAM. The 
solution was to keep a journal file for all data written into the log, 
and only write out the entire log when needed (or requested by the 
user). If there was a problem, the log could be rebuilt with the 
journal file. Of course, since the media was slow, the journal file 
writes were also slow, but at least you didn't have to write the entire 
log. The authors went to a lot of trouble to make this system work in 
light of the hardware/OS facilities at hand.

Newer programs have tended to require more reliable hardware / OS, and 
have moved to different techniques to handle reliability issues. It is 
interesting that N1MM does not use an explicit journal file, although 
it may be built in to the Access database.

At the risk of getting into implementation, I would suggest a better 
scenario is to keep the log on disk, with an in-memory log tree 
maintaining rudimentary information (callsign) along with an index into 
the log file for the QSO entry. You then get the best of both worlds, 
with the immediately-written log file eliminating the need for a 
journal and fast access to commonly needed information. There are some 
problems with this scenario, such as how to handle multiple QSOs with a 
single station for contests that allow it, but those can easily be 
taken care of by intelligent software design.

There are big advantages to using contemporary MacOS X systems. Not 
having to pull tricks to help out old, slow systems is definitely a 
plus!

-Jack Brindle, W6FB
=======================================================================



More information about the MacLoggerContest mailing list