| От | Peter Eisentraut |
|---|---|
| Тема | pgsql: Fix crash when canceling parallel query |
| Дата | |
| Msg-id | E1emnSH-0000PJ-Dx@gemulon.postgresql.org обсуждение исходный текст |
| Список | pgsql-committers |
Fix crash when canceling parallel query elog(FATAL) would end up calling PortalCleanup(), which would call executor shutdown code, which could fail and crash, especially under parallel query. This was introduced by 8561e4840c81f7e345be2df170839846814fa004, which did not want to mark an active portal as failed by a normal transaction abort anymore. But we do need to do that for an elog(FATAL) exit. Introduce a variable shmem_exit_inprogress similar to the existing proc_exit_inprogress, so we can tell whether we are in the FATAL exit scenario. Reported-by: Andres Freund <andres@anarazel.de> Branch ------ master Details ------- https://git.postgresql.org/pg/commitdiff/ad9a274778d2d88c46b90309212b92ee7fdf9afe Modified Files -------------- src/backend/storage/ipc/ipc.c | 7 +++++++ src/backend/utils/mmgr/portalmem.c | 8 ++++++++ src/include/storage/ipc.h | 1 + 3 files changed, 16 insertions(+)
В списке pgsql-committers по дате отправления:
Сайт использует файлы cookie для корректной работы и повышения удобства. Нажимая кнопку «Принять» или продолжая пользоваться сайтом, вы соглашаетесь на их использование в соответствии с Политикой в отношении обработки cookie ООО «ППГ», в том числе на передачу данных из файлов cookie сторонним статистическим и рекламным службам. Вы можете управлять настройками cookie через параметры вашего браузера