snprimedb - feed the sn database.
snprimedb [-i] (no arguments)
snprimedb reads records from its standard input and enters them into
the database. The database is appended to; if you want to start a new
database, you would delete the database files
.chain, .table, .newsgroup before running this program.
The main purpose of snprimedb is to rebuild the ID database. Then its
input is usually obtained from snscan.
If the option -i is given, simply initialize the database files if they
do not exist, and exit.
Input lines are of the format
newsgroup id serial where newsgroup is the newsgroup the article may be
found in, id is its message id, and serial is the local serial number
of that article in that newsgroup. If newsgroup is the special name
=junk, then the whole line is ignored.
You will need to be root or the owner of /var/spool/sn to do this.
snprimedb does not check to see that the articles really exist. Also
the size of the hash table is fixed at compile time.
Under degenerate conditions, the hash table file .chain (see below)
could grow very large, with reclaimed space remaining unused. This is
due to the very simple file space allocator, which doesn’t know how to
coalesce adjacent free areas. It doesn’t know how to split them
either. The allocator assumes that the shape of the distribution of
record lengths remains quite constant over time.
The hash table database doesn’t make any attempt to reduce its
footprint. This should be acceptable, since the database is shared.
SNROOT If this is set and is not empty, the value is used in place of
/var/spool/sn, the default news spool directory.
snprimedb uses this file as the index of the hash table, and ...
as the hash chains, and ...
to attach an integer identifier to each newsgroup name. This
file is a human-readable flat text file.