[Dovecot] dovecotadm error
When I use the following command: doveadm expunge -A mailbox Junk savedbefore 28d
I get: doveadm(root): Error: User listing returned failure
In the mail log file it says: dovecot: auth-worker(18549): Error: sql: Iterate query failed: Table 'system.users' doesn't exist (using built-in default iterate_query: SELECT username, domain FROM users)
However this is setup:
dovecot-sql.conf: iterate_query = SELECT username AS user FROM accounts
though I have had to comment the following from dovecot.conf: #iteratedb { # args = /usr/local/etc/dovecot/dovecot-sql.conf # driver = sql #} because it errors on dovecot start up.
I have already spent a bit of time on the Dovecot website and Google trying to find an answer. I want to get the expires plugin working.
Any leads please?
dovecot -n
# 2.1.9: /usr/local/etc/dovecot/dovecot.conf # OS: Linux 2.6.29.6-rt24-smp i686 Slackware 13.1.0 auth_master_user_separator = * auth_mechanisms = plain login dict { expire = mysql:/usr/local/etc/dovecot/dovecot-dict-expire.conf quotadict = mysql:/usr/local/etc/dovecot/dovecot-dict-sql.conf } disable_plaintext_auth = no first_valid_gid = 1000 first_valid_uid = 1000 mail_access_groups = dovecot mail_location = Maildir:%h/Maildir mail_plugins = " expire" mail_privileged_group = mail managesieve_notify_capability = mailto managesieve_sieve_capability = fileinto reject envelope encoded-character vacation subaddress comparator-i;ascii-numeric relational regex imap4flags copy include variables body enotify environment mailbox date passdb { args = /usr/local/etc/dovecot/dovecot-sql.conf driver = sql } plugin { autocreate = Drafts autocreate2 = Junk autocreate3 = Sent autocreate4 = Trash autosubscribe = Drafts autosubscribe2 = Junk autosubscribe3 = Sent autosubscribe4 = Trash expire = Junk expire_dict = proxy::expire quota = dict:user::proxy::quotadict sieve = %h/.dovecot.sieve sieve_before = /var/lib/dovecot/sieve/before.sieve sieve_dir = %h/sieve sieve_global_dir = /var/lib/dovecot/sieve/global/ } protocols = imap pop3 sieve service auth { unix_listener /var/spool/postfix/private/auth { group = postfix mode = 0660 user = postfix } user = root } service dict { unix_listener dict { group = dovecot mode = 0660 } } service imap-login { inet_listener imap { address = DELETED } } service managesieve-login { executable = /usr/local/libexec/dovecot/managesieve-login } service managesieve { executable = /usr/local/libexec/dovecot/managesieve } ssl_cert =
Hi Michael,
Michael wrote:
doveadm expunge -A mailbox Junk savedbefore 28d doveadm(root): Error: User listing returned failure
The mail log file says: dovecot: auth-worker(18549): Error: sql: Iterate query failed: Table 'system.users' doesn't exist (using built-in default iterate_query: SELECT username, domain FROM users)
dovecot-sql.conf: iterate_query = SELECT username AS user FROM accounts
Some examples in the wiki refer to "username", you could try this:
iterate_query = SELECT username FROM accounts
though I have had to comment the following from dovecot.conf: #iteratedb { # args = /usr/local/etc/dovecot/dovecot-sql.conf # driver = sql #} because it errors on dovecot start up.
Your primary userdb refers to dovecot-sql.lda.conf, not dovecot-sql.conf. What does /usr/local/etc/dovecot/dovecot-sql.lda.conf look like and is there an iterate_query inside this file?
Regards Daniel
participants (2)
-
Daniel Parthey
-
Michael