C news on a 3B1/7300 (or B news with mdbm)

Chris Lewis clewis at eci386.uucp
Wed Mar 28 01:11:31 AEST 1990


In article <195 at zebra.UUCP> vern at zebra.UUCP (Vernon C. Hoxie) writes:
> In article <23021 at ditka.UUCP>, kls at ditka.UUCP (Karl Swartz) writes:
> > In article <1990Mar23.182241.24840 at eci386.uucp> clewis at eci386.UUCP (Chris Lewis) writes:
> > >ecicrl (at 3b1) is running B-news 2.11.19 with ... no
> > >dbm/sdbm/dbz/ndbm/mdbm whatsoever.
 
> What are they supposed to do to C-news beyond the capability of the
> software in the package?

Nothing.  C-news (and B-news for that matter) need a simple key-value
database to maintain a "history" of what articles have been seen already
so that duplicate articles get rejected and that various programs
can associate an article Message-id with the actual file.
The key is the Message-Id, the value is some sort of pointer (eg: file
name or history line - depends on news version) to the actual article file.

Each of the *dbm's are a set of library routines with pretty similar interface
routines.  Each of them have substantially different characteristics, none
of which particularly matter when used with news.  But not all of them
are fully compatible with dbm, so your milage when using them elsewhere
varies.  When discussing news, the term "dbm" is taken both as a generic
software package (including all 5 of the ones I've mentioned) as well
as a specific implementation.

	dbm: original simple database mechanism found in V7 UNIX and
	     (I think) still in BSD.  Dropped from System V.
	sdbm: Ozan Yigit's implementation.  (Hey Ozan!  When's this going
	     to be released again?  I want to get it integrated with perl!)
	     PD.
	dbz: a stripped-down PD version, mostly suitable for news only.
	     It's shipped with C-news, but (at least until recently) Henry 
	     hasn't officially blessed it, and I don't think it's part
	     of the "standard" C-news automated build procedure.
	ndbm: Chris Torek's version, but I *think* you need some sort of
	     AT&T or BSD licensing on the machine that uses it.
	mdbm: Don't know much about it, but it doesn't sound sufficiently
	     like dbm to be used for anything but news without hacking.

[Though, I'm sure I'll be corrected on some of the above...]

The reason why you keep hearing about it is that many vendors have dropped
dbm from their UNIX releases, and that people need something like it for
news.  Without a *dbm available, B-news has an alternate history mechanism
that works reasonably well except for slowish machines with very large feeds.
On the other hand, C-news is unacceptably slow without a *dbm on any 
substantially sized newsfeed.  So you may end up having to futz around 
trying to install a *dbm that will speed up your news system.

If you want more detail, try looking up dbm(3) in Version 7 or Xenix
documentation.  That will give you a pretty good idea what it looks like.
-- 
Chris Lewis, Elegant Communications Inc, {uunet!attcan,utzoo}!lsuc!eci386!clewis
Ferret mailing list: eci386!ferret-list, psroff mailing list: eci386!psroff-list



More information about the Comp.sys.att mailing list