VM

IMAP dropping message to crash file, freezing emacs

Bug #285222 reported by Robert Widhopf-Fenk
2
Affects Status Importance Assigned to Milestone
VM
Status tracked in Trunk
Trunk
Fix Released
Medium
Uday Reddy

Bug Description

 affects viewmail
 importance critical

Hi,

I'm having some problems using emacs 23 from CVS, and VM 591 from the
bzr repo.

First, when collecting messages from my work's IMAP server, they
invariably end up in my mail.crash file, then I have to `vm-get-new-
mail' again to recover the messages. Note collecting from a another
pop mailbox works fine.

from my *Messages* buffer:
 Checking for new mail for /home/eschulte/mail/mitre...
 Recovering messages from ~/mail/mitre.crash...
 Added to /home/eschulte/mail/mitre
 Recovering messages from ~/mail/mitre.crash... done

Second, VM continually freezes my emacs, at first I thought this was
because it was collecting mail, so I set `vm-auto-get-new-mail' to
nil, but still VM will burn my CPU and freeze my emacs for 5-20
seconds at a time.

Does anyone have any advice for what may be going wrong, or how I can
generate a more helpful error report?

Thanks -- Eric

Tags: imap
Revision history for this message
Uday Reddy (reddyuday) wrote :

Simple things first. VM "freezing" emacs is probably a result of your mail folders getting too large, and the garbage collection and/or auto-save pauses becoming visible. Reducing the size of mail folders and/or upgrading your hardware will help.

The mail going into the crash box is a hard problem. We need you to do a bit of experimentation. Try different IMAP servers that you might have access to and see if the problem occurs with all of them. If so, try different versions of VM. The latest revision from the 8.0.x branch seems quite stable and the IMAP code there is entirely Kyle's. If this works for you, then we will know that the problem is in the new IMAP code and I can begin to track things. -- Uday

Changed in viewmail:
status: New → Incomplete
status: Incomplete → In Progress
Revision history for this message
mere user (emacs-user) wrote :

I see the same problem of mail ending up in the crash file. this is not accompanied by emacs freezing in my case. I use gnu emacs 23 with the most recent vm 8.1 development version. this does not occur when I use the 8.0.12 version.

Uday Reddy (reddyuday)
Changed in viewmail:
assignee: nobody → Uday Reddy (reddyuday)
Revision history for this message
Uday Reddy (reddyuday) wrote : [Bug 285222] Re: IMAP dropping message to crash file, freezing emacs

Hi, it is very useful to know that it happens only in the 8.1 devo
version. I need to beef up the bug reporting code to track down what
might be happening, and will get back to you about it.

Next time you get this error, can you save the contents of the
*Messages* buffer and send it to me?

Cheers,
Uday

mere user writes:

> I see the same problem of mail ending up in the crash file. this is not
> accompanied by emacs freezing in my case. I use gnu emacs 23 with the
> most recent vm 8.1 development version. this does not occur when I use
> the 8.0.12 version.
>
> --
> IMAP dropping message to crash file, freezing emacs
> https://bugs.launchpad.net/bugs/285222
> You received this bug notification because you are subscribed to View
> Mail (aka VM).
>
> Status in View Mail (aka VM) for Emacs: In Progress
>
> Bug description:
> affects viewmail
> importance critical
>
>
>
> Hi,
>
> I'm having some problems using emacs 23 from CVS, and VM 591 from the
> bzr repo.
>
> First, when collecting messages from my work's IMAP server, they
> invariably end up in my mail.crash file, then I have to `vm-get-new-
> mail' again to recover the messages. Note collecting from a another
> pop mailbox works fine.
>
> from my *Messages* buffer:
> Checking for new mail for /home/eschulte/mail/mitre...
> Recovering messages from ~/mail/mitre.crash...
> Added to /home/eschulte/mail/mitre
> Recovering messages from ~/mail/mitre.crash... done
>
> Second, VM continually freezes my emacs, at first I thought this was
> because it was collecting mail, so I set `vm-auto-get-new-mail' to
> nil, but still VM will burn my CPU and freeze my emacs for 5-20
> seconds at a time.
>
> Does anyone have any advice for what may be going wrong, or how I can
> generate a more helpful error report?
>
> Thanks -- Eric
>
>

Uday Reddy (reddyuday)
Changed in vm:
importance: Undecided → High
assignee: nobody → Uday Reddy (reddyuday)
tags: added: imap
Uday Reddy (reddyuday)
Changed in vm:
status: New → In Progress
Revision history for this message
mere user (emacs-user) wrote :

here is the messages buffer. this happens every single time I use the development version, so it would be easy for me to run additional tests if needed. please note that my mail file is called RMAIL, but it's in mbox format...

Loading vcard...done
Loading vm-vcard...done
Adding vm-rfaddons-option `rf-faces'.
Adding vm-rfaddons-option `attach-save-files'.
Adding vm-rfaddons-option `check-recipients'.
Adding vm-rfaddons-option `check-for-empty-subject'.
Adding vm-rfaddons-option `encode-headers'.
Adding vm-rfaddons-option `open-line'.
Adding vm-rfaddons-option `clean-subject'.
VM-RFADDONS: VM is now infected. Please report bugs to Robert Widhopf-Fenk!
Adding vm-rfaddons-option `check-recipients'.
Adding vm-rfaddons-option `check-for-empty-subject'.
Adding vm-rfaddons-option `encode-headers'.
Adding vm-rfaddons-option `take-action-on-attachment'.
VM-RFADDONS: VM is now infected. Please report bugs to Robert Widhopf-Fenk!
Reading ~/RMAIL... done
Parsing messages... done
Reading attributes... done
3219 messages, 0 new, 0 unread, 0 deleted
u-vm-color: copying Gnus faces... done
Generating summary... 3200
Generating summary markers...
Generating summary... done
3219 messages, 0 new, 0 unread, 0 deleted
Checking for new mail for /Users/me/RMAIL...
Retrieving message 1 (of 3) from <email address hidden> [inbox]...
Retrieving message 1 (of 3) from <email address hidden> [inbox], 0 of 500097 (stalled)... [9 times]
Retrieving message 1 (of 3) from <email address hidden> [inbox]...done
Retrieving message 2 (of 3) from <email address hidden> [inbox]...done
Retrieving message 3 (of 3) from <email address hidden> [inbox]...done
Decoding MIME message...
Filled one paragraph in message 'Thank you for your attentions'!
Nothing to fill!
Decoding MIME message... done
Parsing BBDB... (frobnicating...done)
3219 messages, 0 new, 0 unread, 0 deleted
Expunging...
Deleted messages expunged.
No changes need to be saved
Updating buffer list...
Formats have changed, recompiling...done
Updating buffer list...done

Revision history for this message
Uday Reddy (reddyuday) wrote :

This means that the IMAP client is working fine. It is retrieving the
messages to the crash box (as it should), but VM is not picking them
up from the crash box. But we don't yet know why the problem has been
reported only with IMAP mail.

Tell me how you have set these variables (if you have set them):

vm-primary-inbox
vm-spool-files
vm-spool-file-suffixes
vm-crash-box-suffix

I am assuming that you don't have vm-spool-file-suffixes set. If so,
let us try this experiment.

* Save a few messages to /Users/me/RMAIL-

* Go to your emacs configuration file, comment out the setting for
  vm-spool-files and add this line:

  (setq vm-spool-file-suffixes '("-"))

* Start a new session of Emacs and do M-x vm.

  The expected behaviour is that all the messages you saved in RMAIL-
  should get into your RMAIL as new messages.

* Send me the contents of the *Messages* buffer.

-- This is the end of the experiment.

To get back to normal operation, uncomment the vm-spool-files
setting. Keep the setting of vm-spool-file-suffixes. That should
cure your problem.

Cheers,
Uday

Revision history for this message
mere user (emacs-user) wrote :

here are the values of those variables, I'll try to perform that experiment soon.

vm-primary-inbox is a variable defined in `vm-vars.el'.
Its value is "~/INBOX"

vm-spool-files is a variable defined in `vm-vars.el'.
Its value is
(("~/RMAIL" "imap-ssl:imap.computer.edu:993:inbox:login:me:passwd" "RMAIL-CRASH")
 ("~/.record" "imap-ssl:imap.computer.edu:993:Sent:login:me:passwd" "SENT-CRASH"))

vm-spool-file-suffixes is a variable defined in `vm-vars.el'.
Its value is nil

vm-crash-box-suffix is a variable defined in `vm-vars.el'.
Its value is ".crash"

Revision history for this message
mere user (emacs-user) wrote :

while experimenting with this, I suddenly cannot retrieve messages from the crash files created with the latest vm, even using 8.0.12. strange...

Revision history for this message
Uday Reddy (reddyuday) wrote : [Vm] [Bug 285222] Re: IMAP dropping message to crash file, freezing emacs

mere user writes:

> while experimenting with this, I suddenly cannot retrieve messages from
> the crash files created with the latest vm, even using 8.0.12.
> strange...

Visit the directory in dired or something, and rename all the crash
folders to something else so that you don't lose them. You can always
visit these folders in VM later and save the messages into other
folders.

Reset all your configuration settings to original values and check to
see that you have the original functionality at least.

After you get back to normal, I would like you to set your RMAIL and
.record crash boxes to be consistent with your vm-crash-box-suffix,
i.e., add ".crash" suffix to the folder's name without any other
alterations. Let us see if that fixes your problem.

Cheers,
Uday

Revision history for this message
mere user (emacs-user) wrote : RE: [Bug 285222] Re: IMAP dropping message to crash file, freezing emacs

Hi Uday,

so I did those experiments plus a few similar ones.

I think the problem may be that the crash file is created in ~/Mail/ but vm is then looking for it under ~/
regardless of its extension, when I move the crash file to ~/, vm finds it there.
does this help?
Eli

_________________________________________________________________
Hotmail: Trusted email with Microsoft's powerful SPAM protection.
http://clk.atdmt.com/GBL/go/177141664/direct/01/
http://clk.atdmt.com/GBL/go/177141664/direct/01/

Revision history for this message
Uday Reddy (reddyuday) wrote : [Vm] [Bug 285222] Re: IMAP dropping message to crash file, freezing emacs

mere user writes:

> while experimenting with this, I suddenly cannot retrieve messages from
> the crash files created with the latest vm, even using 8.0.12.
> strange...

Hi Eli, any update on this? Did you manage to get VM working again?

If you can copy the crash files away, and examine them in Emacs as
well as VM, there might be some clues in them as to what might be
going wrong.

As a general rule, even if some incoming mail goes to crash box, it
should get processed if you run vm-get-new-mail again. There should
be no need to switch to a different version of VM to process the crash
box. Please let me know if you are able to get the crash box messages
in this way in the devo version.

Cheers,
Uday

Revision history for this message
Uday Reddy (reddyuday) wrote : RE: [Bug 285222] Re: IMAP dropping message to crash file, freezing emacs

mere user writes:

> I think the problem may be that the crash file is created in ~/Mail/ but vm
> is then looking for it under ~/
> regardless of its extension, when I move the crash file to ~/, vm finds it
> there.
> does this help?

Thanks, Eli. I think that must be the problem. In your
vm-spool-files setting, you didn't give the full path name for the
crash box. If you give the full path name, you should be fine.

I am downgrading the bug report now. Please get back to us if this
doesn't cure the problem.

Cheeers,
Uday

Changed in viewmail:
status: In Progress → Incomplete
Changed in vm:
status: In Progress → Incomplete
importance: High → Low
Revision history for this message
mere user (emacs-user) wrote :

Hi Uday, indeed, this is great progress, and the documentation is very clear about the need to specifying a full path. sorry for not noticing this!

things are nearly perfect now, but I think there may still be a problem. when I set the crash box address using the full path and read mail, the mail still is left in the crash box rather than being read into the main box and presented by vm. however, the good news is that when I press g in the vm buffer (that is, call vm-get-new-mail again), the crash box is now read and moved over.

this is good enough for me to be able to use the development version, but perhaps there is still a minor bug there?

cheers,

Uday Reddy (reddyuday)
Changed in vm:
status: Incomplete → Confirmed
importance: Low → Medium
Revision history for this message
Uday Reddy (reddyuday) wrote : [Bug 285222] Re: IMAP dropping message to crash file, freezing emacs

mere user writes:

> this is good enough for me to be able to use the development version,
> but perhaps there is still a minor bug there?

Yes, I think that was what the original bug report by Eric was about.
Do you see the "Recovering..." messages like him in your *Messages*
buffer?

Cheers,
Uday

Revision history for this message
mere user (emacs-user) wrote :

yes, here it is.

3258 messages, 0 new, 0 unread, 0 deleted [2 times]
Checking for new mail for /Users/me/RMAIL...
Retrieving message 1 (of 1) from <email address hidden> [inbox]...done
Decoding MIME message...
Nothing to fill! [2 times]
Decoding MIME message... done
3258 messages, 0 new, 0 unread, 0 deleted
Checking for new mail for /Users/me/RMAIL...
Recovering messages from ~/RMAIL-CRASH...
Added to /Users/me/RMAIL
Recovering messages from ~/RMAIL-CRASH... done
3259 messages, 1 new, 0 unread, 0 deleted
End of message 3259 to Me
3259 messages, 1 new, 0 unread, 0 deleted

Revision history for this message
Uday Reddy (reddyuday) wrote :

I have uploaded the fix as revision 614. The problem turns out to have been a misplaced parenthesis. Kind of silly! I also made the crash box path treatment uniform so that VM doesn't get confused if you don't specify the full path. Enjoy!

Cheers,
Uday

Changed in vm:
status: Confirmed → Fix Committed
Changed in viewmail:
status: Incomplete → Fix Committed
Revision history for this message
mere user (emacs-user) wrote :

indeed fixed! wonderful, am totally grateful, cheers.

Uday Reddy (reddyuday)
Changed in viewmail:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.