pgsql: In count_usable_fds(), duplicate stderr not stdin.

Поиск
Список
Период
Сортировка
От Tom Lane
Тема pgsql: In count_usable_fds(), duplicate stderr not stdin.
Дата
Msg-id E1mLvaB-0000To-QB@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
------
REL_14_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/6b54f12332a184bfd03524c012795678ddc992f4

Modified Files
--------------
src/backend/storage/file/fd.c | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)


В списке pgsql-committers по дате отправления:

Предыдущее
От: Tom Lane
Дата:
Сообщение: pgsql: Fix float4/float8 hash functions to produce uniform results for
Следующее
От: Peter Eisentraut
Дата:
Сообщение: pgsql: Fix pkg-config files for static linking