<<< Date Index >>>     <<< Thread Index >>>

Re: vanishing messages and shaky connexions



Thus spake Kyle Wheeler [03/28/07 @ 12.27.10 -0600]:
> On Wednesday, March 28 at 12:51 PM, quoth Greg Novack:
> > Sometimes when I'm checking my email over my modem connexion, or on 
> > wireless in a coffee shop with a really shaky router, the connexion 
> > will cut out on me while I'm in the middle of dowloading (IMAP) a 
> > mail message to read (in Mutt 1.5.12).  Mutt itself hangs, and all I 
> > can do is CTRL-Z.  OK fine, no big deal ... but when I log in again 
> > and try to read that message, I can't get it.  Specifically, Mutt 
> > tells me that it's of size 0K, and there is nothing in the body at 
> > all.
> 
> Ahh, yes, I've run into this before too, though my problem is usually 
> the result of beginning to download a giant multi-megabyte message and 
> then changing my mind and killing mutt to stop the download. What 
> happens in both cases, however, is the same. Mutt is dutifully 
> attempting to cache that message. Unfortunately, if it doesn't get 
> much of the message (say, none of it), it still creates the cache file 
> (it probably shouldn't). The cache file contains exactly what mutt 
> knew about the contents of the message at the time mutt died, which is 
> to say, nada. When you launch mutt again, however, mutt looks at its 
> cache and thinks "aha! I know what this message contains! nothing at 
> all!". Your message on the server is perfectly safe, it's just that 
> mutt thinks it has a local copy and therefore doesn't have to check 
> with the server for that message. Note that if mutt asks the SERVER 
> for info about that message (which it will do occasionally), the 
> server will tell it the truth, and mutt will think "ok, that message 
> is x bytes", but as soon as it's time to read the *body* of the 
> message, mutt trusts its cache over the server (idiotic, eh?).
> 
> The fix is simple: find and delete that cache file. It should be 
> pretty easy, too:
> 
>      find /path/to/cache -type f -empty -exec rm {} \;
> 
> If that doesn't work (say, if the cached message has one or two bytes 
> in it), then just delete everything in mutt's cache.
> 
> ~Kyle
> -- 
> One of the penalties for refusing to participate in politics is that 
> you end up being governed by your inferiors.
>                                                                -- Plato

This explains the solution I discovered just before receiving this reply.  Just 
hit `C' to copy the message in question, and try to read the copy.  Everything 
works perfectly on the copy.  I guess then that Mutt doesn't think it has a 
local copy of the copy in its cache, hence no problem.  Hitting `C' is far 
easier, for me, than typing the shell kung-fu (as I only understand the very 
basics of bash).

Many thanks,
GMN