From: Charles Lindsey (chl@clw.cs.man.ac.uk)
Date: Mon Mar 06 2000 - 05:16:48 CST
In <yl8zzzydqd.fsf@windlord.stanford.edu> Russ Allbery <rra@stanford.edu> writes:
>INN's dbz code doesn't look much, if anything, like C News's at this
>point.
If dbz is basically a device for mapping Message-IDs into an offset within
the history file, then it shouldn't be hard to fix it to do the "right
thing" for duplicates. Note that it _doesn't_ have to retain any
capability to retrieve the old history entry. Nobody cares about that
anymore (except the Expires program).
>What INN's dbz code *will* allow in INN 2.4 or thereabouts (if I can ever
>find time to work on anything other than fighting fires at work :/) is
>in-place updates of the storage API token associated with a given hash.
>So you can potentially solve the problem in INN that way. But it doesn't
>support that currently either.
OK, I think you need to explain to me exactly what this API token is. Do I
gather than the history file essentially maps (a hash of) the Message-ID
to an API token (plus an expiry date or whatever). So presumably this API
token is mapped to actual storage in some way, whether via article numbers
or not. I think I need to understand that bit of the process.
>Opening the article and parsing its headers on each Replaces is just
>really ugly. Doable for a single news system, but really ugly. In a
>clustered environment, I think you'd have to do this separately on each
>slave since the article has likely already expired from the master, making
>this even uglier.
I don't see this as a problem. Replaces are going to be relatively rare
beasts, so efficiency is not important. I agree that it seems that the
slaves have to do the work in those systems, becuase Replaces are a form
of Cancel.
-- Charles H. Lindsey ---------At Home, doing my own thing------------------------ Email: chl@clw.cs.man.ac.uk Web: http://www.cs.man.ac.uk/~chl Voice/Fax: +44 161 437 4506 Snail: 5 Clerewood Ave, CHEADLE, SK8 3JU, U.K. PGP: 2C15F1A9 Fingerprint: 73 6D C2 51 93 A0 01 E7 65 E8 64 7E 14 A4 AB A5