For restoring the integrity of a data base after a crash, as well as
for establishing communication with other servers, a journaling
facility has been implemented. This facility is used exclusively
by the database servers. It consists of recording on an FZ
sequential file all kinds of updates which affect the data base, namely
the addition or deletion of directory trees, the addition or deletion of
data objects, the alteration of key values, the deletion of some
partitions in a partitioned directory, the definition of aliases and
mnemonics in the DICTIONARY directory or the insertion of items in the
HELP directory. The information is recorded in different types of FZ
records, consisting of at least an FZ header, with or without a data
part, depending on the kind of action, recorded as first word in the FZ
header. In case of several data base files, each corresponding top
directory is associated with an RZ file number. The same FZ file can
however serve several top directories, if the user has decided so. It is
possible to update a database on a selective number of directories from
a journal file.
Two journal files are supported - a 'standard' journal file, which is used to communicate updates to other servers, and a 'special backup' file, which is retained locally. In either case, the journal files are handled automatically by the servers and are no concern of general users.