Package: postfix Version: 3.1.12-0+deb9u1 Severity: grave Affects: procmail Justfication: causes data loss (after a few days), breaks (more or less) unrelated packages (procmail)
Dear Debian Postfix Maintainers, * What led up to the situation? Since a few minutes after upgrading Postfix on Stretch from 3.1.9-0+deb9u2 to 3.1.12-0+deb9u1, procmail (!) on my server has been unable to deliver mails to mailboxes bigger than some threshold: procmail: Error while writing to "/home/abe/mbox" procmail: Truncated file to former size procmail: Error while writing to "/var/mail/abe" procmail: Truncated file to former size procmail itself has last been updated with the dist-upgrade of that box from Jessie to Stretch. This threshold seems somewhere between 472 MB and 609 MB (see below), so I suspect it to be 500 MB or 512 MB, as the examples of mailboxes to which or to which not procmail could deliver mail are clearly separated by their size: Postfix via procmail has delivered mails into these mailboxes since the upgrade: $ tail -42720 procmail-log.2019-04 | egrep "Folder: [^*]" | awk '{print $2}' | sort -u | xargs ls -lhSr -- -rw------- 1 abe users 4.4M Apr 29 04:49 -spam.4 -rw------- 1 abe users 7.9M Apr 29 10:15 -spam.3 -rw------- 1 abe users 11M Apr 29 13:09 -spam.2 -rw------- 1 abe users 16M Apr 29 12:10 -spam.20 -rw------- 1 abe users 48M Apr 28 16:43 -pkg-xen-devel -rw------- 1 abe users 74M Apr 29 07:30 -debian-www -rw------- 1 abe users 77M Apr 29 06:31 -debian-apt -rw------- 1 abe users 110M Apr 28 20:24 -zsh -rw------- 1 abe users 115M Apr 29 13:58 -spam.5 -rw------- 1 abe users 128M Apr 29 09:42 -debian-lintian -rw------- 1 abe users 138M Apr 29 12:13 -debian-sparc -rw------- 1 abe users 183M Apr 29 08:18 -debian-qa -rw------- 1 abe users 438M Apr 28 19:43 -spam.15 -rw------- 1 abe users 472M Apr 29 09:17 -news Postfix via procmail wasn't able to deliver mails into these mailboxes since the upgrade: $ tail -42720 procmail-log.2019-04 | fgrep "Error while writing to" | sort -u | awk -F'"' '{print $2}' | xargs ls -lhSr -- lrwxrwxrwx 1 abe users 13 Jun 25 2018 /home/abe/mbox -> /var/mail/abe -rw------- 1 abe users 606M Apr 29 13:25 -debian-arm -rw------- 1 abe users 612M Apr 29 13:24 -debian-boot -rw------- 1 abe users 737M Apr 29 13:25 -debian-release -rw------- 1 abe users 838M Apr 29 08:00 -spam.10 -rw------- 1 abe users 952M Apr 29 13:52 -debian -rw--w---- 1 abe mail 1.4G Apr 29 13:53 /var/mail/abe -rw------- 1 abe users 5.9G Apr 29 13:33 -logcheck This is IMHO sufficiently enough statistically relevant data to show that the imposed limit is somewhere around 500 MB. The more recent timestamps of the files procmail couldn't deliver mail to are explained by it stating that it tried to append something (which failed) and trunkated the file to its original size — which doesn't reset the timestamp. Mutt on the same system can easily write to mailboxes at the size of up to at least 1.8 GB, so it's not a system-wide issue. * What exactly did you do (or not do) that was effective (or ineffective)? Upgrading postfix on Stretch from 3.1.9-0+deb9u2 to 3.1.12-0+deb9u1 via aptitude-robot (similar to unattended-upgrades, just with more flexibility). * What was the outcome of this action? Since then my procmail log shows error messages like these for any mailbox bigger than approx. 500 MB: >From MAILER-DAEMON Mon Apr 29 13:33:45 2019 Subject: Delayed Mail (still being retried) Folder: **Requeued** 2898 procmail: Extraneous locallockfile ignored procmail: Error while writing to "/home/abe/mbox" procmail: Truncated file to former size procmail: Error while writing to "/var/mail/abe" procmail: Truncated file to former size >From MAILER-DAEMON Mon Apr 29 13:38:45 2019 Subject: Delayed Mail (still being retried) Folder: **Requeued** 2900 procmail: Extraneous locallockfile ignored procmail: Error while writing to "/home/abe/mbox" procmail: Truncated file to former size procmail: Error while writing to "/var/mail/abe" procmail: Truncated file to former size * What outcome did you expect instead? - Same limits as before. - Honor the mailbox_size_limit set in /etc/postfix/main.cf as before. (According to https://www.mhonarc.org/archive/html/procmail/2003-01/msg00224.html postfix's mailbox_size_limit affects delivery via procmail.) - Don't have any previously not existent effect on procmail. JFTR: ~ → fgrep mailbox_size_limit /etc/postfix/main.cf mailbox_size_limit = 0 Downgrading Postfix to 3.1.9-0+deb9u2 again (without touching the procmail package or any configuration setting besides setting VERBOSE=1 in .procmailrc for debugging) fixed the issue for me. Now mails are delivered again to mailbox up to at least 6.0 GB. Unfortunately I haven't found anything which seemed relevant in the 3.1.12-0+deb9u1 debian/changelog entry, upstream changelog (HISTORY) entires nor in the debdiff provided at https://bugs.debian.org/926190 -- System Information: Debian Release: 9.9 APT prefers stable-updates APT policy: (500, 'stable-updates'), (500, 'stable'), (500, 'oldstable') Architecture: amd64 (x86_64) Kernel: Linux 4.9.0-8-amd64 (SMP w/6 CPU cores) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_DE:en_US:en_GB:en (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: sysvinit (via /sbin/init) Versions of packages postfix depends on: ii adduser 3.115 ii cpio 2.11+dfsg-6 ii debconf [debconf-2.0] 1.5.61 ii dpkg 1.18.25 ii init-system-helpers 1.48 ii libc6 2.24-11+deb9u4 ii libdb5.3 5.3.28-12+deb9u1 ii libicu57 57.1-6+deb9u2 ii libsasl2-2 2.1.27~101-g0780600+dfsg-3 ii libssl1.1 1.1.0j-1~deb9u1 ii lsb-base 9.20161125 ii netbase 5.4 ii postfix-sqlite 3.1.12-0+deb9u1 ii ssl-cert 1.0.39 Versions of packages postfix recommends: ii python3 3.5.3-1 Versions of packages postfix suggests: ii bsd-mailx [mail-reader] 8.1.2-0.20160123cvs-4 ii dovecot-core [dovecot-common] 1:2.2.27-3+deb9u4 ii emacs24-nox [mail-reader] 24.5+1-11+deb9u1 ii emacs25-nox [mail-reader] 25.1+1-4+deb9u1 ii libsasl2-modules 2.1.27~101-g0780600+dfsg-3 ii mutt [mail-reader] 1.7.2-1+deb9u1 pn postfix-cdb <none> ii postfix-doc 3.1.12-0+deb9u1 pn postfix-ldap <none> pn postfix-lmdb <none> pn postfix-mysql <none> ii postfix-pcre 3.1.12-0+deb9u1 pn postfix-pgsql <none> ii procmail 3.22-25+deb9u1 pn resolvconf <none> ii sasl2-bin 2.1.27~101-g0780600+dfsg-3 ii sup-mail [mail-reader] 0.22.1-2 pn ufw <none> -- debconf information: * postfix/retry_upgrade_warning: true postfix/kernel_version_warning: postfix/db_upgrade_warning: true postfix/dynamicmaps_upgrade_warning: postfix/mydomain_warning: * postfix/mailname: sym * postfix/mynetworks: 127.0.0.0/8 78.46.73.207/32, [2a01:4f8:120:4161::4]/128, 78.46.73.201/32, [2a01:4f8:120:4161::2]/128 * postfix/protocols: all postfix/tlsmgr_upgrade_warning: postfix/not_configured: postfix/transport_map_warning: * postfix/relay_restrictions_warning: true postfix/rfc1035_violation: false * postfix/main_mailer_type: Internet Site postfix/relayhost: * postfix/recipient_delim: + postfix/dynamicmaps_conversion_warning: * postfix/mailbox_limit: 0 * postfix/procmail: true postfix/master_upgrade_warning: * postfix/destinations: sym, sym2, sym.noone.org, localhost, localhost.localdomain, localhost.noone.org, sym2.noone.org, symlink.to.noone.org, someone.noone.org, xenlink.noone.org * postfix/chattr: false * postfix/compat_conversion_warning: true postfix/nqmgr_upgrade_warning: postfix/lmtp_retired_warning: true * postfix/root_address: abe * postfix/sqlite_warning: true postfix/main_cf_conversion_warning: true postfix/bad_recipient_delimiter: