Re: cdi server (mirroring ideas)

Robert Haig (rhaig nospam at hackboy.com)
Wed, 31 Mar 1999 12:06:53 -0600

On Wed, Mar 31, 1999 at 09:41:40AM -0800, robert nospam at moon.eorbit.net wrote:
> On 30 Mar, rhaig nospam at hackboy.com wrote:
> >> But what in the case when two people enter different information for
> >> the same CD?
> >>
> >> --ruaok Freezerburn! All else is only icing. -- Soul Coughing
> >>
> >> Robert Kaye -- robert nospam at moon.eorbit.net http://moon.eorbit.net/~robert
> >
> > no problem. each cd has a cdid that already has an algorithm to determine it.
> > say server A & B both got this new CD at the same time. then A querries B for
> > the new CDs it's gotten since the last time it checked. A gets a list back
> > from B that included the CDid for the disc they both have. A removes from
> > that list and IDs already in it's database, and then it's left with a list of
> > CDs that it doesn't have & B does, then do a querry (same as the client
> > querry) for each CDid, and populate the database. With this method, the 2
> > servers will have different information for the same disc, but hopefully it
> > was just a typo & not a CDid collision.
>
> You're right, but I would really like to have a system that propogates
> fixed typos through the system. People shouldn't have to fix the typo
> on each server. That's where this system gets tricky.
>
>
> --ruaok Freezerburn! All else is only icing. -- Soul Coughing
>
> Robert Kaye -- robert nospam at moon.eorbit.net http://moon.eorbit.net/~robert

then it's time to add a method to check with other servers. say once a day or
week, (or whatever time period) request a list of CDid,chksum pairs from your
peer servers, and compare it. Then the question is what to do. Which server
has the correct info? We can't take the "majority rules" standpoint, because
the incorrect info may have propigated faster. So we establish a
list of trusted servers. This parts from the "all servers being equal"
standpoint, but I don't know how else to do it. If we take the trusted
server route, then the CDid,chksum pair request should be to the trusted server
base, and the chksums that differ should be re-requested from the trusted
server and replace the incorrect info. And, once a CD has been varified with the trusted server, it doesn't need to be verified again. Maybe add a verified
field to the record, so when it's distributed, the server that gets it, knows
that it doesn't have to be verified.

just thinking outloud, but that's how these things work.

-- 
Rob