Symptoms
-
It's not possible to send/receive emails on a server, the following errors are shown on
/var/log/maillog
:postfix/error[14359]: 3936F15A365: to=example@example.com, relay=none, delay=0.32, delays=0.32/0/0/0, dsn=4.4.1, status=deferred (delivery temporarily suspended: connect to 127.0.0.1[127.0.0.1]:10024: Connection refused)
amavis[19901]: (19901-13) NOTICE: reconnecting in response to: err=2006, HY000, DBD::mysql::st execute failed: MySQL server has gone away at (eval 109) line 173, <GEN32> line 6137.
amavis[9357]: (!)Net::Server: 2021/06/12-20:29:46 Bad fork [Cannot allocate memory]n at line 145 in file /usr/share/perl5/Net/Server/PreForkSimple.pm
-
The following errors may be found on
/var/log/kern.log
:kernel: [8902350.627441] Out of memory: Kill process 17650 (/usr/sbin/amavi) score 76 or sacrifice child
Cause
Server RAM is being overloaded, as a result kernel kills Amavis service, causing the mail queue not to be processed.
Resolution
Warning: The procedure below will restart Amavis, and set reprocess the emails on the queue, but the issue may happen again if the underlying cause is not dealt with. If the excessive RAM usage is a recurrent behavior, allocate more RAM to the server in order to prevent the issue from reoccurring.
-
Connect to the server via SSH.
-
Start the Amavis service:
# systemctl start amavisd
-
Re-send queued emails:
# postsuper -r ALL