hallo,
dovecot log entries: Jun 23 23:19:10 mx dovecot: dict: Panic: file driver-pgsql.c: line 84 (driver_pgsql_set_state): assertion failed: (state == SQL_DB_STATE_BUSY || db-
cur_result == NULL)
This is clearly a bug, but I don't really see why it's happening. It would be helpful if you could get a gdb backtrace: http://dovecot.org/bugreport.html
at all, i got 4 core dump files.
Jul 3 15:16:57 mx dovecot: dict: Fatal: master: service(dict): child 11902 killed with signal 6 (core dumped) :qJul 3 15:22:59 mx dovecot: dict: Panic: file driver-pgsql.c: line 84 (driver_pgsql_set_state): assertion failed: (state == SQL_DB_STATE_BUSY || db->cur_result == NULL) Jul 3 15:22:59 mx dovecot: dict: Error: Raw backtrace: /usr/local/dovecot-2.1.7/lib/dovecot/libdovecot.so.0(+0x4478a) [0x7f6ab8f1078a] -> /usr/local/dovecot-2.1.7/lib/dovecot/libdovecot.so.0(+0x447d6) [0x7f6ab8f107d6] -> /usr/local/dovecot-2.1.7/lib/dovecot/libdovecot.so.0(i_error+0) [0x7f6ab8ee75ef] -> dovecot/dict() [0x40a9a6] -> dovecot/dict() [0x40aa01] -> dovecot/dict() [0x40be43] -> dovecot/dict() [0x409474] -> dovecot/dict(sql_db_cache_deinit+0x20) [0x4089d0] -> dovecot/dict(main+0x169) [0x4059f9] -> /lib/libc.so.6(__libc_start_main+0xfd) [0x7f6ab8960c8d] -> dovecot/dict() [0x404b59] Jul 3 15:22:59 mx dovecot: dict: Panic: file driver-pgsql.c: line 84 (driver_pgsql_set_state): assertion failed: (state == SQL_DB_STATE_BUSY || db->cur_result == NULL) Jul 3 15:22:59 mx dovecot: dict: Error: Raw backtrace: /usr/local/dovecot-2.1.7/lib/dovecot/libdovecot.so.0(+0x4478a) [0x7f2d4160c78a] -> /usr/local/dovecot-2.1.7/lib/dovecot/libdovecot.so.0(+0x447d6) [0x7f2d4160c7d6] -> /usr/local/dovecot-2.1.7/lib/dovecot/libdovecot.so.0(i_error+0) [0x7f2d415e35ef] -> dovecot/dict() [0x40a9a6] -> dovecot/dict() [0x40aa01] -> dovecot/dict() [0x40be43] -> dovecot/dict() [0x409474] -> dovecot/dict(sql_db_cache_deinit+0x20) [0x4089d0] -> dovecot/dict(main+0x169) [0x4059f9] -> /lib/libc.so.6(__libc_start_main+0xfd) [0x7f2d4105cc8d] -> dovecot/dict() [0x404b59] Jul 3 15:22:59 mx dovecot: dict: Panic: file driver-pgsql.c: line 84 (driver_pgsql_set_state): assertion failed: (state == SQL_DB_STATE_BUSY || db->cur_result == NULL) Jul 3 15:22:59 mx dovecot: dict: Error: Raw backtrace: /usr/local/dovecot-2.1.7/lib/dovecot/libdovecot.so.0(+0x4478a) [0x7fca2e05c78a] -> /usr/local/dovecot-2.1.7/lib/dovecot/libdovecot.so.0(+0x447d6) [0x7fca2e05c7d6] -> /usr/local/dovecot-2.1.7/lib/dovecot/libdovecot.so.0(i_error+0) [0x7fca2e0335ef] -> dovecot/dict() [0x40a9a6] -> dovecot/dict() [0x40aa01] -> dovecot/dict() [0x40be43] -> dovecot/dict() [0x409474] -> dovecot/dict(sql_db_cache_deinit+0x20) [0x4089d0] -> dovecot/dict(main+0x169) [0x4059f9] -> /lib/libc.so.6(__libc_start_main+0xfd) [0x7fca2daacc8d] -> dovecot/dict() [0x404b59] Jul 3 15:22:59 mx dovecot: dict: Fatal: master: service(dict): child 12033 killed with signal 6 (core dumped) Jul 3 15:22:59 mx dovecot: dict: Fatal: master: service(dict): child 12340 killed with signal 6 (core dumped) Jul 3 15:22:59 mx dovecot: dict: Fatal: master: service(dict): child 11847 killed with signal 6 (core dumped)
i will give you the gdb backtrace from the first dump:
gdb /usr/local/dovecot-2.1.7/libexec/dovecot/dict core.dict.11902 GNU gdb (GDB) 7.0.1-debian Copyright (C) 2009 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-linux-gnu". For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>... Reading symbols from /usr/local/dovecot-2.1.7/libexec/dovecot/dict...done. Reading symbols from /usr/local/dovecot-2.1.7/lib/dovecot/libdovecot.so.0...done. Loaded symbols for /usr/local/dovecot-2.1.7/lib/dovecot/libdovecot.so.0 Reading symbols from /usr/lib/libpq.so.5...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libpq.so.5 Reading symbols from /lib/libc.so.6...(no debugging symbols found)...done. Loaded symbols for /lib/libc.so.6 Reading symbols from /lib/libdl.so.2...(no debugging symbols found)...done. Loaded symbols for /lib/libdl.so.2 Reading symbols from /lib/librt.so.1...(no debugging symbols found)...done. Loaded symbols for /lib/librt.so.1 Reading symbols from /usr/lib/libssl.so.0.9.8...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libssl.so.0.9.8 Reading symbols from /usr/lib/libcrypto.so.0.9.8...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libcrypto.so.0.9.8 Reading symbols from /usr/lib/libkrb5.so.3...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libkrb5.so.3 Reading symbols from /lib/libcom_err.so.2...(no debugging symbols found)...done. Loaded symbols for /lib/libcom_err.so.2 Reading symbols from /usr/lib/libgssapi_krb5.so.2...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libgssapi_krb5.so.2 Reading symbols from /lib/libcrypt.so.1...(no debugging symbols found)...done. Loaded symbols for /lib/libcrypt.so.1 Reading symbols from /usr/lib/libldap_r-2.4.so.2...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libldap_r-2.4.so.2 Reading symbols from /lib/libpthread.so.0...(no debugging symbols found)...done. Loaded symbols for /lib/libpthread.so.0 Reading symbols from /lib64/ld-linux-x86-64.so.2...(no debugging symbols found)...done. Loaded symbols for /lib64/ld-linux-x86-64.so.2 Reading symbols from /usr/lib/libz.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libz.so.1 Reading symbols from /usr/lib/libk5crypto.so.3...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libk5crypto.so.3 Reading symbols from /usr/lib/libkrb5support.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libkrb5support.so.0 Reading symbols from /lib/libkeyutils.so.1...(no debugging symbols found)...done. Loaded symbols for /lib/libkeyutils.so.1 Reading symbols from /lib/libresolv.so.2...(no debugging symbols found)...done. Loaded symbols for /lib/libresolv.so.2 Reading symbols from /usr/lib/liblber-2.4.so.2...(no debugging symbols found)...done. Loaded symbols for /usr/lib/liblber-2.4.so.2 Reading symbols from /usr/lib/libsasl2.so.2...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libsasl2.so.2 Reading symbols from /usr/lib/libgnutls.so.26...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libgnutls.so.26 Reading symbols from /usr/lib/libtasn1.so.3...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libtasn1.so.3 Reading symbols from /usr/lib/libgcrypt.so.11...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libgcrypt.so.11 Reading symbols from /usr/lib/libgpg-error.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libgpg-error.so.0 Reading symbols from /lib/libgcc_s.so.1...(no debugging symbols found)...done. Loaded symbols for /lib/libgcc_s.so.1 Core was generated by `dovecot/dict'. Program terminated with signal 6, Aborted. #0 0x00007ffc1f3da1b5 in raise () from /lib/libc.so.6 (gdb) bt full #0 0x00007ffc1f3da1b5 in raise () from /lib/libc.so.6 No symbol table info available. #1 0x00007ffc1f3dcfc0 in abort () from /lib/libc.so.6 No symbol table info available. #2 0x00007ffc1f97679d in default_fatal_finish (type=<value optimized out>, status=0) at failures.c:191 backtrace = 0x1b10110 "/usr/local/dovecot-2.1.7/lib/dovecot/libdovecot.so.0(+0x4478a) [0x7ffc1f97678a] -> /usr/local/dovecot-2.1.7/lib/dovecot/libdovecot.so.0(+0x447d6) [0x7ffc1f9767d6] -> /usr/local/dovecot-2.1.7/lib/dovec"... #3 0x00007ffc1f9767d6 in i_internal_fatal_handler (ctx=0x7fff25ea55c0, format=<value optimized out>, args=<value optimized out>) at failures.c:649 status = 0 #4 0x00007ffc1f94d5ef in i_panic (format=0x2e7e <Address 0x2e7e out of bounds>) at failures.c:263 ctx = {type = LOG_TYPE_PANIC, exit_status = 0, timestamp = 0x0} args = {{gp_offset = 40, fp_offset = 48, overflow_arg_area = 0x7fff25ea5690, reg_save_area = 0x7fff25ea55d0}} #5 0x000000000040a9a6 in driver_pgsql_set_state (db=0x1b22280, state=<value optimized out>) at driver-pgsql.c:84 __FUNCTION__ = "driver_pgsql_set_state" #6 0x000000000040aa01 in driver_pgsql_close (db=0x1b22280) at driver-pgsql.c:116 No locals. #7 0x000000000040be43 in driver_pgsql_deinit_v (_db=0x1b22280) at driver-pgsql.c:263 No locals. #8 0x0000000000409474 in driver_sqlpool_deinit (_db=0x1b21ee0) at driver-sqlpool.c:504 conn_end = 0x1b221a0 host = <value optimized out> conn = 0x1b22180 __FUNCTION__ = "driver_sqlpool_deinit" #9 0x00000000004089d0 in sql_db_cache_deinit (_cache=<value optimized out>) at sql-db-cache.c:142 cache = 0x1b1e460 #10 0x00000000004059f9 in main_deinit (argc=1, argv=0x1b183a0) at main.c:72 No locals. #11 main (argc=1, argv=0x1b183a0) at main.c:104 set_roots = {0x40c640, 0x0} error = 0x0 (gdb) quit
Thank you for having a look.
bw Christoph
-- e: ckubu@so36.net