pgsql: Don't shut down Gather[Merge] early under Limit.
От | Amit Kapila |
---|---|
Тема | pgsql: Don't shut down Gather[Merge] early under Limit. |
Дата | |
Msg-id | E1iZSQ8-0008K5-NJ@gemulon.postgresql.org обсуждение исходный текст |
Список | pgsql-committers |
Don't shut down Gather[Merge] early under Limit. Revert part of commit 19df1702f5. Early shutdown was added by that commit so that we could collect statistics from workers, but unfortunately, it interacted badly with rescans. The problem is that we ended up destroying the parallel context which is required for rescans. This leads to rescans of a Limit node over a Gather node to produce unpredictable results as it tries to access destroyed parallel context. By reverting the early shutdown code, we might lose statistics in some cases of Limit over Gather [Merge], but that will require further study to fix. Reported-by: Jerry Sievers Diagnosed-by: Thomas Munro Author: Amit Kapila, testcase by Vignesh C Backpatch-through: 9.6 Discussion: https://postgr.es/m/87ims2amh6.fsf@jsievers.enova.com Branch ------ REL_12_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/1cc3a90c7551cf1f33611152eba2bca56e0b721e Modified Files -------------- src/backend/executor/nodeLimit.c | 14 ++++----- src/test/regress/expected/select_parallel.out | 41 ++++++++++++++++++++++++++- src/test/regress/sql/select_parallel.sql | 22 +++++++++++++- 3 files changed, 67 insertions(+), 10 deletions(-)
В списке pgsql-committers по дате отправления: