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: <[email protected]> Branch ------ REL9_5_STABLE Details ------- http://git.postgresql.org/pg/commitdiff/a7aa61ffe7ed12cf8d5cbdfc887900549f9ed354 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(-) -- Sent via pgsql-committers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-committers
