Frank Ebert
2018-May-01 08:12 UTC
2.3.1 with quota and lmtp; message may be sent more than once
Hi, I have another problem with dovecot 2.3.1 on FreeBSD (smtpd is postfix 3.3.0). When one mail is sent with different recipients and the quota limit of one user is exceeded, the message will be delivered repeatedly to all users. The queue from postfix says: (lost connection with mailserver.foo.bar[private/lmtp-dovecot] while sending end of data -- message may be sent more than once) The problem started with dovecot 2.3.1. With 2.2.3x everything was fine. Any ideas? Thanx Frank doveconf -n: auth_mechanisms = plain login auth_use_winbind = yes auth_winbind_helper_path = /usr/local/bin/ntlm_auth disable_plaintext_auth = no info_log_path = /var/log/dovecot listen = * mail_location = mdbox:~/mdbox mail_plugins = zlib quota acl mail_log notify managesieve_notify_capability = mailto managesieve_sieve_capability = fileinto reject envelope encoded-character vacati on subaddress comparator-i;ascii-numeric relational regex imap4flags copy includ e variables body enotify environment mailbox date index ihave duplicate mime for everypart extracttext namespace { location = mdbox:/home/vmail/foo.domain/foo/mdbox prefix = Foo/ separator = / subscriptions = yes type = public } namespace { location = mdbox:/home/vmail/bar.domain/bar/mdbox prefix = Bar/ separator = / subscriptions = yes type = public } namespace { location = mdbox:/home/vmail/foobar.domain/foobar/mdbox prefix = Foobar/ separator = / subscriptions = yes type = public } namespace inbox { inbox = yes location mailbox Drafts { auto = subscribe special_use = \Drafts } mailbox Junk { special_use = \Junk } mailbox Sent { auto = subscribe special_use = \Sent } mailbox "Sent Messages" { special_use = \Sent } mailbox Trash { auto = subscribe special_use = \Trash } prefix = INBOX/ separator = / } passdb { args = /usr/local/etc/dovecot/dovecot-ldap.conf.ext driver = ldap } plugin { acl = vfile:/usr/local/etc/dovecot/global-acls acl_shared_dict = file:/var/lib/dovecot/shared-mailboxes mail_log_events = flag_change delete undelete expunge copy mailbox_delete mail box_rename mail_log_fields = uid box msgid size flags quota = dict:User quota::file:%h/dovecot-quota quota_warning = storage=95%% quota-warning 95 %u quota_warning2 = storage=80%% quota-warning 80 %u sieve = ~/.dovecot.sieve sieve_dir = ~/sieve stats_command_min_time = 1 mins stats_domain_min_time = 12 hours stats_ip_min_time = 12 hours stats_memory_limit = 16 M stats_refresh = 30 stats_session_min_time = 15 mins stats_track_cmds = yes stats_user_min_time = 1 hours zlib_save = gz zlib_save_level = 6 } postmaster_address = postmaster at foo.bar protocols = imap lmtp sieve service auth { unix_listener /var/spool/postfix/private/auth { mode = 0666 } unix_listener auth-userdb { group = vmail user = vmail } } service lmtp { unix_listener /var/spool/postfix/private/lmtp-dovecot { group = postfix user = postfix } } service managesieve-login { inet_listener sieve { port = 4190 } process_min_avail = 0 service_count = 0 } service managesieve { process_limit = 1024 } service quota-warning { executable = script /usr/local/bin/quota-warning.sh unix_listener quota-warning { user = vmail } user = vmail } service stats { fifo_listener stats-mail { mode = 0600 user = vmail } } ssl_cert = </etc/ssl/certs/dovecot.pem ssl_dh = # hidden, use -P to show it ssl_key = # hidden, use -P to show it userdb { driver = prefetch } userdb { args = /usr/local/etc/dovecot/dovecot-ldap-userdb.conf.ext driver = ldap } protocol lmtp { mail_plugins = zlib quota acl mail_log notify sieve } protocol lda { mail_plugins = zlib quota acl mail_log notify sieve } protocol imap { mail_plugins = zlib quota acl mail_log notify imap_zlib imap_quota imap_acl } -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 195 bytes Desc: Digitale Signatur von OpenPGP URL: <https://dovecot.org/pipermail/dovecot/attachments/20180501/abed0a36/attachment.sig>
Christos Chatzaras
2018-May-01 20:43 UTC
2.3.1 with quota and lmtp; message may be sent more than once
I had the same problem and the only workaround I found was to change this to postfix main.cf : default_destination_recipient_limit = 1> On 1 May 2018, at 11:12, Frank Ebert <frank.ebert at freenet.de> wrote: > > Hi, > > I have another problem with dovecot 2.3.1 on FreeBSD (smtpd is postfix > 3.3.0). When one mail is sent with different recipients and the quota > limit of one user is exceeded, the message will be delivered repeatedly > to all users. The queue from postfix says: > > (lost connection with mailserver.foo.bar[private/lmtp-dovecot] while > sending end of data -- message may be sent more than once) > > The problem started with dovecot 2.3.1. With 2.2.3x everything was fine. > > Any ideas? > > Thanx > Frank > > doveconf -n: > > auth_mechanisms = plain login > auth_use_winbind = yes > auth_winbind_helper_path = /usr/local/bin/ntlm_auth > disable_plaintext_auth = no > info_log_path = /var/log/dovecot > listen = * > mail_location = mdbox:~/mdbox > mail_plugins = zlib quota acl mail_log notify > managesieve_notify_capability = mailto > managesieve_sieve_capability = fileinto reject envelope > encoded-character vacati on subaddress comparator-i;ascii-numeric > relational regex imap4flags copy includ e variables body enotify > environment mailbox date index ihave duplicate mime for everypart > extracttext > namespace { > location = mdbox:/home/vmail/foo.domain/foo/mdbox > prefix = Foo/ > separator = / > subscriptions = yes > type = public > } > namespace { > location = mdbox:/home/vmail/bar.domain/bar/mdbox > prefix = Bar/ > separator = / > subscriptions = yes > type = public > } > namespace { > location = mdbox:/home/vmail/foobar.domain/foobar/mdbox > prefix = Foobar/ > separator = / > subscriptions = yes > type = public > } > namespace inbox { > inbox = yes > location > mailbox Drafts { > auto = subscribe > special_use = \Drafts > } > mailbox Junk { > special_use = \Junk > } > mailbox Sent { > auto = subscribe > special_use = \Sent > } > mailbox "Sent Messages" { > special_use = \Sent > } > mailbox Trash { > auto = subscribe > special_use = \Trash > } > prefix = INBOX/ > separator = / > } > passdb { > args = /usr/local/etc/dovecot/dovecot-ldap.conf.ext > driver = ldap > } > plugin { > acl = vfile:/usr/local/etc/dovecot/global-acls > acl_shared_dict = file:/var/lib/dovecot/shared-mailboxes > mail_log_events = flag_change delete undelete expunge copy > mailbox_delete mail box_rename > mail_log_fields = uid box msgid size flags > quota = dict:User quota::file:%h/dovecot-quota > quota_warning = storage=95%% quota-warning 95 %u > quota_warning2 = storage=80%% quota-warning 80 %u > sieve = ~/.dovecot.sieve > sieve_dir = ~/sieve > stats_command_min_time = 1 mins > stats_domain_min_time = 12 hours > stats_ip_min_time = 12 hours > stats_memory_limit = 16 M > stats_refresh = 30 > stats_session_min_time = 15 mins > stats_track_cmds = yes > stats_user_min_time = 1 hours > zlib_save = gz > zlib_save_level = 6 > } > postmaster_address = postmaster at foo.bar > protocols = imap lmtp sieve > service auth { > unix_listener /var/spool/postfix/private/auth { > mode = 0666 > } > unix_listener auth-userdb { > group = vmail > user = vmail > } > } > service lmtp { > unix_listener /var/spool/postfix/private/lmtp-dovecot { > group = postfix > user = postfix > } > } > service managesieve-login { > inet_listener sieve { > port = 4190 > } > process_min_avail = 0 > service_count = 0 > } > service managesieve { > process_limit = 1024 > } > service quota-warning { > executable = script /usr/local/bin/quota-warning.sh > unix_listener quota-warning { > user = vmail > } > user = vmail > } > service stats { > fifo_listener stats-mail { > mode = 0600 > user = vmail > } > } > ssl_cert = </etc/ssl/certs/dovecot.pem > ssl_dh = # hidden, use -P to show it > ssl_key = # hidden, use -P to show it > userdb { > driver = prefetch > } > userdb { > args = /usr/local/etc/dovecot/dovecot-ldap-userdb.conf.ext > driver = ldap > } > protocol lmtp { > mail_plugins = zlib quota acl mail_log notify sieve > } > protocol lda { > mail_plugins = zlib quota acl mail_log notify sieve > } > protocol imap { > mail_plugins = zlib quota acl mail_log notify imap_zlib imap_quota > imap_acl }
Stephan Bosch
2018-May-14 21:17 UTC
2.3.1 with quota and lmtp; message may be sent more than once
Op 01/05/2018 om 10:12 schreef Frank Ebert:> Hi, > > I have another problem with dovecot 2.3.1 on FreeBSD (smtpd is postfix > 3.3.0). When one mail is sent with different recipients and the quota > limit of one user is exceeded, the message will be delivered repeatedly > to all users. The queue from postfix says: > > (lost connection with mailserver.foo.bar[private/lmtp-dovecot] while > sending end of data -- message may be sent more than once) > > The problem started with dovecot 2.3.1. With 2.2.3x everything was fine. > > Any ideas?Hmm, I am wondering whether we already fixed this one implicitly. I think we addressed some quota-related problems. Do you have the opportunity to test this with git master(-2.3) ? Regards, Stephan.> Thanx > Frank > > doveconf -n: > > auth_mechanisms = plain login > auth_use_winbind = yes > auth_winbind_helper_path = /usr/local/bin/ntlm_auth > disable_plaintext_auth = no > info_log_path = /var/log/dovecot > listen = * > mail_location = mdbox:~/mdbox > mail_plugins = zlib quota acl mail_log notify > managesieve_notify_capability = mailto > managesieve_sieve_capability = fileinto reject envelope > encoded-character vacati on subaddress comparator-i;ascii-numeric > relational regex imap4flags copy includ e variables body enotify > environment mailbox date index ihave duplicate mime for everypart > extracttext > namespace { > location = mdbox:/home/vmail/foo.domain/foo/mdbox > prefix = Foo/ > separator = / > subscriptions = yes > type = public > } > namespace { > location = mdbox:/home/vmail/bar.domain/bar/mdbox > prefix = Bar/ > separator = / > subscriptions = yes > type = public > } > namespace { > location = mdbox:/home/vmail/foobar.domain/foobar/mdbox > prefix = Foobar/ > separator = / > subscriptions = yes > type = public > } > namespace inbox { > inbox = yes > location > mailbox Drafts { > auto = subscribe > special_use = \Drafts > } > mailbox Junk { > special_use = \Junk > } > mailbox Sent { > auto = subscribe > special_use = \Sent > } > mailbox "Sent Messages" { > special_use = \Sent > } > mailbox Trash { > auto = subscribe > special_use = \Trash > } > prefix = INBOX/ > separator = / > } > passdb { > args = /usr/local/etc/dovecot/dovecot-ldap.conf.ext > driver = ldap > } > plugin { > acl = vfile:/usr/local/etc/dovecot/global-acls > acl_shared_dict = file:/var/lib/dovecot/shared-mailboxes > mail_log_events = flag_change delete undelete expunge copy > mailbox_delete mail box_rename > mail_log_fields = uid box msgid size flags > quota = dict:User quota::file:%h/dovecot-quota > quota_warning = storage=95%% quota-warning 95 %u > quota_warning2 = storage=80%% quota-warning 80 %u > sieve = ~/.dovecot.sieve > sieve_dir = ~/sieve > stats_command_min_time = 1 mins > stats_domain_min_time = 12 hours > stats_ip_min_time = 12 hours > stats_memory_limit = 16 M > stats_refresh = 30 > stats_session_min_time = 15 mins > stats_track_cmds = yes > stats_user_min_time = 1 hours > zlib_save = gz > zlib_save_level = 6 > } > postmaster_address = postmaster at foo.bar > protocols = imap lmtp sieve > service auth { > unix_listener /var/spool/postfix/private/auth { > mode = 0666 > } > unix_listener auth-userdb { > group = vmail > user = vmail > } > } > service lmtp { > unix_listener /var/spool/postfix/private/lmtp-dovecot { > group = postfix > user = postfix > } > } > service managesieve-login { > inet_listener sieve { > port = 4190 > } > process_min_avail = 0 > service_count = 0 > } > service managesieve { > process_limit = 1024 > } > service quota-warning { > executable = script /usr/local/bin/quota-warning.sh > unix_listener quota-warning { > user = vmail > } > user = vmail > } > service stats { > fifo_listener stats-mail { > mode = 0600 > user = vmail > } > } > ssl_cert = </etc/ssl/certs/dovecot.pem > ssl_dh = # hidden, use -P to show it > ssl_key = # hidden, use -P to show it > userdb { > driver = prefetch > } > userdb { > args = /usr/local/etc/dovecot/dovecot-ldap-userdb.conf.ext > driver = ldap > } > protocol lmtp { > mail_plugins = zlib quota acl mail_log notify sieve > } > protocol lda { > mail_plugins = zlib quota acl mail_log notify sieve > } > protocol imap { > mail_plugins = zlib quota acl mail_log notify imap_zlib imap_quota > imap_acl }
Stephan Bosch
2018-May-14 21:43 UTC
2.3.1 with quota and lmtp; message may be sent more than once
Op 14/05/2018 om 23:17 schreef Stephan Bosch:> > > Op 01/05/2018 om 10:12 schreef Frank Ebert: >> Hi, >> >> I have another problem with dovecot 2.3.1 on FreeBSD (smtpd is postfix >> 3.3.0). When one mail is sent with different recipients and the quota >> limit of one user is exceeded, the message will be delivered repeatedly >> to all users. The queue from postfix says: >> >> (lost connection with mailserver.foo.bar[private/lmtp-dovecot] while >> sending end of data -- message may be sent more than once) >> >> The problem started with dovecot 2.3.1. With 2.2.3x everything was fine. >> >> Any ideas? > > Hmm, I am wondering whether we already fixed this one implicitly. I > think we addressed some quota-related problems. Do you have the > opportunity to test this with git master(-2.3) ?Never mind, I can reproduce something here: lmtp(hugo)<953><uM/SHXIC+lq5AwAAmoV78g:2>: Fatal: master: service(lmtp): child 953 killed with signal 11 (core dumps disabled - https://dovecot.org/bugreport.html#coredumps) Working on it.. Regards, Stephan.
Frank Ebert
2018-May-16 15:20 UTC
2.3.1 with quota and lmtp; message may be sent more than once
Hi, thank you very much for your reply. Your solution seems to be a good workaround, until the patch from Stephan is available. Since I activated this setting in postfix, the problem doesn't appear any more. Frank Am Tue, 1 May 2018 23:43:13 +0300 schrieb Christos Chatzaras <chris at cretaforce.gr>:> I had the same problem and the only workaround I found was to change > this to postfix main.cf : > > default_destination_recipient_limit = 1 > > > > > On 1 May 2018, at 11:12, Frank Ebert <frank.ebert at freenet.de> wrote: > > > > Hi, > > > > I have another problem with dovecot 2.3.1 on FreeBSD (smtpd is > > postfix 3.3.0). When one mail is sent with different recipients and > > the quota limit of one user is exceeded, the message will be > > delivered repeatedly to all users. The queue from postfix says: > > > > (lost connection with mailserver.foo.bar[private/lmtp-dovecot] while > > sending end of data -- message may be sent more than once) > > > > The problem started with dovecot 2.3.1. With 2.2.3x everything was > > fine. > > > > Any ideas? > > > > Thanx > > Frank-------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 195 bytes Desc: Digitale Signatur von OpenPGP URL: <https://dovecot.org/pipermail/dovecot/attachments/20180516/8af55f82/attachment.sig>