]> granicus.if.org Git - postgresql/commit
Fix CLUSTER on expression indexes.
authorAndres Freund <andres@anarazel.de>
Tue, 15 Oct 2019 17:40:13 +0000 (10:40 -0700)
committerAndres Freund <andres@anarazel.de>
Tue, 15 Oct 2019 17:40:51 +0000 (10:40 -0700)
commit6d3fe6b6bf05777cb7152b462594a1993af15857
treea51704d01ab7687ac0bb7b72730089a8b63589f9
parent702fd3b717f59b1fada3742f2f0eb529717fc3f9
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
src/backend/utils/sort/tuplesort.c
src/test/regress/expected/cluster.out
src/test/regress/sql/cluster.sql