pgsql: Fix handling of REWIND/MARK/BACKWARD in incremental sort

Поиск
Список
Период
Сортировка
От Tomas Vondra
Тема pgsql: Fix handling of REWIND/MARK/BACKWARD in incremental sort
Дата
Msg-id E1jXTUB-0001VM-Jp@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Fix handling of REWIND/MARK/BACKWARD in incremental sort

The executor flags were not handled entirely correctly, although the
bugs were mostly harmless and it was mostly comment inaccuracy. We don't
need to strip any of the flags for child nodes.

Incremental sort does not support backward scans of mark/restore, so
MARK/BACKWARDS flags should not be possible. So we simply ensure this
using an assert, and we don't bother removing them when initializing
the child node.

With REWIND it's a bit less clear - incremental sort does not support
REWIND, but there is no way to signal this - it's legal to just ignore
the flag. We however continue passing the flag to child nodes, because
they might be useful to leverage that.

Reported-by: Michael Paquier
Author: James Coleman
Reviewed-by: Tomas Vondra
Discussion: https://postgr.es/m/20200414065336.GI1492@paquier.xyz

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/c4427226483c78618ba45eff34917400a77718a5

Modified Files
--------------
src/backend/executor/nodeIncrementalSort.c | 20 ++++++++++----------
1 file changed, 10 insertions(+), 10 deletions(-)


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

Предыдущее
От: Tom Lane
Дата:
Сообщение: pgsql: Update oidjoins regression test for v13.
Следующее
От: Tom Lane
Дата:
Сообщение: pgsql: Fix findoidjoins to recognize oidvector columns.