makehistory - Initialize or rebuild INN history database


SYNOPSIS

       makehistory [-abeFIOx] [-f filename] [-l count] [-T
       tmpdir]


DESCRIPTION

       makehistory rebuilds the history(5) text file, which con­
       tains a list of message IDs of articles already seen by
       the server.  It can also be used to rebuild the overview
       database.  Note that the dbz(3) indexes for the history
       file are rebuilt by makedbz(8), not by makehistory as in
       earlier versions of INN.

       The default name of the history text file is pathdb/his­
       tory; to specify a different name, use the -f flag.

       By default, makehistory will scan the entire spool, using
       the storage manager, and write a history line for every
       article.  To also generate overview information, use the
       -O flag.

       WARNING: If you're trying to rebuild the overview
       database, be sure to delete or zero out the existing
       database before you start for the best results.  Other­
       wise, you may end up with problems like out-of-order
       overview entries, excessively large overview buffers, and
       the like.


OPTIONS

       -a  Append to the history file rather than generating a
           new one.  If you append to the main history file, make
           sure innd(8) is throttled or not running or you can
           corrupt the history.

       -b  Delete any messages found in the spool that do not
           have valid Message-ID headers in them.

       -e  Compute Bytes headers which is used for overview data.
           This option is valid only if -O flag is specified and
           overview.fmt includes `Bytes:'.

       -f filename
           Rather than writing directly to pathdb/history,
           instead write to filename.

       -F  Fork a separate process to flush overview data to disk
           rather than doing it directly.  The advantage of this
           is that it allows makehistory to continue to collect
           more data from the spool while the first batch of data
           is being written to the overview database.  The disad­
           vantage is that up to twice as much temporary disk
           space will be used for the generated overview data.

           With `buffindexed', the `overchan' program is invoked
           to write overview.

       -I  Don't store overview data for articles numbered lower
           than the lowest article number in active(5).  This is
           useful if there are old articles on disk for whatever
           reason that shouldn't be available to readers or put
           into the overview database.

       -l count
           This option specifies how many articles to process
           before writing the accumulated overview information
           out to the overview database.  The default is `10000'.
           Since overview write performance is faster with sorted
           data, each "batch" gets sorted.  Increasing the batch
           size with this option may further improve write per­
           formance, at the cost of longer sort times.  Also,
           temporary space will be needed to store the overview
           batches.  At a rough estimate, about 300 * count bytes
           of temporary space will be required (not counting temp
           files created by sort(1)).  See the description of the
           -T option for how to specify the temporary storage
           location.  This option has no effect with `buffind­
           exed', because `buffindexed' does not need sorted
           overview and no batching is done.

       -O  Create the overview database as well as the history
           file.  Overview information is only required if the
           server supports readers; it is not needed for a tran­
           sit-only server.  If you are using the `buffindexed'
           overview storage method, erase all of your overview
           buffers before running makehistory with -O.

       -T tmpdir
           If -O is given, makehistory needs a location to write
           temporary overview data.  By default, it uses pathtmp,
           set in inn.conf(5), but if this option is given, the
           provided tmpdir is used instead.  This is also used
           for temporary files created by sort(1) (which is
           invoked in the process of writing overview information
           since sorted overview information writes faster).  By
           default, sort usually uses /var/tmp; see the man page
           for sort on your system to be sure.

       -x  If this option is given, makehistory won't write out
           history file entries.  This is useful mostly for
           building overview without generating a new history
           file.


EXAMPLES

       Here's a typical example of rebuilding the entire history
       and overview database, removing broken articles in the
       news spool.  This uses the default temporary file

       is throttled.

           makehistory -b -f history.n -O -l 30000 -I

       This will rebuild the overview (if using `buffindexed',
       erase the existing overview buffers before running this
       command) and leave a new history file in history.n in
       pathdb.  To preserve all of the history entries from the
       old history file that correspond to rejected articles or
       expired articles, use:

           cd /usr/local/news/db
           awk 'NF == 2 { print }' < history >> history.n

       (replacing the path with your pathdb, if it isn't the
       default).  Then look over the new history file for prob­
       lems and run:

           makedbz -s `wc -l < history` -f history.n

       Then rename all of the files matching `history.n.*' to
       `history.*', replacing the current history database and
       indexes.  After that, it's safe to unthrottle innd.

       For a simpler example:

           makehistory -b -f history.n -I -O

       will scan the spool, removing broken articles and generat­
       ing history and overview entries for articles missing from
       history.

       To just rebuild overview:

           makehistory -O -x -F


FILES

       inn.conf
           Read for pathdb and pathtmp.

       pathdb/history
           This is the default output file for makehistory.

       pathtmp
           Where temporary files are written unless -T is given.


HISTORY

       Originally written by Rich $alz <rsalz@uunet.uu.net> for
       InterNetNews and updated by various other people since.

       $Id: makehistory.8,v 1.26.2.5 2000/08/09 22:26:55 kondou
       Exp $

       dbz(3), active(5), history(5), inn.conf(5), ctlinnd(8),
       innd(8), makedbz(8).


Man(1) output converted with man2html