Postfix smtpd restarted/reloaded every 2 minutes on cluster node

DBee

New Member
Jul 14, 2026
3
0
1
pmgversion -v
proxmox-mailgateway: 9.1 (API: 9.1.0/0b3beca05f9e, running kernel: 7.0.14-2-pve)

pmgsubscription get
message: There is no subscription key

Systems: 2 virtual machines running on PVE. The virtual machines are load balanced via HAProxy


I am currently testing PMG in a load balanced cluster setup and all is working well.
Postfix has some customized settings via the PMG supplied template file (main.cf.in)

I noticed that every 2 minutes postfix logs the following message only on the cluster node.
The message does not appear on the cluster master.

Message:
postfix/smtpd[507385]: table hash:/etc/aliases(0,lock|fold_fix|utf8_request) has changed -- restarting

I did not touch the aliases file The aliases files on both cluster members are the default files supplied by PMG.

Is this by design or is something else going on?
As far as I can tell every 2 minutes a new aliases.db file is generated although the aliases file never changed. This seems a little excessive to me.
Does this have anything to do with the synchronization process?
 
I noticed that every 2 minutes postfix logs the following message only on the cluster node.
The message does not appear on the cluster master.

Message:
postfix/smtpd[507385]: table hash:/etc/aliases(0,lock|fold_fix|utf8_request) has changed -- restarting
2 minutes is the intervall in which the pmg cluster sync happens - so this is the cause here.

The issue should only be cosmetic - postfix does restart (most of) its processes regularly - after a certain amount of time, and if it detects changes - and
this has worked without any issue for a long time.
(In this case the newer aliases.db is the "change" it detects)

the cluster-sync rewrites the (postfix) configuration - and in that path also calls `newaliases` unconditionally:
https://git.proxmox.com/?p=pmg-api....578182a083128a3c98cbc3f612d9d6301c63715#l1938

and this causes postfix to reload smtpd afterwards.

Just to not miss anything - apart from the log-lines being written - nothing goes wrong on the system?

Thanks!
 
Thank you for the reply and clarification.
Nothing goes wrong, it's all working fine.

I am only wondering if it is desired behaviour to reload the complete Postfix configuration just to '# make sure aliases.db is up to date'. In our case, the aliases file is unchanged and it will probably never change. It all seems a bit of overkill. Every now and then HAProxy monitoring misses a check, I assume its because of Postfix reloading. What will happen if the system is put under production load? It would be nice to be able to switch off this feature or some extra intelligence was added to the code. For example, only run newaliases when aliases has actually changed between pmg syncs. This will only increase the stability of the system.
 
Can anyone from staff answer my previous question? I need to know if it is or will be possible to prevent the (in our case: useless) autocreation of aliases.db every two minutes.
My admins are not too keen on seeing postfix reload its configuration 720 times a day.