Hello!
I had working setup, where namespace settings (including prefix) was queried over SQL. Now, after installing new Dovecot to new server (using same configuration), this is not working anymore.
Log shows following error:
""" Initialization failed: namespace configuration error: list=yes requires prefix=yes to end with separator """
relevant part from dovecot-sql.conf.ext:
"""
user_query =
SELECT
1002 AS uid
, 1003 AS gid
, CONCAT('/www/home/vmail/domains/', SUBSTRING(d.name, 1,
1), '/', d.name, '/', u.username) AS home
, namespace_prefix AS 'namespace/default/prefix'
, 'yes' AS 'namespace/default/inbox'
, '%s' AS 'mail_service'
FROM vm_domain d
INNER JOIN vm_user u ON u.vm_domain_id = d.id
WHERE d.name = '%d' AND u.username = '%n' AND u.active = 1 AND
d.active = 1
"""
namespace_prefix can be empty or INBOX.
doveconf -n output: """ # 2.2.13: /usr/local/etc/dovecot/dovecot.conf # OS: FreeBSD 9.3-RELEASE amd64 auth_debug = yes auth_verbose = yes disable_plaintext_auth = no listen = * mail_debug = yes mail_location = maildir:~/Maildir mmap_disable = yes namespace default { inbox = yes list = yes location = prefix = separator = . type = private } passdb { args = /usr/local/etc/dovecot/dovecot-sql.conf.ext driver = sql } plugin { mail_log_events = delete undelete expunge copy mailbox_delete mailbox_rename flag_change append mail_log_fields = uid box msgid size mail_log_group_events = no } service imap { process_limit = 1480 } ssl_cert =
Seems like "prefix = " is interpreted as "prefix = yes".
How I can solve this?