[ kibitzing since this is one of my little hobby-horses ]

On Sat, Apr 24, 2004 at 09:33:27AM +0200, Andreas Aardal Hanssen wrote:
> 
> An option that says "automatically purge deleted messages" certainly has
> some scratch-head value; I believe we are better off without it :-).

I don't believe this belongs in an IMAP server, for sure.


> However,
> 
> a script that periodically removes deleted messages, is very feasable and
> easy to write as a daily cron job:
> 
> for k in `ls /home`; do
>     if [ -d $k/Mail ]; then
>         find $k/Mail -type f | egrep '2,[A-Z]+?T' | xargs echo rm
>     fi
> done

Unfortunately that has the effect of concentrating this effort at
a single resource point.  Running through all mailboxes on a server at
a particular time of day to do *anything* is very resource-intensive.
A slightly better approach would be to have a mailbox maintenance
daemon that knows how to parcel the load throughout the day (or week,
or month).  Operations that affected any folder could notify the
maintenance daemon (a la comsat).

OTOH, one of my thoughts (and it's on the to-do list on my own little
mail delivery agent) is the notion of a "rolling folder".  The local
delivery agent is configured such that it fills the folder to a certain
configurable storage level (in terms of number of messages, total
folder size, message age, or some combination of the above).  At
new-message delivery time, the old folder contents are rolled out to
make room (according to these parameters) for the new one.

This sort of thing would provide for, for example, a sliding window in
a spam folder, where the owner could look at some recent spam filings
now and then, but not otherwise care about what happens to the folder
contents.

I should add that this notion seems very controversial in some circles.

At any rate: combine this local delivery function with an IMAP server
"redelivery" notion, and you'd have the desired effect.  (A redelivery
function would invoke an external local delivery agent when filing a
message into a folder for which that function had been enabled.)

mm

Reply via email to