W dniu 24.09.2015 o 00:07, Timo Sirainen pisze:
On 23 Sep 2015, at 18:26, Marcin Mirosław <marcin@mejor.pl> wrote:
W dniu 23.09.2015 o 15:30, Timo Sirainen pisze:
http://dovecot.org/releases/2.2/rc/dovecot-2.2.19.rc1.tar.gz http://dovecot.org/releases/2.2/rc/dovecot-2.2.19.rc1.tar.gz.sig
A lot of changes since v2.2.18, so here's a release candidate first. If no bugs are reported, I'm planning on making the final release sometimes this week. The most interesting new features here are the imap-hibernate process, quota count backend and director/proxy improvements.
Hi! I'm seeing: Sep 23 17:23:43 mail dovecot: dict: Panic: file driver-pgsql.c: line 463 (do_query): assertion failed: (SQL_DB_IS_READY(&db->api)) Sep 23 17:23:43 mail dovecot: dict: Fatal: master: service(dict): child 23430 killed with signal 6 (core dumped) Sep 23 17:23:43 mail dovecot: dict: Panic: file driver-pgsql.c: line 463 (do_query): assertion failed: (SQL_DB_IS_READY(&db->api)) Sep 23 17:23:43 mail dovecot: dict: Fatal: master: service(dict): child 23321 killed with signal 6 (core dumped)
It's because dict-sql started actually doing an asynchronous commits now, which were broken with pgsql. These should fix it:
http://hg.dovecot.org/dovecot-2.2/rev/59e4fcaa0f76 http://hg.dovecot.org/dovecot-2.2/rev/9ceeb1a5c492 http://hg.dovecot.org/dovecot-2.2/rev/beb3b8496b7d
I think this also means that you could have only a couple of dict processes, since all the queries should now be done asynchronously. So if you had for example:
quota = dict:User quota::proxy::sqlquota
you could now have:
quota = dict:User quota::proxy:dict-async:sqlquota
You'd also probably need to change the service dict-async { unix_listener dict-async { permissions } }.
Then again, it might not work. I haven't really tested this case. :)
I didn't try to use dict-async yet. Those three patches solves problem with throwing core by dovecot-dict.
Thank you, Marcin