Provides three commands: ScanWalnutLog, FixWalnutLog, and QuickFixWalnutLog. WalnutRescue.load makes sure that the WalnutKernel files are running;
% ScanWalnutLog logFile
logFile: the full path name of a Walnut log file; if not given a logFile, it will use the Walnut.WalnutRootFile profile entry to guess at a log name.
Opens a typescript viewer, reports progress, and summarizes the types, numbers of, and total bytes in the various log entries, and give information about invalid or trashed entries. The ~'s represent 10 entries seen.
You should not have the Walnut control window active if you are trying to scan its current log.
% FixWalnutLog rootFile {ATOMs for entries to be ignored}
rootFile: the full path name of a Walnut root file; entriesToIgonore is a sequence of atom names of entries that are to be removed from the log file - remember: case is important in specifying atoms. Will use the Walnut.WalnutRootFile profile entry if rootFile is not given.
This procedure makes use of Walnut's expunge code; it reads the current log and writes the expunge log, removing the entries specified, and any entries that are not valid for the current version of Walnut. In addition, it removes trashed entries, writing the orphaned bytes on the file <wDir>WalnutRescue.orphanedBytesLog. At the end of Fix'ing, the log is guaranteed to be a legal Walnut log. The root file is re-written to point to the now-current log. When you next start Walnut, you will be forced to do a scavenge.
Walnut cannot be active while you run Fix.
% QuickFixWalnutLog rootFile
rootFile: the full path name of a Walnut root file. Will use the Walnut.WalnutRootFile profile entry if rootFile is not given.
This procedure makes use of Walnut's expunge code; it reads the current log and writes the expunge log, removing ONLY the second entry if it is trashed - otherwise this code does not do anything; it writes the orphaned bytes on the file <wDir>WalnutRescue.orphanedBytesLog. At the end of QuickFix'ing, the log is guaranteed to be a legal Walnut log. The root file is re-written to point to the now-current log. When you next start Walnut, you will be forced to do a scavenge.
Walnut cannot be active while you run QuickFix.