From: Charles Lindsey (chl@clw.cs.man.ac.uk)
Date: Tue Mar 07 2000 - 04:46:10 CST
In <200003062115.QAA24395@darkstar.prodigy.com> davidsen@prodigy.com (Bill Davidsen) writes:
>You miss the point, you can't have duplicate entries in a history file
>because they're not allowed. The way a server prevents getting multiple
>copies of an article from multiple feeds is to reject an article with
>the same message-id (or hash thereof). In this case "the right thing" is
>to prevent duplicates, so there's no logic to implement the forbidden.
No, I think you are missing the point here. If an article appears with a
Message-ID that is already in your History, you say "no thank you". So if
it is already in your History twice, you still say "no thank you".
Actually, you never realize it was there twice, because dbz only leads
you to the latest, which is enough to trigger the "no thank you" response.
>Oh, and makedbz cares very much, it's not just expire.
I presume makedbz is what you use to recreate the whole dbz database if
it got corrupted/whatever? In that case, yes, it needs to be hacked so it
points to the latest (i.e., scanning your History from the start, if you
find dbz already pointing to an entry for that ID, you overwrite the
pointer with the new ID).
>> >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.
Well in an implementation where the History file records are of a fixed
length (which I gather they are in this scenario) then changing the API in
situ is fine (it's what Brad has been asking for all along). In fact, the
only reason for the (complicated?) solution of duplicate entries was to
avoid the need to rewrite entries in the middle of the traditional
variable-length record History file.
-- 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