pgsql: Make dsm_impl_posix_resize more future-proof.

Поиск
Список
Период
Сортировка
От Thomas Munro
Тема pgsql: Make dsm_impl_posix_resize more future-proof.
Дата
Msg-id E1oCVgB-000Ood-AC@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Make dsm_impl_posix_resize more future-proof.

Commit 4518c798 blocks signals for a short region of code, but it
assumed that whatever called it had the signal mask set to UnBlockSig on
entry.  That may be true today (or may even not be, in extensions in the
wild), but it would be better not to make that assumption.  We should
save-and-restore the caller's signal mask.

The PG_SETMASK() portability macro couldn't be used for that, which is
why it wasn't done before.  But... considering that commit a65e0864
established back in 9.6 that supported POSIX systems have sigprocmask(),
and that this is POSIX-only code, there is no reason not to use standard
sigprocmask() directly to achieve that.

Back-patch to all supported releases, like 4518c798 and 80845b7c.

Reviewed-by: Alvaro Herrera <alvherre@alvh.no-ip.org>
Reviewed-by: Tom Lane <tgl@sss.pgh.pa.us>
Discussion: https://postgr.es/m/CA%2BhUKGKx6Biq7_UuV0kn9DW%2B8QWcpJC1qwhizdtD9tN-fn0H0g%40mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/3b8d23a3e14f05890f1f306902cd4b992beeee71

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


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

Предыдущее
От: Peter Eisentraut
Дата:
Сообщение: pgsql: Log details for client certificate failures
Следующее
От: Thomas Munro
Дата:
Сообщение: pgsql: Make dsm_impl_posix_resize more future-proof.