aboutsummaryrefslogtreecommitdiff
path: root/src/test/regress/expected/indexing.out
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/regress/expected/indexing.out')
-rw-r--r--src/test/regress/expected/indexing.out30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/test/regress/expected/indexing.out b/src/test/regress/expected/indexing.out
index 2dcfa92cb4f..2408fbf67c1 100644
--- a/src/test/regress/expected/indexing.out
+++ b/src/test/regress/expected/indexing.out
@@ -1419,3 +1419,33 @@ Indexes:
"parted_index_col_drop11_b_idx" btree (b)
drop table parted_index_col_drop;
+-- Check that invalid indexes are not selected when attaching a partition.
+create table parted_inval_tab (a int) partition by range (a);
+create index parted_inval_idx on parted_inval_tab (a);
+create table parted_inval_tab_1 (a int) partition by range (a);
+create table parted_inval_tab_1_1 partition of parted_inval_tab_1
+ for values from (0) to (10);
+create table parted_inval_tab_1_2 partition of parted_inval_tab_1
+ for values from (10) to (20);
+-- this creates an invalid index.
+create index parted_inval_ixd_1 on only parted_inval_tab_1 (a);
+-- this creates new indexes for all the partitions of parted_inval_tab_1,
+-- discarding the invalid index created previously as what is chosen.
+alter table parted_inval_tab attach partition parted_inval_tab_1
+ for values from (1) to (100);
+select indexrelid::regclass, indisvalid,
+ indrelid::regclass, inhparent::regclass
+ from pg_index idx left join
+ pg_inherits inh on (idx.indexrelid = inh.inhrelid)
+ where indexrelid::regclass::text like 'parted_inval%'
+ order by indexrelid::regclass::text collate "C";
+ indexrelid | indisvalid | indrelid | inhparent
+----------------------------+------------+----------------------+--------------------------
+ parted_inval_idx | t | parted_inval_tab |
+ parted_inval_ixd_1 | f | parted_inval_tab_1 |
+ parted_inval_tab_1_1_a_idx | t | parted_inval_tab_1_1 | parted_inval_tab_1_a_idx
+ parted_inval_tab_1_2_a_idx | t | parted_inval_tab_1_2 | parted_inval_tab_1_a_idx
+ parted_inval_tab_1_a_idx | t | parted_inval_tab_1 | parted_inval_idx
+(5 rows)
+
+drop table parted_inval_tab;