Add some isolation tests for CLUSTER
This commit adds two isolation tests for CLUSTER, using:
- A normal table, making sure that CLUSTER blocks and completes if the
table is locked by a concurrent session.
- A partitioned table with a partition owned by a different user. If
the partitioned table is locked by a concurrent session, CLUSTER on the
partitioned table should block. If the partition owned by a different
user is locked, CLUSTER on its partitioned table should complete and
skip the partition. 3f19e17 has added an early check to ignore such a
partition with a SQL regression test, but this was not checking that
CLUSTER should not block.
Discussion: https://postgr.es/m/YlqveniXn9AI6RFZ@paquier.xyz
Branch
------
master
Details
-------
https://git.postgresql.org/pg/commitdiff/21a10368eb3fce73f146d7e48b4d81496f60d965
Modified Files
--------------
.../expected/cluster-conflict-partition.out | 35 ++++++++++++++++++++
src/test/isolation/expected/cluster-conflict.out | 19 +++++++++++
src/test/isolation/isolation_schedule | 2 ++
.../specs/cluster-conflict-partition.spec | 37 ++++++++++++++++++++++
src/test/isolation/specs/cluster-conflict.spec | 30 ++++++++++++++++++
5 files changed, 123 insertions(+)