diff options
author | Álvaro Herrera <alvherre@alvh.no-ip.org> | 2025-01-24 12:54:46 +0100 |
---|---|---|
committer | Álvaro Herrera <alvherre@alvh.no-ip.org> | 2025-01-24 12:54:46 +0100 |
commit | c44c2d2759876463dcbab2eb608e33ed2e772d12 (patch) | |
tree | 8ed01aa135b39f983b8ea02dc671be6f958f0772 /src | |
parent | aeb8ea361a0a321a0e1cbc79a4cd3ec0b1191bf2 (diff) | |
download | postgresql-c44c2d2759876463dcbab2eb608e33ed2e772d12.tar.gz postgresql-c44c2d2759876463dcbab2eb608e33ed2e772d12.zip |
Fix instability in recently added regression tests
We missed the usual ORDER BY clause.
Author: Amul Sul <amul.sul@enterprisedb.com>
Discussion: https://postgr.es/m/CAAJ_b974U3Vvf-qGwFyZ73DFHqyFJP9TOmuiXR2Kp8KVcJtP6w@mail.gmail.com
Diffstat (limited to 'src')
-rw-r--r-- | src/test/regress/expected/foreign_key.out | 15 | ||||
-rw-r--r-- | src/test/regress/sql/foreign_key.sql | 15 |
2 files changed, 18 insertions, 12 deletions
diff --git a/src/test/regress/expected/foreign_key.out b/src/test/regress/expected/foreign_key.out index 01ed73b2da4..e5842a208c0 100644 --- a/src/test/regress/expected/foreign_key.out +++ b/src/test/regress/expected/foreign_key.out @@ -1684,7 +1684,7 @@ ALTER TABLE fk_partitioned_fk_1 ADD FOREIGN KEY (a, b) REFERENCES fk_notpartitio ALTER TABLE fk_partitioned_fk ATTACH PARTITION fk_partitioned_fk_1 FOR VALUES FROM (0,0) TO (1000,1000); -- Child constraint will remain valid. SELECT conname, convalidated, conrelid::regclass FROM pg_constraint -WHERE conrelid::regclass::text like 'fk_partitioned_fk%' ORDER BY oid; +WHERE conrelid::regclass::text like 'fk_partitioned_fk%' ORDER BY oid::regclass::text; conname | convalidated | conrelid ------------------------------+--------------+--------------------- fk_partitioned_fk_a_b_fkey | f | fk_partitioned_fk @@ -1695,7 +1695,7 @@ WHERE conrelid::regclass::text like 'fk_partitioned_fk%' ORDER BY oid; ALTER TABLE fk_partitioned_fk VALIDATE CONSTRAINT fk_partitioned_fk_a_b_fkey; -- All constraints are now valid. SELECT conname, convalidated, conrelid::regclass FROM pg_constraint -WHERE conrelid::regclass::text like 'fk_partitioned_fk%' ORDER BY oid; +WHERE conrelid::regclass::text like 'fk_partitioned_fk%' ORDER BY oid::regclass::text; conname | convalidated | conrelid ------------------------------+--------------+--------------------- fk_partitioned_fk_a_b_fkey | t | fk_partitioned_fk @@ -1714,7 +1714,8 @@ DETAIL: Key (a, b)=(1000, 1000) is not present in table "fk_notpartitioned_pk". TRUNCATE fk_partitioned_fk_2; ALTER TABLE fk_partitioned_fk ATTACH PARTITION fk_partitioned_fk_2 FOR VALUES FROM (1000,1000) TO (2000,2000); -- The child constraint will also be valid. -SELECT conname, convalidated FROM pg_constraint WHERE conrelid = 'fk_partitioned_fk_2'::regclass; +SELECT conname, convalidated FROM pg_constraint +WHERE conrelid = 'fk_partitioned_fk_2'::regclass ORDER BY oid::regclass::text; conname | convalidated ------------------------------+-------------- fk_partitioned_fk_2_a_b_fkey | t @@ -1731,7 +1732,7 @@ ALTER TABLE fk_partitioned_fk_3 ATTACH PARTITION fk_partitioned_fk_3_1 FOR VALUE ALTER TABLE fk_partitioned_fk ATTACH PARTITION fk_partitioned_fk_3 FOR VALUES FROM (2000,2000) TO (3000,3000); -- All constraints are now valid. SELECT conname, convalidated, conrelid::regclass FROM pg_constraint -WHERE conrelid::regclass::text like 'fk_partitioned_fk%' ORDER BY oid; +WHERE conrelid::regclass::text like 'fk_partitioned_fk%' ORDER BY oid::regclass::text; conname | convalidated | conrelid --------------------------------+--------------+----------------------- fk_partitioned_fk_a_b_fkey | t | fk_partitioned_fk @@ -1748,7 +1749,8 @@ CREATE TABLE fk_partitioned_pk_1 PARTITION OF fk_partitioned_pk FOR VALUES FROM CREATE TABLE fk_notpartitioned_fk (b int, a int); ALTER TABLE fk_notpartitioned_fk ADD FOREIGN KEY (a, b) REFERENCES fk_partitioned_pk NOT VALID; -- Constraint will be invalid. -SELECT conname, convalidated FROM pg_constraint WHERE conrelid = 'fk_notpartitioned_fk'::regclass; +SELECT conname, convalidated FROM pg_constraint +WHERE conrelid = 'fk_notpartitioned_fk'::regclass ORDER BY oid::regclass::text; conname | convalidated --------------------------------+-------------- fk_notpartitioned_fk_a_b_fkey | f @@ -1757,7 +1759,8 @@ SELECT conname, convalidated FROM pg_constraint WHERE conrelid = 'fk_notpartitio ALTER TABLE fk_notpartitioned_fk VALIDATE CONSTRAINT fk_notpartitioned_fk_a_b_fkey; -- All constraints are now valid. -SELECT conname, convalidated FROM pg_constraint WHERE conrelid = 'fk_notpartitioned_fk'::regclass; +SELECT conname, convalidated FROM pg_constraint +WHERE conrelid = 'fk_notpartitioned_fk'::regclass ORDER BY oid::regclass::text; conname | convalidated --------------------------------+-------------- fk_notpartitioned_fk_a_b_fkey | t diff --git a/src/test/regress/sql/foreign_key.sql b/src/test/regress/sql/foreign_key.sql index d57c7617fd6..45ad41fe59f 100644 --- a/src/test/regress/sql/foreign_key.sql +++ b/src/test/regress/sql/foreign_key.sql @@ -1259,14 +1259,14 @@ ALTER TABLE fk_partitioned_fk ATTACH PARTITION fk_partitioned_fk_1 FOR VALUES FR -- Child constraint will remain valid. SELECT conname, convalidated, conrelid::regclass FROM pg_constraint -WHERE conrelid::regclass::text like 'fk_partitioned_fk%' ORDER BY oid; +WHERE conrelid::regclass::text like 'fk_partitioned_fk%' ORDER BY oid::regclass::text; -- Validate the constraint ALTER TABLE fk_partitioned_fk VALIDATE CONSTRAINT fk_partitioned_fk_a_b_fkey; -- All constraints are now valid. SELECT conname, convalidated, conrelid::regclass FROM pg_constraint -WHERE conrelid::regclass::text like 'fk_partitioned_fk%' ORDER BY oid; +WHERE conrelid::regclass::text like 'fk_partitioned_fk%' ORDER BY oid::regclass::text; -- Attaching a child with a NOT VALID constraint. CREATE TABLE fk_partitioned_fk_2 (a int, b int); @@ -1281,7 +1281,8 @@ TRUNCATE fk_partitioned_fk_2; ALTER TABLE fk_partitioned_fk ATTACH PARTITION fk_partitioned_fk_2 FOR VALUES FROM (1000,1000) TO (2000,2000); -- The child constraint will also be valid. -SELECT conname, convalidated FROM pg_constraint WHERE conrelid = 'fk_partitioned_fk_2'::regclass; +SELECT conname, convalidated FROM pg_constraint +WHERE conrelid = 'fk_partitioned_fk_2'::regclass ORDER BY oid::regclass::text; -- Test case where the child constraint is invalid, the grandchild constraint -- is valid, and the validation for the grandchild should be skipped when a @@ -1295,7 +1296,7 @@ ALTER TABLE fk_partitioned_fk ATTACH PARTITION fk_partitioned_fk_3 FOR VALUES FR -- All constraints are now valid. SELECT conname, convalidated, conrelid::regclass FROM pg_constraint -WHERE conrelid::regclass::text like 'fk_partitioned_fk%' ORDER BY oid; +WHERE conrelid::regclass::text like 'fk_partitioned_fk%' ORDER BY oid::regclass::text; DROP TABLE fk_partitioned_fk, fk_notpartitioned_pk; @@ -1306,12 +1307,14 @@ CREATE TABLE fk_notpartitioned_fk (b int, a int); ALTER TABLE fk_notpartitioned_fk ADD FOREIGN KEY (a, b) REFERENCES fk_partitioned_pk NOT VALID; -- Constraint will be invalid. -SELECT conname, convalidated FROM pg_constraint WHERE conrelid = 'fk_notpartitioned_fk'::regclass; +SELECT conname, convalidated FROM pg_constraint +WHERE conrelid = 'fk_notpartitioned_fk'::regclass ORDER BY oid::regclass::text; ALTER TABLE fk_notpartitioned_fk VALIDATE CONSTRAINT fk_notpartitioned_fk_a_b_fkey; -- All constraints are now valid. -SELECT conname, convalidated FROM pg_constraint WHERE conrelid = 'fk_notpartitioned_fk'::regclass; +SELECT conname, convalidated FROM pg_constraint +WHERE conrelid = 'fk_notpartitioned_fk'::regclass ORDER BY oid::regclass::text; DROP TABLE fk_notpartitioned_fk, fk_partitioned_pk; |