Re: directory structure for large lists...

1998-08-20 16:51:25
On August 20, 1998 at 10:58, Jason L Tibbitts III wrote:

e> Wilma doens't provide the cross linking.  I sometimes wish it did, but I
e> haven't time to mess with it.. :-)

I don't think it can.  If MHonArc had a way to have one central message-ID
to filename database that it could make the crosslinks from, then I think
this would happen automatically.  But that's a bit out of Wilma's domain.

Cross archive linking is a known issue.  It is possible to to create a
central message-id to filename database (like via DB_File).  Some
issues arise providing such a feature:

    o   Locking central database from multiple processes modifying it.
        The same technique can be used for archive locking, but then
        you double the damage if MHonArc abnormally terminates.

    o   How to manage forward links.  Detecting for cross-archive
        references would be straight forward since modification to the
        referenced message is not needed.  However, linking back the
        other way (ie. cross archive follow-up links) is more
        problematic.  It's possible, but performance will be an issue.

        This implies that central database has to keep 3 sets of
        information for each message-id:

            -   message-id => filename
            -   message-id => reference id list
            -   message-id => follow-up id list

    o   What to do if a message (same id) is added to more than one
        archive.  What gets stored as filename?

    o   Deleting a message gets more expensive since there can be
        dependencies across multiple archives.

Some compromises can be made.  For example, deleting a message only
updates the archive the deleted message is contained within.  Then a
batch process can be used to periodically sync up the other archives.

The stickiest problem is the same message in multiple archives.


             Earl Hood              | University of California: Irvine
      ehood(_at_)medusa(_dot_)acs(_dot_)uci(_dot_)edu      |      Electronic 
Loiterer | Dabbler of SGML/WWW/Perl/MIME

<Prev in Thread] Current Thread [Next in Thread>