pgsql: Fix CLUSTER on expression indexes.

From: Andres Freund <andres(at)anarazel(dot)de>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Fix CLUSTER on expression indexes.
Date: 2019-10-15 17:46:08
Message-ID: E1iKQtc-00049G-W8@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Fix CLUSTER on expression indexes.

Since the introduction of different slot types, in 1a0586de3657, we
create a virtual slot in tuplesort_begin_cluster(). While that looks
right, it unfortunately doesn't actually work, as ExecStoreHeapTuple()
is used to store tuples in the slot. Unfortunately no regression tests
for CLUSTER on expression indexes existed so far.

Fix the slot type, and add bare bones tests for CLUSTER on expression
indexes.

Reported-By: Justin Pryzby
Author: Andres Freund
Discussion: https://postgr.es/m/20191011210320.GS10470@telsasoft.com
Backpatch: 12, like 1a0586de3657

Branch
------
master

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

Modified Files
--------------
src/backend/utils/sort/tuplesort.c | 2 +-
src/test/regress/expected/cluster.out | 107 ++++++++++++++++++++++++++++++++++
src/test/regress/sql/cluster.sql | 37 ++++++++++++
3 files changed, 145 insertions(+), 1 deletion(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Andres Freund 2019-10-15 17:46:12 pgsql: Fix CLUSTER on expression indexes.
Previous Message Tomas Vondra 2019-10-14 22:36:07 pgsql: Correct reference to pg_catalog.regtype in pg_upgrade query