[dev] IMP performance - cache mailbox sorts

Chuck Hagenbuch chuck at horde.org
Thu Apr 13 20:47:11 PDT 2006


Quoting Michael M Slusarz <slusarz at horde.org>:

>> - do an imap_status call on the mailbox. if there are "recent'
>> messages, we know there's new mail we have to get
>
> What about IMAP_Cache::?

That looks perfect. It doesn't seem to be used anywhere right now? Ah,  
in Ingo - but I don't see it being used in IMP.

>> - deletions/purges performed by imp/dimp unset indices in the cached
>> sort automatically
>
> This should already be done in IMP_Mailbox::.

Great.

>> - otherwise we save the sort for a period of time, like 30 seconds.
>> not so long that changes made in other clients, etc. never show up,
>> but long enough to speed up scrolling/paging through a mailbox
>> quickly. this cache time is wide open for debate, of course. if Recent
>> checks and updating on our own changes catch most updates, i can see
>> it being more like 5 minutes.
>
> This is definitely something proper for the config file.

Yup.

> We still have to re-sort on any activity when using thread sort
> regardless of any cache time given (since a deletion in a thread sort
> can change the entire tree structure).

Well, so we have to resort on deletions, not on other activity. And  
maybe someday we can have different handling of threads to avoid that  
necessity.

But my main objective at this point is to make paging through a  
mailbox back and forth fast and not request duplicate information -  
especially think scrolling up and down through a mailbox in DIMP,  
requesting message slices left and right.

-chuck

-- 
"we are plastered to the windshield of the bus that is time." - Chris


More information about the dev mailing list