NAME¶
snprimedb - feed the sn database.
SYNOPSIS¶
snprimedb [-
i] (no arguments)
DESCRIPTION¶
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.
BUGS¶
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.
ENVIRONMENT VARIABLES¶
- SNROOT
- If this is set and is not empty, the value is used in place of
/var/spool/sn, the default news spool directory.
FILES¶
- /var/spool/sn/.table
- snprimedb uses this file as the index of the hash table, and ...
- /var/spool/sn/.chain
- as the hash chains, and ...
- /var/spool/sn/.newsgroup
- to attach an integer identifier to each newsgroup name. This file is a
human-readable flat text file.