Re: Bump soft open file limit (RLIMIT_NOFILE) to hard limit on startup
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Andres Freund <andres@anarazel.de>
Cc: Tomas Vondra <tomas@vondra.me>, Jelte Fennema-Nio <postgres@jeltef.nl>,
PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2025-02-11T22:55:39Z
Lists: pgsql-hackers
Andres Freund <andres@anarazel.de> writes: > In the current version of the AIO patchset, the creation of those io_uring > instances does happen as part of an shmem init callback, as the io uring > creation also sets up queues visible in shmem. Hmm. > So the issue would actually be that we're currently doing set_max_safe_fds() > too late, not too early :/ Well, we'd rather set_max_safe_fds happen after semaphore creation, so that it doesn't have to be explicitly aware of whether semaphores consume FDs. Could we have it be aware of how many FDs *will be* needed for io_uring, but postpone creation of those until after we jack up RLIMIT_NOFILE? I guess the other way would be to have two rounds of RLIMIT_NOFILE adjustment, before and after shmem creation. That seems ugly but shouldn't be very time-consuming. regards, tom lane
Commits
-
Redefine max_files_per_process to control additionally opened files
- adb5f85fa5a0 18.0 landed
-
pgbench: Increase RLIMIT_NOFILE if necessary
- d38bab5edd60 18.0 landed
-
Move extra code out of the Pre/PostRestoreCommand() section.
- 8fb13dd6ab5b 17.0 cited