After upgrading to FreeBSD 12 I'm experiencing issues with amavis
from time to time.
The reason for the crash in unclear for now.
A simple kill -9 $amavispid && service amavids start
does the trick but after some hours everything starts over again.
This is the log output from the crash:
Dec 19 02:51:14 mailserver postfix/pickup[9697]: 75223B166: uid=58 from=<MAILER-DAEMON>
Dec 19 02:51:14 mailserver postfix/pipe[17647]: 7A3F1B162: to=<[email protected]>, relay=spamassassin, delay=1.1, delays=0.44/0/0/0.68, dsn=2.0.0, status=sent (delivered via spamassassin service)
Dec 19 02:51:14 mailserver postfix/qmgr[850]: 7A3F1B162: removed
Dec 19 02:51:14 mailserver postfix/cleanup[17644]: 75223B166: message-id=<[email protected]>
Dec 19 02:51:14 mailserver postfix/qmgr[850]: 75223B166: from=<>, size=7592, nrcpt=1 (queue active)
Dec 19 02:51:14 mailserver spamd[758]: prefork: child states: II
Dec 19 02:51:15 mailserver amavis[772]: (00772-07) (!!)TROUBLE in check_mail: decide_mail_destiny FAILED: register_proc: BDB N c_get: BDB0061 PANIC: Invalid argument, No such process. at (eval 93) line 222.
Dec 19 02:51:15 mailserver amavis[772]: (00772-07) (!!)TROUBLE in process_request: register_proc: BDB N db_cursor: BDB0060 PANIC: fatal region error detected; run recovery, . at (eval 93) line 220.
Dec 19 02:51:15 mailserver amavis[772]: (00772-07) (!)Requesting process rundown after fatal error
Dec 19 02:51:15 mailserver amavis[772]: (00772-07) (!)TempDir removal: tempdir is to be PRESERVED: /var/amavis/tmp/amavis-20181218T235619-00772-TJFdgQp3
Dec 19 02:51:15 mailserver amavis[772]: (00772-07) (!)_DIE: register_proc: BDB N db_cursor: BDB0060 PANIC: fatal region error detected; run recovery, . at (eval 93) line 220.
Dec 19 02:51:15 mailserver postfix/lmtp[17651]: 6CB9FB164: to=<[email protected]>, relay=127.0.0.1[127.0.0.1]:10024, delay=0.87, delays=0.01/0.01/0/0.85, dsn=4.3.2, status=deferred (host 127.0.0.1[127.0.0.1] said: 421 4.3.2 Service shutting down, closing channel (in reply to end of DATA command))
Dec 19 02:51:15 mailserver amavis[772]: (00772-07) (!)Amavis::END: DB unregistering failed:
Dec 19 02:51:15 mailserver amavis[17658]: (!!)TROUBLE in child_init_hook: BDB can't connect db env. at /var/amavis/db: BDB0087 DB_RUNRECOVERY: Fatal error, run database recovery, No such file or directory. at (eval 93) line 338.
Dec 19 02:51:15 mailserver amavis[17658]: (!)_DIE: Suicide in child_init_hook: BDB can't connect db env. at /var/amavis/db: BDB0087 DB_RUNRECOVERY: Fatal error, run database recovery, No such file or directory. at (eval 93) line 338.
Dec 19 02:51:15 mailserver amavis[17659]: (!!)TROUBLE in child_init_hook: BDB can't connect db env. at /var/amavis/db: BDB0087 DB_RUNRECOVERY: Fatal error, run database recovery, No such file or directory. at (eval 93) line 338.
Dec 19 02:51:15 mailserver amavis[17659]: (!)_DIE: Suicide in child_init_hook: BDB can't connect db env. at /var/amavis/db: BDB0087 DB_RUNRECOVERY: Fatal error, run database recovery, No such file or directory. at (eval 93) line 338.
Dec 19 02:51:15 mailserver amavis[17660]: (!!)TROUBLE in child_init_hook: BDB can't connect db env. at /var/amavis/db: BDB0087 DB_RUNRECOVERY: Fatal error, run database recovery, No such file or directory. at (eval 93) line 338.
Dec 19 02:51:15 mailserver amavis[17660]: (!)_DIE: Suicide in child_init_hook: BDB can't connect db env. at /var/amavis/db: BDB0087 DB_RUNRECOVERY: Fatal error, run database recovery, No such file or directory. at (eval 93) line 338.
Dec 19 02:51:15 mailserver amavis[17661]: (!!)TROUBLE in child_init_hook: BDB can't connect db env. at /var/amavis/db: BDB0087 DB_RUNRECOVERY: Fatal error, run database recovery, No such file or directory. at (eval 93) line 338.
Dec 19 02:51:15 mailserver amavis[17661]: (!)_DIE: Suicide in child_init_hook: BDB can't connect db env. at /var/amavis/db: BDB0087 DB_RUNRECOVERY: Fatal error, run database recovery, No such file or directory. at (eval 93) line 338.
Dec 19 02:51:15 mailserver amavis[17662]: (!!)TROUBLE in child_init_hook: BDB can't connect db env. at /var/amavis/db: BDB0087 DB_RUNRECOVERY: Fatal error, run database recovery, No such file or directory. at (eval 93) line 338.
Dec 19 02:51:15 mailserver amavis[17662]: (!)_DIE: Suicide in child_init_hook: BDB can't connect db env. at /var/amavis/db: BDB0087 DB_RUNRECOVERY: Fatal error, run database recovery, No such file or directory. at (eval 93) line 338.
The last Lines continue till i kill the service, and spam the log file.
Again, after i restart the service everything is fine again. System resources are not exhausted. CPU Load is at 0.5, plenty of memory is left (~20%), disks are not filled up.
I have no idea where to search...
PS.: hostnames and domains are of course changed
EDIT: Just If someone else is facing this issue, I have found a workaround.
You might just disable the Berkley Database feature that caches some results via $enable_db = 0;
This is no solution, but a workaround!
0 Answers