[Dovecot] Dovecot auth process delays exiting if LDAPS passdb used

SATOH Fumiyasu fumiyas at osstech.jp
Wed May 23 19:13:41 EEST 2012


Hi,

At Thu, 24 May 2012 01:01:25 +0900,
SATOH Fumiyasu wrote:
> If Dovecot passdb is configured with LDAP (no TLS/SSL),
> it is no problem. But if Dovecot passdb is configured with
> LDAPS (or LDAP+TLS), Dovecot auth process has a problem
> that Dovecot auth delays exiting about between 20 and
> 60 seconds when Dovecot dovecot (master) process is already
> terminated by an administrator.
> 
> Is this known problem?

GDB backtrace in Dovecot auth process on Debian GNU/Linux:

(gdb) bt full
#0  0x00007fa725c59f43 in __epoll_wait_nocancel ()
    at ../sysdeps/unix/syscall-template.S:82
No locals.
#1  0x00007fa7267a6db7 in io_loop_handler_run (ioloop=0x17686d0) at ioloop-epoll.c:181
        ctx = 0x1770350
        events = 0xfffffffffffffffc
        event = 0x7530
        list = <optimized out>
        io = <optimized out>
        tv = {tv_sec = 29, tv_usec = 999374}
        msecs = 30000
        ret = <optimized out>
        i = <optimized out>
        j = <optimized out>
        call = <optimized out>
#2  0x00007fa7267a5cc9 in io_loop_run (ioloop=0x17686d0) at ioloop.c:398
No locals.
#3  0x00007fa7267938ff in master_service_run (service=0x1768580, callback=<optimized out>)
    at master-service.c:544
No locals.
#4  0x0000000000418517 in main (argc=1, argv=0x1768370) at main.c:373
        c = <optimized out>

DBX backtrace in Dovecot auth process on Solaris 10:

(dbx) where
  [1] __pollsys(0x80bc3c8, 0x4, 0x8047cd8, 0x0), at 0xfed75a15
  [2] _pollsys(0x80bc3c8, 0x4, 0x8047cd8, 0x0), at 0xfed69fc8
  [3] _poll(0x80bc3c8, 0x4, 0x7530), at 0xfed1e95a
=>[4] io_loop_handler_run(ioloop = ???) (optimized), at 0xfef59294 (line ~166) in "ioloop-poll.c"
  [5] io_loop_run(ioloop = ???) (optimized), at 0xfef586cf (line ~398) in "ioloop.c"
  [6] master_service_run(service = ???, callback = ???) (optimized), at 0xfef42e03 (line ~544) in "master-service.c"
  [7] main(argc = ???, argv = ???) (optimized), at 0x8077d9b (line ~374) in "main.c"

Thanks.

-- 
-- Name: SATOH Fumiyasu (fumiyas @ osstech co jp)
-- Business Home: http://www.OSSTech.co.jp/
-- Personal Home: http://www.SFO.jp/blog/

> On AIX, this problem prevents restart Dovecot service by
> the following error:
> 
> May 24 00:42:03 build-aix6 mail:warn|warning dovecot: master: Warning: Killed with signal 15 (by pid=11337890 uid=0 code=kill)
> May 24 00:42:10 build-aix6 mail:err|error dovecot: master: Error: service(auth): Socket already exists: /opt/osstech/var/run/dovecot/auth-login
> May 24 00:42:11 build-aix6 mail:crit dovecot: master: Fatal: Failed to start listeners
> 
> My Dovecot 2.1.6 platforms are:
> 
>   * Debian GNU/Linux wheezy + OpenLDAP 2.4.28 (linked with GNU TLS 2.12.18)
>   * Solaris 10 + OpenLDAP 2.4.26 (linked with OpenSSL 0.9.7)
>   * AIX 6.1 + OpenLDAP 2.4.31 (linked with OpenSSL 1.0.0)
>   * AIX 7.1 + OpenLDAP 2.4.28 (linked with OpenSSL 1.0.0)
> 
> Because I see the problem on the all of above, there is a
> bug in Dovecot 2.1.6, I think.



More information about the dovecot mailing list