pgsql: Defer restoration of libraries in parallel workers.

Поиск
Список
Период
Сортировка
От Thomas Munro
Тема pgsql: Defer restoration of libraries in parallel workers.
Дата
Msg-id E1g2od8-0008Vh-S1@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Defer restoration of libraries in parallel workers.

Several users of extensions complained of crashes in parallel workers
that turned out to be due to syscache access from their _PG_init()
functions.  Reorder the initialization of parallel workers so that
libraries are restored after the caches are initialized, and inside a
transaction.

This was reported in bug #15350 and elsewhere.  We don't consider it
to be a bug: extensions shouldn't do that, because then they can't be
used in shared_preload_libraries.  However, it's a fairly obscure
hazard and these extensions worked in practice before parallel query
came along.  So let's make it work.  Later commits might add a warning
message and eventually an error.

Back-patch to 9.6, where parallel query landed.

Author: Thomas Munro
Reviewed-by: Amit Kapila
Reported-by: Kieran McCusker, Jimmy
Discussion: https://postgr.es/m/153512195228.1489.8545997741965926448%40wrigleys.postgresql.org

Branch
------
REL_11_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/9d178fb928040f1a5ab5b566f1ec76d7ac554587

Modified Files
--------------
src/backend/access/transam/parallel.c | 18 +++++++++---------
1 file changed, 9 insertions(+), 9 deletions(-)


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

Предыдущее
От: Thomas Munro
Дата:
Сообщение: pgsql: Defer restoration of libraries in parallel workers.
Следующее
От: Thomas Munro
Дата:
Сообщение: pgsql: Defer restoration of libraries in parallel workers.