Hi, Sunday, September 2, 2007, 20:24:04, you wrote: > 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 > I am running Dovecot 1.0.3 (compiled from sources) on Suse 9.3.
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: > (gdb) break index-storage.c:452 > Breakpoint 1 at 0x807eec7: file index-storage.c, line 452. > (gdb) continue > Continuing. > > Breakpoint 1, index_storage_get_last_error (storage=0x80cca90, > syntax_error_r=0x0, temporary_error_r=0xbffff8ef) > at index-storage.c:452 > 452 *temporary_error_r = TRUE; > (gdb) bt full > #0 index_storage_get_last_error (storage=0x80cca90, syntax_error_r=0x0, > temporary_error_r=0xbffff8ef) > at index-storage.c:452 > No locals. > #1 0x08097765 in mail_storage_get_last_error (storage=0x0, > syntax_error_r=0xbffff8ee, temporary_error_r=0xbffff8ef) > at mail-storage.c:345 > No locals. > #2 0x080573b1 in cmd_fetch_finish (ctx=<value optimized out>) at > cmd-fetch.c:90 > storage = (struct mail_storage *) 0x80cca90 > error = <value optimized out> > syntax = false > temporary_error = 8 > cmd = (struct client_command_context *) 0x80ccdbc > ok_message = 0x80b395b "OK Fetch completed." > #3 0x08057623 in cmd_fetch (cmd=0x80ccdbc) at cmd-fetch.c:173 > client = (struct client *) 0x80ccd78 > ctx = (struct imap_fetch_context *) 0x80cf010 > args = <value optimized out> > search_arg = (struct mail_search_arg *) 0x80cefd8 > messageset = <value optimized out> > ret = <value optimized out> > #4 0x0805a0de in cmd_uid (cmd=0x80ccdbc) at cmd-uid.c:19 > cmd_name = 0x80cd078 "FETCH" > #5 0x0805a616 in client_handle_input (cmd=0x80ccdbc) at client.c:335 > client = (struct client *) 0x80ccd78 > #6 0x0805a73a in client_handle_input (cmd=0x80ccdbc) at client.c:389 > client = (struct client *) 0x80ccd78 > #7 0x0805ac4c in _client_input (context=0x80ccd78) at client.c:432 > client = (struct client *) 0x80ccd78 > cmd = (struct client_command_context *) 0x80ccdbc > ret = 2 > #8 0x080aa441 in io_loop_handler_run (ioloop=0x80cb9b0) at ioloop-epoll.c:203 > ctx = (struct ioloop_handler_context *) 0x80cb9d8 > list = (struct io_list *) 0x80ccf48 > io = (struct io *) 0x80ccf28 > tv = {tv_sec = 0, tv_usec = 927459} > events_count = 4 > t_id = 2 > msecs = <value optimized out> > ret = 1 > i = 0 > j = 0 > call = <value optimized out> > #9 0x080a9889 in io_loop_run (ioloop=0x80cb9b0) at ioloop.c:329 > No locals. > #10 0x08062087 in main (argc=1, argv=0xbffffaf4, envp=0xbffffafc) at > main.c:290 > plugin_dir = <value optimized out> 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:[EMAIL PROTECTED]