[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: How to speed up fetching mail



* Karsten Heymann (karsten.heymann@gmx.de) [020427 01:12]:
> * Vineet Kumar <debian-user@virtual.doorstop.net> [020427 09:18]:
> > If it's still all too slow, you might want to try grabbing all the
> > mail into a local maildrop and then processing it from there
> > asynchronously.  What I mean by that is that you could use getmail to
> > jsut dump all the incoming mail into one big incoming maildir, no
> > filtering of any kind.  Then, offline, you could re-deliver those
> > messages into your regular mail folders.
> 
> That's a really cool idea. Should I use mbox or maildir for this buffer

I'd use maildir -- but then again, I always use maildir. =) I think the
reason you give below is a pretty good one. Any good reason to use mbox?
Not afaics, unless you're running out of inodes.

> mailbox? If I use maildir, can I do th following to deliver locally
> after fetching:
> 
> #!/bin/bash
> for mail in `find -type f  ~/Maildir/Incoming`
> do
>   cat $mail | procmail -Y -d karsten && rm $Mail
> done
> 
> or can that break anything? (It's certainly not the way djb dreamed of
> it :) 

Actually, the way djb dreamed of it is called serialmail. It's for
exactly this purpose: download a bunch of mail over a slow link into a
maildir and then redeliver those messages. I've never used it, or even
looked at it, but that's what the description says. The -src is
available as a .deb =)

AFAIK, though, your method would work. You might want to at least look
at the docs and/or source of serialmail to see if there's anything that
stands out that might give a clue about why that simple approach might
break.

My guess is that serialmail is only more complicated in the respect that
it speaks SMTP and QMTP, and that piping each message to procmail as you
suggest should be okay.

There's also something called maildircmd, which is distributed as an
add-on to serialmail (don't know if it's included in the -src .deb)
which seems to do what you want: for each message in a maildir, execute
a specified command. Again, not sure why it would be preferable to the
simple shell script you give, but probably worth taking a look at.

good times,
Vineet

-- 
Currently seeking opportunities in the SF Bay Area
Please see http://www.doorstop.net/resume.shtml

Attachment: pgpmmX0r7hbvH.pgp
Description: PGP signature


Reply to: