Hi,

with the latest dovecot-ee version (2.2.25.4 (5cb7c97)) if I run “doveadm quota recalc -u ales...@skye.it” dovecot return a “Segmentation fault” (but the quota is update fine). Since dovecot version 2.2.24.3 (55cdc32) works fine.

This is my quota backends configuration:

plugin {
  quota = maildir:UserQuota
  quota2 = dict:Quota Usage::noenforcing:proxy::sqlquota
}
dict {
  sqlquota = mysql:/etc/dovecot/dovecot-dict-sql.conf.ext
}

I found that if I comment the line “quota2 = dict:…” doveadm quota recalc works fine. I have two quota backends because with dict I can store everybody's current quota usage in a SQL database for fast retrieving (like quota_clone plugin but I cannot switch to it immediately).

The backtrace:

# gdb --args doveadm quota recalc -u ales...@skye.it
GNU gdb (GDB) Red Hat Enterprise Linux (7.2-90.el6)
Copyright (C) 2010 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-redhat-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/bin/doveadm...Reading symbols from /usr/lib/debug/usr/bin/doveadm.debug...done.
done.

(gdb) run
Starting program: /usr/bin/doveadm quota recalc -u ales...@skye.it
[Thread debugging using libthread_db enabled]

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff73ed245 in io_loop_handler_run (ioloop=0x1006b1930) at ioloop.c:612
612             io_loop_handler_run_internal(ioloop);
Missing separate debuginfos, use: debuginfo-install bzip2-libs-1.0.5-7.el6_0.x86_64 cyrus-sasl-lib-2.1.23-15.el6_6.2.x86_64 dovecot-ee-pigeonhole-2.2.25.4-4.x86_64 glibc-2.12-1.192.el6.x86_64 nspr-4.11.0-1.el6.x86_64 nss-3.21.0-8.el6.x86_64 nss-softokn-freebl-3.14.3-23.3.el6_8.x86_64 nss-util-3.21.0-2.el6.x86_64 openldap-2.4.40-12.el6.x86_64 zlib-1.2.3-29.el6.x86_64
(gdb) bt full
#0 0x00007ffff73ed245 in io_loop_handler_run (ioloop=0x1006b1930) at ioloop.c:612
No locals.
#1  0x00007ffff73ed3e8 in io_loop_run (ioloop=0x6b1930) at ioloop.c:588
        __FUNCTION__ = "io_loop_run"
#2 0x00007ffff73ac45c in client_dict_wait (_dict=0x6b15f0) at dict-client.c:653
        dict = 0x6b15f0
#3 0x00007ffff636f85f in dict_quota_deinit (_root=<value optimized out>) at quota-dict.c:106
        root = 0x6b12f0
        __FUNCTION__ = "dict_quota_deinit"
#4 0x00007ffff636d326 in quota_root_deinit (root=0x6b12f0) at quota.c:279
        pool = 0x6b1400
#5  0x00007ffff636d381 in quota_deinit (_quota=0x6aeae8) at quota.c:389
        quota = 0x6ac0b0
        roots = <value optimized out>
        i = <value optimized out>
        count = 2
#6 0x00007ffff637240d in quota_user_deinit (user=0x6ac7b0) at quota-storage.c:538
        quser = 0x6aead8
        quota_set = 0x6b07c0
#7 0x00007ffff76a9b52 in mail_user_unref (_user=<value optimized out>) at mail-user.c:174
        user = 0x6ac7b0
        __FUNCTION__ = "mail_user_unref"
#8 0x00000000004216b4 in doveadm_mail_next_user (ctx=0x69bbe0, cctx=<value optimized out>, error_r=0x7fffffffe1c0)
    at doveadm-mail.c:403
input = {module = 0x0, service = 0x4569d9 "doveadm", username = 0x681288 "ales...@skye.it", session_id = 0x0, session_id_prefix = 0x0, local_ip = {family = 0, u = {ip6 = {__in6_u = {__u6_addr8 = '\000' <repeats 15 times>, __u6_addr16 = {0, 0, 0, 0, 0, 0, 0, 0}, __u6_addr32 = {0, 0, 0, 0}}}, ip4 = {s_addr = 0}}}, remote_ip = { family = 0, u = {ip6 = {__in6_u = {__u6_addr8 = '\000' <repeats 15 times>, __u6_addr16 = {0, 0, 0, 0, 0, 0, 0, 0}, __u6_addr32 = {0, 0, 0, 0}}}, ip4 = {s_addr = 0}}}, local_port = 0, remote_port = 0, userdb_fields = 0x0, flags_override_add = 0, flags_override_remove = 0, no_userdb_lookup = 0, debug = 0}
        error = <value optimized out>
        ip = <value optimized out>
        ret = <value optimized out>
        __FUNCTION__ = "doveadm_mail_next_user"
#9 0x00000000004218dc in doveadm_mail_cmd_exec (ctx=0x69bbe0, cctx=0x7fffffffe400, wildcard_user=0x0) at doveadm-mail.c:592
        ret = <value optimized out>
        error = <value optimized out>
#10 0x0000000000422c7d in doveadm_cmd_ver2_to_mail_cmd_wrapper (cctx=0x7fffffffe400) at doveadm-mail.c:1053
        mctx = 0x69bbe0
        wildcard_user = <value optimized out>
        fieldstr = 0x456c52 "-u"
        i = <value optimized out>
---Type <return> to continue, or q <return> to quit---
mail_cmd = {alloc = 0x7ffff573fba0 <cmd_quota_recalc_alloc>, name = 0x7ffff573ffc5 "quota recalc",
          usage_args = 0x7ffff573ff7f ""}
        args_pos = <value optimized out>
#11 0x00000000004303b6 in doveadm_cmd_run_ver2 (argc=3, argv=0x6883a0, cctx=0x7fffffffe400) at doveadm-cmd.c:523
        param = <value optimized out>
pargv = {arr = {buffer = 0x680a28, element_size = 104}, v = 0x680a28, v_modifiable = 0x680a28}
        pargc = <value optimized out>
        c = <value optimized out>
        li = 32767
        pool = 0x680858
        optbuf = 0x680870
        __FUNCTION__ = "doveadm_cmd_run_ver2"
#12 0x0000000000430467 in doveadm_cmd_try_run_ver2 (cmd_name=<value optimized out>, argc=3, argv=0x6883a0, cctx=0x7fffffffe400)
    at doveadm-cmd.c:446
        cmd = <value optimized out>
#13 0x0000000000432bdc in main (argc=4, argv=0x688398) at doveadm.c:379
cctx = {cmd = 0x69abf8, argc = 4, argv = 0x680a60, username = 0x681288 "ales...@skye.it", cli = true, tcp_server = false, local_ip = {family = 0, u = {ip6 = {__in6_u = {__u6_addr8 = '\000' <repeats 15 times>, __u6_addr16 = {0, 0, 0, 0, 0, 0, 0, 0}, __u6_addr32 = {0, 0, 0, 0}}}, ip4 = {s_addr = 0}}}, remote_ip = {family = 0, u = {ip6 = {__in6_u = { __u6_addr8 = '\000' <repeats 15 times>, __u6_addr16 = {0, 0, 0, 0, 0, 0, 0, 0}, __u6_addr32 = {0, 0, 0, 0}}}, ip4 = {s_addr = 0}}}, local_port = 0, remote_port = 0, conn = 0x0}
        cmd_name = <value optimized out>
        quick_init = false
        c = <value optimized out>
(gdb)

I hope can be fixed.
Thanks
--
Alessio Cecchi
Postmaster AT http://www.qboxmail.it
http://www.linkedin.com/in/alessice

Reply via email to