v2.2.19 release candidate released

Timo Sirainen tss at iki.fi
Wed Sep 23 22:07:22 UTC 2015


> On 23 Sep 2015, at 18:26, Marcin Mirosław <marcin at 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. :)



More information about the dovecot mailing list