Journaling

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.