pgsql: Properly initialize SortSupport for ORDER BY rechecks in nodeInd
От | Tom Lane |
---|---|
Тема | pgsql: Properly initialize SortSupport for ORDER BY rechecks in nodeInd |
Дата | |
Msg-id | E1b9aMZ-0003po-0M@gemulon.postgresql.org обсуждение исходный текст |
Список | pgsql-committers |
Properly initialize SortSupport for ORDER BY rechecks in nodeIndexscan.c. Fix still another bug in commit 35fcb1b3d: it failed to fully initialize the SortSupport states it introduced to allow the executor to re-check ORDER BY expressions containing distance operators. That led to a null pointer dereference if the sortsupport code tried to use ssup_cxt. The problem only manifests in narrow cases, explaining the lack of previous field reports. It requires a GiST-indexable distance operator that lacks SortSupport and is on a pass-by-ref data type, which among core+contrib seems to be only btree_gist's interval opclass; and it requires the scan to be done as an IndexScan not an IndexOnlyScan, which explains how btree_gist's regression test didn't catch it. Per bug #14134 from Jihyun Yu. Peter Geoghegan Report: <20160511154904.2603.43889@wrigleys.postgresql.org> Branch ------ master Details ------- http://git.postgresql.org/pg/commitdiff/8a859691d548dc4733b8bb302c624fbc012db534 Modified Files -------------- contrib/btree_gist/expected/interval.out | 18 ++++++++++++++++++ contrib/btree_gist/sql/interval.sql | 6 ++++++ src/backend/executor/nodeIndexscan.c | 15 +++++++++++++-- 3 files changed, 37 insertions(+), 2 deletions(-)
В списке pgsql-committers по дате отправления: