[Raw Msg Headers][Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: 'talking to myself' errors again



( 2.99.37 does not compile at Solaris 2 -- moved code a while back..
  2.99.38 coming out tomorrow, and from monday I start working at
  Telecom Finland doing UNIX wizarding... )

> I just had a rather bad bout with this just now.  I even got automatically
> removed from one high traffic mailing list because of too many bounced
> messages. :-(

	Most likely this is again a case of
		$MAILSHARE/db/localnames
	not being sort(1)ed properly.

	That file is per default searched with BINARY SEARCH,
	and as such it MUST be sort()ed!

...
> Is this really a problem with our name service as suggested once before?
> I use the /etc/hosts file first and DNS second.  My /etc/hosts file looks
> like:
...
> Or is there another problem here?  I hope there can be some kind of
> workaround for this, because while Z-mailer ordinarily works great, it
> gets very annoying to wonder if it will behave itself after restarting the
> system.

	Indeed...

	I have thought of altering this relation to use special
	incore method.  Perhaps so that it is translated into
	an incore relation by following script (at the end).

	It is something we use at VGER.RUTGERS.EDU to handle
	routes database, which is rather static in its nature..

	Also such incore relation is a bit faster, than doing
	search at the file, but changes at the database require
	regeneration of the zmsh version and restart of the
	router(s), and that way re-reading the zmsh version
	into the router.    There is no possibility to use the
	"-m"-option at the relation definition for automatic
	change detection.

> Roy Bixler
> University of Chicago Press
> rcb@press-gopher.uchicago.edu

	/Matti Aarnio

PS: This file is included at upcoming 2.99.38

----------- utils/make-incore.sh -----------------
#!/bin/sh
#
#  This script builds a ZMailer SH-script with incore data-entries from
#  a source of  key/data pairs
#
#  ARGS: dbasename infilename outfilename
#

DBASE=$1
INFILE=$2
OUTFILE=$3

if [ ! -f "$INFILE" ]; then exit 1; fi

cat $INFILE |			\
(
	echo "# generated script from '$INFILE' into '$OUTFILE' at `date`"
	echo "relation -lt incore -d pathalias -s 0 $DBASE"
	awk '/^[^#]/{printf "db add '$DBASE' '\''%s'\'' '\''%s'\''\n",$1,$2}' 
) > $OUTFILE