mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2026-05-05 04:56:10 +02:00
BUG/MINOR: init: always ensure that global.rlimit_nofile matches actual limits
global.rlimit_nofile contains the mxa number of file descriptors that can be allocated, except if the user is not allowed to reach this limit, where it still contains the initially requested value. It is important that this value always matches what is really configured so that it is properly reported in the stats and that we can use it later to close all FDs without wasting time closing impossible FDs. This fix may be backported to 1.6 and 1.5.
This commit is contained in:
parent
9075968356
commit
ef6354719b
@ -1769,7 +1769,10 @@ int main(int argc, char **argv)
|
||||
if (global.rlimit_nofile) {
|
||||
limit.rlim_cur = limit.rlim_max = global.rlimit_nofile;
|
||||
if (setrlimit(RLIMIT_NOFILE, &limit) == -1) {
|
||||
Warning("[%s.main()] Cannot raise FD limit to %d.\n", argv[0], global.rlimit_nofile);
|
||||
/* try to set it to the max possible at least */
|
||||
getrlimit(RLIMIT_NOFILE, &limit);
|
||||
Warning("[%s.main()] Cannot raise FD limit to %d, limit is %d.\n", argv[0], global.rlimit_nofile, (int)limit.rlim_cur);
|
||||
global.rlimit_nofile = limit.rlim_cur;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user