Skip to content

Commit fcd3f7e

Browse files
committed
Added pg_repack runs to check the get_order_by definitions work
1 parent 13cf867 commit fcd3f7e

File tree

2 files changed

+44
-23
lines changed

2 files changed

+44
-23
lines changed

bin/expected/repack.out

Lines changed: 20 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -317,39 +317,48 @@ ERROR: relation "tbl_nn_puk" must have a primary key or not-null unique keys
317317
--
318318
-- pg_repack issue #3
319319
--
320-
CREATE TABLE issue3 (col1 int NOT NULL, col2 text NOT NULL);
321-
CREATE UNIQUE INDEX issue3_idx1 ON issue3 (col1, col2 DESC);
322-
CREATE UNIQUE INDEX issue3_idx2 ON issue3 (col1 DESC, col2 text_pattern_ops);
323-
CREATE UNIQUE INDEX issue3_idx3 ON issue3 (col1 DESC, col2 DESC);
324-
CREATE UNIQUE INDEX issue3_idx4 ON issue3 (col1 NULLS FIRST, col2 text_pattern_ops DESC NULLS LAST);
325-
CREATE UNIQUE INDEX issue3_idx5 ON issue3 (col1 DESC NULLS FIRST, col2 COLLATE "POSIX" DESC);
326-
SELECT repack.get_order_by('issue3_idx1'::regclass::oid, 'issue3'::regclass::oid);
320+
CREATE TABLE issue3_1 (col1 int NOT NULL, col2 text NOT NULL);
321+
CREATE UNIQUE INDEX issue3_1_idx ON issue3_1 (col1, col2 DESC);
322+
SELECT repack.get_order_by('issue3_1_idx'::regclass::oid, 'issue3_1'::regclass::oid);
327323
get_order_by
328324
-----------------
329325
col1, col2 DESC
330326
(1 row)
331327

332-
SELECT repack.get_order_by('issue3_idx2'::regclass::oid, 'issue3'::regclass::oid);
328+
\! pg_repack --dbname=contrib_regression --no-order --table=issue3_1
329+
CREATE TABLE issue3_2 (col1 int NOT NULL, col2 text NOT NULL);
330+
CREATE UNIQUE INDEX issue3_2_idx ON issue3_2 (col1 DESC, col2 text_pattern_ops);
331+
SELECT repack.get_order_by('issue3_2_idx'::regclass::oid, 'issue3_2'::regclass::oid);
333332
get_order_by
334333
---------------------------
335334
col1 DESC, col2 USING ~<~
336335
(1 row)
337336

338-
SELECT repack.get_order_by('issue3_idx3'::regclass::oid, 'issue3'::regclass::oid);
337+
\! pg_repack --dbname=contrib_regression --no-order --table=issue3_2
338+
CREATE TABLE issue3_3 (col1 int NOT NULL, col2 text NOT NULL);
339+
CREATE UNIQUE INDEX issue3_3_idx ON issue3_3 (col1 DESC, col2 DESC);
340+
SELECT repack.get_order_by('issue3_3_idx'::regclass::oid, 'issue3_3'::regclass::oid);
339341
get_order_by
340342
----------------------
341343
col1 DESC, col2 DESC
342344
(1 row)
343345

344-
SELECT repack.get_order_by('issue3_idx4'::regclass::oid, 'issue3'::regclass::oid);
346+
\! pg_repack --dbname=contrib_regression --no-order --table=issue3_3
347+
CREATE TABLE issue3_4 (col1 int NOT NULL, col2 text NOT NULL);
348+
CREATE UNIQUE INDEX issue3_4_idx ON issue3_4 (col1 NULLS FIRST, col2 text_pattern_ops DESC NULLS LAST);
349+
SELECT repack.get_order_by('issue3_4_idx'::regclass::oid, 'issue3_4'::regclass::oid);
345350
get_order_by
346351
--------------------------------------------------
347352
col1 NULLS FIRST, col2 DESC USING ~<~ NULLS LAST
348353
(1 row)
349354

350-
SELECT repack.get_order_by('issue3_idx5'::regclass::oid, 'issue3'::regclass::oid);
355+
\! pg_repack --dbname=contrib_regression --no-order --table=issue3_4
356+
CREATE TABLE issue3_5 (col1 int NOT NULL, col2 text NOT NULL);
357+
CREATE UNIQUE INDEX issue3_5_idx ON issue3_5 (col1 DESC NULLS FIRST, col2 COLLATE "POSIX" DESC);
358+
SELECT repack.get_order_by('issue3_5_idx'::regclass::oid, 'issue3_5'::regclass::oid);
351359
get_order_by
352360
--------------------------------------
353361
col1 DESC, col2 COLLATE "POSIX" DESC
354362
(1 row)
355363

364+
\! pg_repack --dbname=contrib_regression --no-order --table=issue3_5

bin/sql/repack.sql

Lines changed: 24 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -191,15 +191,27 @@ CREATE UNIQUE INDEX tbl_nn_puk_pcol1_idx ON tbl_nn_puk(col1) WHERE col1 < 10;
191191
--
192192
-- pg_repack issue #3
193193
--
194-
CREATE TABLE issue3 (col1 int NOT NULL, col2 text NOT NULL);
195-
CREATE UNIQUE INDEX issue3_idx1 ON issue3 (col1, col2 DESC);
196-
CREATE UNIQUE INDEX issue3_idx2 ON issue3 (col1 DESC, col2 text_pattern_ops);
197-
CREATE UNIQUE INDEX issue3_idx3 ON issue3 (col1 DESC, col2 DESC);
198-
CREATE UNIQUE INDEX issue3_idx4 ON issue3 (col1 NULLS FIRST, col2 text_pattern_ops DESC NULLS LAST);
199-
CREATE UNIQUE INDEX issue3_idx5 ON issue3 (col1 DESC NULLS FIRST, col2 COLLATE "POSIX" DESC);
200-
201-
SELECT repack.get_order_by('issue3_idx1'::regclass::oid, 'issue3'::regclass::oid);
202-
SELECT repack.get_order_by('issue3_idx2'::regclass::oid, 'issue3'::regclass::oid);
203-
SELECT repack.get_order_by('issue3_idx3'::regclass::oid, 'issue3'::regclass::oid);
204-
SELECT repack.get_order_by('issue3_idx4'::regclass::oid, 'issue3'::regclass::oid);
205-
SELECT repack.get_order_by('issue3_idx5'::regclass::oid, 'issue3'::regclass::oid);
194+
CREATE TABLE issue3_1 (col1 int NOT NULL, col2 text NOT NULL);
195+
CREATE UNIQUE INDEX issue3_1_idx ON issue3_1 (col1, col2 DESC);
196+
SELECT repack.get_order_by('issue3_1_idx'::regclass::oid, 'issue3_1'::regclass::oid);
197+
\! pg_repack --dbname=contrib_regression --no-order --table=issue3_1
198+
199+
CREATE TABLE issue3_2 (col1 int NOT NULL, col2 text NOT NULL);
200+
CREATE UNIQUE INDEX issue3_2_idx ON issue3_2 (col1 DESC, col2 text_pattern_ops);
201+
SELECT repack.get_order_by('issue3_2_idx'::regclass::oid, 'issue3_2'::regclass::oid);
202+
\! pg_repack --dbname=contrib_regression --no-order --table=issue3_2
203+
204+
CREATE TABLE issue3_3 (col1 int NOT NULL, col2 text NOT NULL);
205+
CREATE UNIQUE INDEX issue3_3_idx ON issue3_3 (col1 DESC, col2 DESC);
206+
SELECT repack.get_order_by('issue3_3_idx'::regclass::oid, 'issue3_3'::regclass::oid);
207+
\! pg_repack --dbname=contrib_regression --no-order --table=issue3_3
208+
209+
CREATE TABLE issue3_4 (col1 int NOT NULL, col2 text NOT NULL);
210+
CREATE UNIQUE INDEX issue3_4_idx ON issue3_4 (col1 NULLS FIRST, col2 text_pattern_ops DESC NULLS LAST);
211+
SELECT repack.get_order_by('issue3_4_idx'::regclass::oid, 'issue3_4'::regclass::oid);
212+
\! pg_repack --dbname=contrib_regression --no-order --table=issue3_4
213+
214+
CREATE TABLE issue3_5 (col1 int NOT NULL, col2 text NOT NULL);
215+
CREATE UNIQUE INDEX issue3_5_idx ON issue3_5 (col1 DESC NULLS FIRST, col2 COLLATE "POSIX" DESC);
216+
SELECT repack.get_order_by('issue3_5_idx'::regclass::oid, 'issue3_5'::regclass::oid);
217+
\! pg_repack --dbname=contrib_regression --no-order --table=issue3_5

0 commit comments

Comments
 (0)