Defining INDEX target to other location than maildir seems to have no effect.

Aki Tuomi aki.tuomi at dovecot.fi
Fri Dec 2 11:03:05 UTC 2016


Hi!

Sorry it took a while. I tested with 2.2.26.0, and it seems to work ok,
can you try with later release?

I tried both INDEX=MEMORY and INDEX=~/indexes

Aki


On 05.11.2016 23:40, Aki Tuomi wrote:
> Hi!
>
> Thank you for reporting this, we'll look into it.
>
> Aki Tuomi
> Dovecot oy.
>
>
>> On November 5, 2016 at 11:31 PM Jules <jules at ispire.me> wrote:
>>
>>
>> How can i commit this as bug report?
>>
>>> Am 30.10.2016 um 11:04 schrieb Julian Sternberg <jules at ispire.me>:
>>>
>>> Dovecot Version 2.2.13
>>> Linux Distribution: Debian Jessie
>>> CPU Architecture: x64
>>> Filesystem: GlusterFS/NFS, XFS for Base System/Index Files.
>>> Two Dovecot/Postfix nodes accessing same GlusterFS/NFS Maildir.
>>>
>>> Regardless what i choose in mail_location (:INDEX=MEMORY or :INDEX=/var/indexes/%d/%n) all Mailbox index files will still get created within the users mail_location maildir: ~/Maildir
>>>
>>> My mail_location Maildir directory is shared on GlusterFS mount so i need to get index files away from this share due locking mechanism and faster caching.
>>>
>>> The weird is, if i set INDEX to /var/indexes, the index files getting created sometimes but then not updated frequently and exist parallel on Maildir which are mostly newer than on /var/indexes. If you delete the dovecot.index* files from Maildir, they will get recreated immediatly on Imap access but not on the alternative set INDEX location, they are getting recreated within Maildir again.
>>>
>>> Here is doveconf -n Output:
>>>
>>> # 2.2.13: /etc/dovecot/dovecot.conf
>>> # OS: Linux 3.16.0-4-amd64 x86_64 Debian 8.6
>>> auth_mechanisms = plain login cram-md5
>>> disable_plaintext_auth = no
>>> first_valid_uid = 2000
>>> hostname = censored.hostname.com
>>> last_valid_uid = 2000
>>> lda_mailbox_autocreate = yes
>>> lda_mailbox_autosubscribe = yes
>>> listen = *
>>> lock_method = dotlock
>>> mail_fsync = always
>>> mail_gid = 2000
>>> mail_home = /storage/vmail/%d/%n
>>> mail_location = maildir:~/Maildir:LAYOUT=fs:INDEX=MEMORY
>>> mail_nfs_storage = yes
>>> mail_privileged_group = vmail
>>> mail_temp_dir = /var/tmp
>>> mail_uid = 2000
>>> maildir_very_dirty_syncs = yes
>>> 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 ihave
>>> mmap_disable = yes
>>> namespace inbox {
>>>  inbox = yes
>>>  location =
>>>  mailbox Archive {
>>>    auto = no
>>>    special_use = \Archive
>>>  }
>>>  mailbox Archives {
>>>    auto = no
>>>    special_use = \Archive
>>>  }
>>>  mailbox "Deleted Items" {
>>>    auto = no
>>>    special_use = \Trash
>>>  }
>>>  mailbox "Deleted Messages" {
>>>    auto = no
>>>    special_use = \Trash
>>>  }
>>>  mailbox Drafts {
>>>    auto = no
>>>    special_use = \Drafts
>>>  }
>>>  mailbox Sent {
>>>    auto = subscribe
>>>    special_use = \Sent
>>>  }
>>>  mailbox "Sent Items" {
>>>    auto = no
>>>    special_use = \Sent
>>>  }
>>>  mailbox "Sent Messages" {
>>>    auto = no
>>>    special_use = \Sent
>>>  }
>>>  mailbox Spam {
>>>    auto = create
>>>    special_use = \Junk
>>>  }
>>>  mailbox Trash {
>>>    auto = subscribe
>>>    special_use = \Trash
>>>  }
>>>  mailbox virtual/All {
>>>    auto = no
>>>    special_use = \All
>>>  }
>>>  prefix =
>>>  separator = /
>>>  type = private
>>> }
>>> passdb {
>>>  args = /etc/dovecot/dovecot-sql.conf.ext
>>>  driver = sql
>>> }
>>> plugin {
>>>  quota = maildir:User quota
>>>  quota_rule = *:storage=1G
>>>  quota_rule2 = Trash:storage=+100M
>>>  quota_rule3 = Sent:storage=+100M
>>>  quota_warning = storage=95%% quota-warning 95 %u
>>>  quota_warning2 = storage=80%% quota-warning 80 %u
>>>  sieve = /storage/vmail/%d/%n/sieve/dovecot.sieve
>>>  sieve_before = /storage/vmail/sieve/dovecot.sieve
>>>  sieve_dir = /storage/vmail/%d/%n/sieve
>>>  sieve_global = /storage/vmail/sieve
>>> }
>>> postmaster_address = postmaster at censored.hostname.com
>>> protocols = " imap lmtp sieve pop3"
>>> quota_full_tempfail = yes
>>> service auth {
>>>  unix_listener /var/spool/postfix/private/auth {
>>>    group = postfix
>>>    mode = 0660
>>>    user = postfix
>>>  }
>>>  unix_listener auth-userdb {
>>>    group = vmail
>>>    mode = 0666
>>>    user = vmail
>>>  }
>>> }
>>> service imap-login {
>>>  inet_listener imaps {
>>>    port = 993
>>>    ssl = yes
>>>  }
>>>  service_count = 0
>>> }
>>> service lmtp {
>>>  unix_listener /var/spool/postfix/private/dovecot-lmtp {
>>>    group = postfix
>>>    mode = 0666
>>>    user = postfix
>>>  }
>>> }
>>> service managesieve-login {
>>>  inet_listener sieve {
>>>    port = 4190
>>>  }
>>>  service_count = 1
>>> }
>>> service pop3-login {
>>>  inet_listener pop3 {
>>>    port = 110
>>>  }
>>>  inet_listener pop3s {
>>>    port = 995
>>>    ssl = yes
>>>  }
>>> }
>>> service quota-warning {
>>>  executable = script /usr/local/bin/quota-warning.sh
>>>  unix_listener quota-warning {
>>>    user = vmail
>>>  }
>>>  user = vmail
>>> }
>>> ssl = required
>>> ssl_ca = </etc/ssl/censored.hostname.com/ssl-bundle-mail.crt
>>> ssl_cert = </etc/ssl/censored.hostname.com/censored_hostname.com.crt
>>> ssl_cipher_list = ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA
>>> ssl_key = </etc/ssl/censored.hostname.com/censored.hostname.com.key
>>> ssl_protocols = !SSLv2 !SSLv3
>>> ssl_require_crl = no
>>> userdb {
>>>  args = uid=2000 gid=2000 home=/storage/vmail/%d/%n allow_all_users=yes
>>>  driver = static
>>> }
>>> protocol lmtp {
>>>  mail_plugins = " quota sieve"
>>> }
>>> protocol lda {
>>>  mail_plugins = " sieve quota"
>>> }
>>> protocol imap {
>>>  imap_client_workarounds = tb-extra-mailbox-sep
>>>  mail_plugins = " quota imap_quota"
>>> }
>>> protocol sieve {
>>>  mail_max_userip_connections = 10
>>> }
>>> protocol pop3 {
>>>  mail_plugins = " quota"
>>>  pop3_client_workarounds = outlook-no-nuls oe-ns-eoh
>>>  pop3_uidl_format = %08Xu%08Xv
>>> }




More information about the dovecot mailing list