[Dovecot] IMAP: Disconnected: BUG: Unknown internal error (Dovecot 1.0.3)
Hi,
I am getting the following error in the server mail logfile:
Sep 2 18:39:44 h648123 dovecot: IMAP(<account>)(<PID>): Disconnected: BUG: Unknown internal error
(mail_debug is on, but there is not really much context for this in the log file, ie. no log events for several minutes, and then it appears, all of a sudden).
On the client side, it looks like this (with some context in case it matters; no exact times though, sorry):
It occurs relatively often (several times a day), under no specific conditions (sometimes it is hours after the session was started, sometimes it is at the beginning -- really, nothing regular here). The client connection is simply closed.
I am not getting a core dump for this; I am not sure whether I am supposed to. I configured Dovecot according to the instructions at http://www.dovecot.org/bugreport.html and core dumps generally work on my system, eg. I can force one using 'kill -s SIGSEGV <PID>' (where <PID> is a PID of one of the imap processes).
What do I do with it?
I am running Dovecot 1.0.3 (compiled from sources) on Suse 9.3. The client is The Bat! 3.99.x Professional. Client is allowed to open several concurrent connections to the IMAP server.
Server config ('dovecot -n -c /etc/dovecot/dovecot.conf'):
-- Best regards, Robert Tomanek mailto:rth23@poczta.onet.pl
Hi,
Sunday, September 2, 2007, 20:24:04, you wrote:
I did one more thing: using gdb I attached to all 'imap' processes and set a breakpoint at the only place in the code where "Unknown internal error" appears (that is 'index_storage_get_last_error' in lib-storage/index/index-storage.c) in order to get backtrace for it (which may or may not help). See for yourselves:
Any thoughts here?
One more piece of info that might (?) be interesting -- I have just run a grep on historical logs and it seems the bug never occured on previous versions of Dovecot I had been running in the past (first it was stock Suse 9.3 Dovecot 0.99.14, then a self-compiled 1.0.rc27).
The only difference (apart from the actual source code, of course) between 1.0.rc27 and the current 1.0.3 that might play any role are the configure flags:
- 1.0.rc27: ./configure --with-pam
- 1.0.3 : ./configure --with-ioloop=best --with-ldap --with-sql --with-mysql --with-pam This resulted in using epoll() for 1.0.3 and poll() for 1.0.rc27; both versions are using dnotify.
BTW, 'uname -a' returns: Linux h648123 2.6.11.4-21.9-default #1 Fri Aug 19 11:58:59 UTC 2005 i686 athlon i386 GNU/Linux
-- Best regards, Robert Tomanek mailto:rth23@poczta.onet.pl
Hi,
Monday, September 3, 2007, 23:16:07, you wrote:
OK, I am now positive this has nothing to do with epoll() vs. poll() (which was unlikely anyway but I wanted to test it just in case).
I have just compiled 1.0.5 with poll() -- which means that its config and compilation options are pretty much the same as with the previous versions -- and the bug occurs again, just as it did with 1.0.3/epoll().
Looking at the backtrace and the code, it seems imap_fetch_deinit() is failing.
-- Best regards, Robert Tomanek mailto:rth23@poczta.onet.pl
On Sun, 2007-09-02 at 20:24 +0200, Robert Tomanek wrote:
C: U00331 UID FETCH 18238 (INTERNALDATE FLAGS RFC822.HEADER) S: * BYE BUG: Unknown internal error
This should fix it: http://hg.dovecot.org/dovecot-1.0/rev/a3300666c111
Hello Timo,
Saturday, September 22, 2007, 16:23:57, you wrote:
This should fix it: http://hg.dovecot.org/dovecot-1.0/rev/a3300666c111
Running a patched version of 1.0.5 since yesterday, so far so good...
Thanks!
-- Best regards, Robert Tomanek mailto:rth23@poczta.onet.pl
participants (2)
-
Robert Tomanek
-
Timo Sirainen