pgsql: In count_usable_fds(), duplicate stderr not stdin.
От | Tom Lane |
---|---|
Тема | pgsql: In count_usable_fds(), duplicate stderr not stdin. |
Дата | |
Msg-id | E1mLvaB-0000Tn-Pm@gemulon.postgresql.org обсуждение исходный текст |
Список | pgsql-committers |
In count_usable_fds(), duplicate stderr not stdin. We had a complaint that the postmaster fails to start if the invoking program closes stdin. That happens because count_usable_fds expects to be able to dup(0), and if it can't, we conclude there are no free FDs and go belly-up. So far as I can find, though, there is no other place in the server that touches stdin, and it's not unreasonable to expect that a daemon wouldn't use that file. As a simple improvement, let's dup FD 2 (stderr) instead. Unlike stdin, it *is* reasonable for us to expect that stderr be open; even if we are configured not to touch it, common libraries such as libc might try to write error messages there. Per gripe from Mario Emmenlauer. Given the lack of previous complaints, I'm not excited about pushing this into stable branches, but it seems OK to squeeze it into v14. Discussion: https://postgr.es/m/48bafc63-c30f-3962-2ded-f2e985d93e86@emmenlauer.de Branch ------ master Details ------- https://git.postgresql.org/pg/commitdiff/c95ede41b8d47b21d58702fbc519e720f41fdaf1 Modified Files -------------- src/backend/storage/file/fd.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-)
В списке pgsql-committers по дате отправления: