DIDUMP(8)                   System Manager's Manual                  DIDUMP(8)

DILOAD(8)                   System Manager's Manual                  DILOAD(8)

       didump - Diablo program to dump the dhistory database

       diload - Diablo program to append to the dhistory database

       didump [ -f ] [ -x ] [ -t ] [ -v ] [ -l ] dhistory-file

       diload [ -v ] [ -f ] [ -h hashtablesize ] [ -u ] [ -o ] [ dhistory-file

       Didump dumps the specified dhistory file into a human readable format.
       It is used to debug the dhistory database, to recover a corrupted
       dhistory file.  In combination with diload, didump may be used to
       remove expired entries over 16 days old from the dhistory file.

       -x causes didump to not dump expired entries that are over 16 days old.

       -t is used for debugging and causes didump to attempt to trace the
       dhistory file's hash table links.  It is very inefficient.

       -l is used to force didump to flush each line to the output rather then
       buffer the output, useful when running "didump -f dhistory | dreadart
       -v -f -" or something of that ilk.

       -v is used to generate additional information, such as the spool file
       containing the article.

       -o DiDump V1.08 can read older (V1.07 or smaller) Diablo dhistory files
       if this option is specified.  This is used when upgrading to 1.08 to
       reload the dhistory file with the dhistory file format.

       -f with a normal dump (no -t), seeks to the end of the history file and
       prints out entries as other programs (diablo) add them.  DiDump will
       not exit in this case.  This option is useful to get an idea of the
       aggregate incoming article rate.  NOTE, however, that diablo does not
       add history file entries with a simple append, so you may see blank
       records in the output that, in fact, are filled-in later.

       Generally speaking, when recovering a dhistory file or trimming off
       obsolete entries, didump or didump -x is run with the existing history
       file as an argument, and the output is piped to diload -f tempfile.
       Once the recovery is complete, the temporary history file is then
       renamed to become the actual history file.  The diablo server must be
       paused during such operations to prevent it from acting on the 'old'
       version of the history file while the new one is being constructed.

       Diload takes history data on the standard input and appends it to the
       specified history file.  If no history file is specified, the active
       dhistory database is used.  If any given record already exists in the
       dhistory file, the new record is thrown away and the original record
       left intact.  You can safely run diload to append new entries without
       shutting the main Diablo server down, but Diablo must be shutdown if
       you intend to rewrite the history file.

       -v Turn on verbose mode.  diload prints out its progress.

       -f Turn on special-fast mode.  This locks the history file through the
       entire procedure and makes the assumption that entries being added did
       not previously exist.  This also causes the base hash table to be
       cached and written then written out when the load operation has
       completed.  DiLoad will create the history file you supply as an
       argument and will refuse to run if it is already pre-existing.  This is
       used in the weekly trimming script to quickly rebuild the history file
       from a dump.

       -u May be used with special-fast mode to re-enable checking for
       duplicates.  You have the advantage of locking the history file
       throughout the entire operation, but can still use a pre-existing
       history file to 'update'.

       -h hashtablesize The default hash table size is 4 million entries (-h
       4m).  You can set it to any power of two but the suggested size is 4m
       or 8m.  Do NOT forget the 'm' for million, or you will be a very
       unhappy camper.

       diablo(8), dclean(8), dicmd(8), didump(8), diload(8), dnewslink(8),
       doutq(8), dexpire(8), dexpireover(8), diconvhist(8), dilookup(8),
       dspoolout(8), dnewsfeeds(5), dkp(8), dpath(8), diablo-kp(5), diablo-