Le 22 mars 2013 à 13:08, Wietse Venema a écrit :
> [...]
>
> If rlim_cur value is enforced, as it may well be, then my next bet
> is to use the sysctl() result. A hard constant value would be
> fundamentally incorrect.
Indeed, it is enforced; for example, with rlim_cur set to 10:
postfix/master[73696]: fatal: open /_ROOT/etc/postfix/master.cf: Too
many open files
Now, could it be considered that all Postfix processes are, directly or
indirectly, children of the master process? If yes, shouldn't they all inherit
the limits from the master process?
In which case it could perhaps be sufficient to emit the values related to
RLIMIT_NOFILE (and possibly other relevant similar settings) in the log, at
master's startup.
And even propose a quick diagnostic, a bit à la Dovecot with its "Warning: fd
limit (ulimit -n) is lower than required under max. load (256 < 1000), because
of ..." messages.
It would then be the system administrator's responsibility to provide the right
settings.
I ask, because all of this has always tended to be a mess in the Unix world:
too many interfaces for handling "seemingly similar yet coming with subtle
differences" entities... And the risk is great to spend much time for anyway
encountering another nth edge case, one day or another.
Just musing...
Anyway, I think I'll ask (thru the bugreporter) some clarifications for that
man page; without any other contextual information, that suggestion for a
constant value is indeed somewhat surprising...
Axel