http://dovecot.org/releases/2.2/dovecot-2.2.9.tar.gz http://dovecot.org/releases/2.2/dovecot-2.2.9.tar.gz.sig + Full text search indexing can now be done automatically after saving/copying mails by setting plugin { fts_autoindex=yes } + replicator: Added replication_dsync_parameters setting to pass "doveadm sync" parameters (for controlling what to replicate). + Added mail-filter plugin + Added liblzma/xz support (zlib_save=xz) - v2.2.8's improved cache file handling exposed several old bugs related to fetching mail headers. - v2.2.7's iostream handling changes were causing some connections to be disconnected before flushing their output (e.g. POP3 logout message wasn't being sent)
Sorry for such a basic question, but how exactly do I turn this on? I get this error: doveconf: Fatal: Error in configuration file /usr/local/etc/dovecot/dovecot.conf line 91: Garbage after '{' if I put plugin {fts_autoindex = yes} in dovecot.conf. Is this where I should put it? Is there anything else I need to enter? Thanks, James. On 25 Nov 2013, at 11:27 am, Timo Sirainen <tss at iki.fi> wrote:> + Full text search indexing can now be done automatically after > saving/copying mails by setting plugin { fts_autoindex=yes }-------------- next part -------------- A non-text attachment was scrubbed... Name: smime.p7s Type: application/x-pkcs7-signature Size: 6614 bytes Desc: not available URL: <http://dovecot.org/pipermail/dovecot/attachments/20131125/6ded7cce/attachment.bin>
On Mon, Nov 25, 2013 at 02:27:57AM +0200, Timo Sirainen wrote:> + Added mail-filter pluginThe URL on http://master.wiki2.dovecot.org/Plugins incorrectly points to http://master.wiki2.dovecot.org/Plugins/MailLog instead of http://master.wiki2.dovecot.org/Plugins/MailFilter Be good if you had a wiki with a git interface.
Well, it's not crashing like 2.2.8 did. So far so good after 10 minutes. :) On 11/24/2013 4:27 PM, Timo Sirainen wrote:> http://dovecot.org/releases/2.2/dovecot-2.2.9.tar.gz > http://dovecot.org/releases/2.2/dovecot-2.2.9.tar.gz.sig > > + Full text search indexing can now be done automatically after > saving/copying mails by setting plugin { fts_autoindex=yes } > + replicator: Added replication_dsync_parameters setting to pass > "doveadm sync" parameters (for controlling what to replicate). > + Added mail-filter plugin > + Added liblzma/xz support (zlib_save=xz) > - v2.2.8's improved cache file handling exposed several old bugs > related to fetching mail headers. > - v2.2.7's iostream handling changes were causing some connections > to be disconnected before flushing their output (e.g. POP3 logout > message wasn't being sent) > > > >
Steffen Kaiser
2013-Dec-12 14:25 UTC
[Dovecot] userdb { prefetch } problem after upgrade (was Re: v2.2.9 released)
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On Mon, 25 Nov 2013, Timo Sirainen wrote: I test an upgrade from v2.2.5 to v2.2.9. I have built v2.2.9 from hg source, make clean, make install; now it looks like that userdb prefetch won't work, but returns successful without any data all the time. There is no LDAP query, even if I start Dovecot newly and issue the commands (see below) right away. The config works on v2.2.5 with prefetch, on v2.2.9 IMAP works, but doveadm only without prefetch. === These are my queries for LDAP user_attrs = =home=/home/%{ldap:uid},uid=user,mailLocationDovecot=mail,=quota_rule=*:bytes=%{ldap:mailQuotaBytes:300MB}, =quota_rule2=Trash:bytes=+%{ldap:mailQuotaBytesTrash:30MB},mail DovecotGeneral=userdb_import,displayName=gecos pass_attrs = uid=user,userPassword=password,=userdb_home=/home/%{ldap:uid},mailLocationDovecot=userdb_mail,uid=userdb_user,=userdb_quota_rule=*:bytes=%{ldap:mailQuotaBytes:300MB}, =userdb_quota_rule2=Trash:bytes=+%{ldap:mailQuotaBytesTrash:30MB},mailDovecotGeneral=userdb_userdb_import,displayName=userdb_gecos passdb { driver = ldap # Path for LDAP configuration file, see example-config/dovecot-ldap.conf.ext args = /usr/local/dovecot-2.2.9/etc/dovecot/dovecot-ldap.conf.ext } userdb { driver = prefetch } userdb { driver = ldap args = /usr/local/dovecot-2.2.9/etc/dovecot/dovecot-ldap.conf.ext # Default fields can be used to specify defaults that LDAP may override default_fields = home=/home/%u uid=vmail gid=vmail } They work in v2.2.5 whether userdb { prefetch } is enabled or not. In v2.2.9 without prefetch, everything works, with prefetch: + Login into IMAP and POP3 works, - - doveadm user dvtest1 just returns: field value uid vmail gid vmail home mail without prefetch: field value uid 30002 gid 30002 home /home/dvtest1 mail quota_rule *:bytes=300MB quota_rule2 Trash:bytes=+30MB gecos dvtest1 === Logentries: 2013-12-12 13:30:16 auth: Debug: master in: USER 1 dvtest1 service=doveadm 2013-12-12 13:30:16 auth: Debug: prefetch(dvtest1): success 2013-12-12 13:30:16 auth: Debug: userdb out: USER 1 dvtest1 - - LMTP fails With log entries: 2013-12-12 13:31:52 auth: Debug: master in: USER 5 dvtest1 service=lmtp 2013-12-12 13:31:52 auth: Debug: prefetch(dvtest1): success 2013-12-12 13:31:52 auth: Debug: userdb out: USER 5 dvtest1 2013-12-12 13:31:52 lmtp(4573, dvtest1): Debug: Quota root: name=User quota backend=dict args=:proxy::quota 2013-12-12 13:31:52 lmtp(4573, dvtest1): Debug: Quota rule: root=User quota mailbox=* bytes=314572800 messages=0 2013-12-12 13:31:52 lmtp(4573, dvtest1): Debug: Quota rule: root=User quota mailbox=Trash bytes=+31457280 messages=0 2013-12-12 13:31:52 lmtp(4573, dvtest1): Debug: Quota grace: root=User quota bytes=31457280 (10%) 2013-12-12 13:31:52 lmtp(4573, dvtest1): Debug: dict quota: user=dvtest1, uri=proxy::quota, noenforcing=0 2013-12-12 13:31:52 lmtp(4573, dvtest1): Debug: Namespace inbox: type=private, prefix=, sep=, inbox=yes, hidden=no, list=yes, subscriptions=yes location2013-12-12 13:31:52 lmtp(4573, dvtest1): Debug: mdbox: couldn't find root dir 2013-12-12 13:31:52 lmtp(4573, dvtest1): Debug: sdbox: couldn't find root dir 2013-12-12 13:31:52 lmtp(4573, dvtest1): Debug: maildir: Home directory not set 2013-12-12 13:31:52 lmtp(4573, dvtest1): Debug: maildir: couldn't find root dir 2013-12-12 13:31:52 lmtp(4573, dvtest1): Debug: maildir: Home directory not set ==== # 2.2.9 (c0236d1c4a04): /usr/local/dovecot-2.2.9/etc/dovecot/dovecot.conf # OS: Linux 2.6.32-5-amd64 x86_64 Debian 6.0.7 auth_cache_size = 10 M auth_debug = yes auth_mechanisms = plain login auth_verbose = yes auth_verbose_passwords = plain base_dir = /var/run/dovecot2.2/ default_client_limit = 2500 default_process_limit = 2500 deliver_log_format = msgid=%m: %$ %p/%w "%f" "%s" dict { acl = pgsql:/usr/local/dovecot-2.2.9/etc/dovecot/dovecot-dict-sql.conf.ext quota = pgsql:/usr/local/dovecot-2.2.9/etc/dovecot/dovecot-dict-sql.conf.ext } disable_plaintext_auth = no doveadm_password = *pwd* instance_name = dovecot2.2 lda_mailbox_autocreate = yes lmtp_save_to_detail_mailbox = yes log_path = /var/log/dovecot/dovecot2.2.log log_timestamp = "%F %H:%M:%S " mail_debug = yes mail_gid = vmail mail_log_prefix = "%Us(%u) [%p]: " mail_plugins = " quota notify mail_log zlib acl" mail_shared_explicit_inbox = yes mail_uid = vmail 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 imapflags namespace { list = children location = maildir:%%h/Maildir:INDEX=~/Maildir/shared/%%u prefix = users.%%u. separator = . type = shared } namespace inbox { inbox = yes location mailbox Drafts { special_use = \Drafts } mailbox Junk { special_use = \Junk } mailbox Sent { special_use = \Sent } mailbox "Sent Messages" { special_use = \Sent } mailbox Trash { special_use = \Trash } prefix = } passdb { args = /usr/local/dovecot-2.2.9/etc/dovecot/dovecot-ldap.conf.ext driver = ldap } plugin { acl = vfile acl_shared_dict = proxy::acl antispam_allow_append_to_spam = yes antispam_backend = spool2dir antispam_spam = SPAM+ReportAsSPAM antispam_spool2dir_notspam = /tmp/spamspool/%%020lu-%%05lu-%u-H antispam_spool2dir_spam = /tmp/spamspool/%%020lu-%%05lu-%u-S antispam_trash = trash;TRASH;Trash;spam;SPAM;Spam;junk;JUNK;Junk;Deleted Items;Deleted Messages;Gel&APY-schte Elemente;Gel&APY-schte Objekte;Junk E-mail;Junk-E-Mail;INBOX.Trash;INBOX.TRASH;INBOX.trash mail_log_events = delete undelete expunge copy mailbox_delete mailbox_rename mail_log_fields = uid box msgid size vsize from subject quota = dict:User quota::proxy::quota quota_rule = *:storage=300MB quota_rule2 = Trash:storage=+30M recipient_delimiter = + sieve = ~/.dovecot.sieve sieve_dir = ~/sieve sieve_extensions = +imapflags sieve_max_actions = 0 sieve_quota_max_storage = 3M } postmaster_address = postmaster at inf.h-brs.de protocols = imap pop3 lmtp sieve quota_full_tempfail = yes service anvil { client_limit = 10003 } service auth { client_limit = 12500 unix_listener auth-client { mode = 0766 } unix_listener auth-userdb { mode = 0766 user = vmail } } service dict { unix_listener dict { group = vmail mode = 0660 user = vmail } } service doveadm { unix_listener doveadm-server { mode = 0666 } } service imap { vsz_limit = 512 M } service managesieve-login { inet_listener sieve { port = 4190 } inet_listener sieve_deprecated { port = 2000 } } ssl_ca = </etc/ssl/certs/ca.crt ssl_cert = </etc/ssl/certs/imap.pem ssl_key = </etc/ssl/private/imap.key userdb { args = /usr/local/dovecot-2.2.9/etc/dovecot/dovecot-ldap.conf.ext default_fields = home=/home/%u uid=vmail gid=vmail driver = ldap } verbose_proctitle = yes protocol lmtp { mail_plugins = " quota notify mail_log zlib acl quota sieve" } protocol lda { mail_plugins = " quota notify mail_log zlib acl quota sieve" } protocol imap { mail_plugins = " quota notify mail_log zlib acl imap_quota imap_zlib imap_acl antispam" } - -- Steffen Kaiser -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (GNU/Linux) iQEVAwUBUqnHWF3r2wJMiz2NAQK2egf9EC7BOdEqcDBdRLoEqxU1Ak9sbtnrDI8T zv3eNOiLjkmieBxGkvXWIEVpfSH8icZi+m/I10LmIL8hMdSUMTTCMD0xvGFZ779H 7viHDxmmBQl55GU0gj5h1o22vwVK2km0bt/JbP11YeBZo6v57WGCRfSMbPJOSmoZ RT6Od9SYkCvLdu0zo+hQ6tRLN/P25p85jg/Aob54wtHBNN8p3UFDHjWu0i+aYUoK 2SuCvENpCPmvWT48jwicNkdP4ekc91hpF9LK6XeRe+KmAEsJR+xMDpxcn1IX3pd4 F5BjJtw5dCrwF+/LL5CkSgakAw7gUP3qO8dwhypnRjxivgiE1XdWdw==41OA -----END PGP SIGNATURE-----