> From:  Brent Welch <welch@panasas.com>
> Date:  Wed, 28 Aug 2002 22:40:21 -0700
>
> Well, I've used the check-the-modify-time cache trick for files in
> many places (not just exmh) so some part of me certainly thinks it
> is effective.  However, it occurred to me that if we do checkpoint
> state, then aren't we modifying the sequences file for the current
> folder on every message read?  Perhaps we look at the sequences file
> more than once per message view?
As I'd written the code a few months ago, we were reading the sequences file
first to see what sequences were in it and then once per sequence.  This
happens anywhere that we look at sequences, most notably in Ftoc_ShowSequences.
That seemed to be an obvious lose performancewise, but I wanted my abstraction to
have a separate call for "what sequences are in this folder?" and "what
messages are in this sequence?".  One option would have been to add another
call to get the data off of disk, but I felt that the check-the-modify-time
technique would be less error-prone.
I think the biggest gains would be from augmenting Ftoc_ShowSequences to allow
a finer specification of what needs to be updated in the ftoc so that the
current code would only be run when we really do have to update all sequences
for all messages.  I described these thoughts in an email message yesterday.
And again, if it can wait a few weeks, I'm willing to do it.
Chris
--
Chris Garrigues                 http://www.DeepEddy.Com/~cwg/
virCIO                          http://www.virCIO.Com
716 Congress, Suite 200
Austin, TX  78701		+1 512 374 0500
World War III:  The Wrong-Doers Vs. the Evil-Doers.

from localhost (localhost [127.0.0.1])
	by phobos.labs.netnoteinc.com (Postfix) with ESMTP id 755BD43F99
	for <jm@localhost>; Mon,  2 Sep 2002 07:33:31 -0400 (EDT)
from phobos [127.0.0.1]
	by localhost with IMAP (fetchmail-5.9.0)
	for jm@localhost (single-drop); Mon, 02 Sep 2002 12:33:31 +0100 (IST)
from listman.example.com (listman.example.com [66.187.233.211]) by
    dogma.slashnull.org (8.11.6/8.11.6) with ESMTP id g7V7jgZ26669 for
    <jm-exmh@jmason.org>; Sat, 31 Aug 2002 08:45:47 +0100
from listman.example.com (localhost.localdomain [127.0.0.1]) by
    listman.redhat.com (Postfix) with ESMTP id 4F6583EFFF; Sat, 31 Aug 2002
    03:45:54 -0400 (EDT)
from int-mx1.corp.example.com (int-mx1.corp.example.com
    [172.16.52.254]) by listman.redhat.com (Postfix) with ESMTP id 5581C3EA02
    for <exmh-workers@listman.redhat.com>; Fri, 30 Aug 2002 19:58:41 -0400
    (EDT)
(from mail@localhost) by int-mx1.corp.example.com (8.11.6/8.11.6)
    id g7UNwb619029 for exmh-workers@listman.redhat.com; Fri, 30 Aug 2002
    19:58:37 -0400
from mx1.example.com (mx1.example.com [172.16.48.31]) by
    int-mx1.corp.redhat.com (8.11.6/8.11.6) with SMTP id g7UNwbY19025 for
    <exmh-workers@redhat.com>; Fri, 30 Aug 2002 19:58:37 -0400
from blackcomb.panasas.com (gw2.panasas.com [65.194.124.178]) by
    mx1.redhat.com (8.11.6/8.11.6) with SMTP id g7UNhFl21007 for
    <exmh-workers@redhat.com>; Fri, 30 Aug 2002 19:43:15 -0400
from medlicott.panasas.com (IDENT:welch@medlicott.panasas.com
    [172.17.132.188]) by blackcomb.panasas.com (8.9.3/8.9.3) with ESMTP id
    TAA06163; Fri, 30 Aug 2002 19:58:20 -0400
In-reply-to Chris Garrigues <cwg-dated-1031061610.7c4931@DeepEddy.Com>
    message dated "Thu, 29 Aug 2002 10:00:08 -0400."
From exmh-workers-admin@redhat.com  Mon Sep  2 12:33:34 2002