summaryrefslogtreecommitdiff
path: root/src/test
diff options
context:
space:
mode:
Diffstat (limited to 'src/test')
-rw-r--r--src/test/regress/output/cluster.out232
-rw-r--r--src/test/regress/sql/cluster.sql72
2 files changed, 304 insertions, 0 deletions
diff --git a/src/test/regress/output/cluster.out b/src/test/regress/output/cluster.out
new file mode 100644
index 00000000000..67f1f8a8b7a
--- /dev/null
+++ b/src/test/regress/output/cluster.out
@@ -0,0 +1,232 @@
+--
+-- CLUSTER
+--
+CREATE TABLE clstr_tst_s (rf_a SERIAL PRIMARY KEY,
+ b INT);
+NOTICE: CREATE TABLE will create implicit sequence 'clstr_tst_s_rf_a_seq' for SERIAL column 'clstr_tst_s.rf_a'
+NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index 'clstr_tst_s_pkey' for table 'clstr_tst_s'
+CREATE TABLE clstr_tst (a SERIAL PRIMARY KEY,
+ b INT,
+ c TEXT,
+ CONSTRAINT clstr_tst_con FOREIGN KEY (b) REFERENCES clstr_tst_s);
+NOTICE: CREATE TABLE will create implicit sequence 'clstr_tst_a_seq' for SERIAL column 'clstr_tst.a'
+NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index 'clstr_tst_pkey' for table 'clstr_tst'
+NOTICE: CREATE TABLE will create implicit trigger(s) for FOREIGN KEY check(s)
+CREATE INDEX clstr_tst_b ON clstr_tst (b);
+CREATE INDEX clstr_tst_c ON clstr_tst (c);
+CREATE INDEX clstr_tst_c_b ON clstr_tst (c,b);
+CREATE INDEX clstr_tst_b_c ON clstr_tst (b,c);
+INSERT INTO clstr_tst_s (b) VALUES (0);
+INSERT INTO clstr_tst_s (b) SELECT b FROM clstr_tst_s;
+INSERT INTO clstr_tst_s (b) SELECT b FROM clstr_tst_s;
+INSERT INTO clstr_tst_s (b) SELECT b FROM clstr_tst_s;
+INSERT INTO clstr_tst_s (b) SELECT b FROM clstr_tst_s;
+INSERT INTO clstr_tst_s (b) SELECT b FROM clstr_tst_s;
+CREATE TABLE clstr_tst_inh () INHERITS (clstr_tst);
+INSERT INTO clstr_tst (b, c) VALUES (11, 'once');
+INSERT INTO clstr_tst (b, c) VALUES (10, 'diez');
+INSERT INTO clstr_tst (b, c) VALUES (31, 'treinta y uno');
+INSERT INTO clstr_tst (b, c) VALUES (22, 'veintidos');
+INSERT INTO clstr_tst (b, c) VALUES (3, 'tres');
+INSERT INTO clstr_tst (b, c) VALUES (20, 'veinte');
+INSERT INTO clstr_tst (b, c) VALUES (23, 'veintitres');
+INSERT INTO clstr_tst (b, c) VALUES (21, 'veintiuno');
+INSERT INTO clstr_tst (b, c) VALUES (4, 'cuatro');
+INSERT INTO clstr_tst (b, c) VALUES (14, 'catorce');
+INSERT INTO clstr_tst (b, c) VALUES (2, 'dos');
+INSERT INTO clstr_tst (b, c) VALUES (18, 'dieciocho');
+INSERT INTO clstr_tst (b, c) VALUES (27, 'veintisiete');
+INSERT INTO clstr_tst (b, c) VALUES (25, 'veinticinco');
+INSERT INTO clstr_tst (b, c) VALUES (13, 'trece');
+INSERT INTO clstr_tst (b, c) VALUES (28, 'veintiocho');
+INSERT INTO clstr_tst (b, c) VALUES (32, 'treinta y dos');
+INSERT INTO clstr_tst (b, c) VALUES (5, 'cinco');
+INSERT INTO clstr_tst (b, c) VALUES (29, 'veintinueve');
+INSERT INTO clstr_tst (b, c) VALUES (1, 'uno');
+INSERT INTO clstr_tst (b, c) VALUES (24, 'veinticuatro');
+INSERT INTO clstr_tst (b, c) VALUES (30, 'treinta');
+INSERT INTO clstr_tst (b, c) VALUES (12, 'doce');
+INSERT INTO clstr_tst (b, c) VALUES (17, 'diecisiete');
+INSERT INTO clstr_tst (b, c) VALUES (9, 'nueve');
+INSERT INTO clstr_tst (b, c) VALUES (19, 'diecinueve');
+INSERT INTO clstr_tst (b, c) VALUES (26, 'veintiseis');
+INSERT INTO clstr_tst (b, c) VALUES (15, 'quince');
+INSERT INTO clstr_tst (b, c) VALUES (7, 'siete');
+INSERT INTO clstr_tst (b, c) VALUES (16, 'dieciseis');
+INSERT INTO clstr_tst (b, c) VALUES (8, 'ocho');
+INSERT INTO clstr_tst (b, c) VALUES (6, 'seis');
+CLUSTER clstr_tst_c ON clstr_tst;
+SELECT * from clstr_tst;
+ a | b | c
+----+----+---------------
+ 10 | 14 | catorce
+ 18 | 5 | cinco
+ 9 | 4 | cuatro
+ 26 | 19 | diecinueve
+ 12 | 18 | dieciocho
+ 30 | 16 | dieciseis
+ 24 | 17 | diecisiete
+ 2 | 10 | diez
+ 23 | 12 | doce
+ 11 | 2 | dos
+ 25 | 9 | nueve
+ 31 | 8 | ocho
+ 1 | 11 | once
+ 28 | 15 | quince
+ 32 | 6 | seis
+ 29 | 7 | siete
+ 15 | 13 | trece
+ 22 | 30 | treinta
+ 17 | 32 | treinta y dos
+ 3 | 31 | treinta y uno
+ 5 | 3 | tres
+ 20 | 1 | uno
+ 6 | 20 | veinte
+ 14 | 25 | veinticinco
+ 21 | 24 | veinticuatro
+ 4 | 22 | veintidos
+ 19 | 29 | veintinueve
+ 16 | 28 | veintiocho
+ 27 | 26 | veintiseis
+ 13 | 27 | veintisiete
+ 7 | 23 | veintitres
+ 8 | 21 | veintiuno
+(32 rows)
+
+SELECT * from clstr_tst ORDER BY a;
+ a | b | c
+----+----+---------------
+ 1 | 11 | once
+ 2 | 10 | diez
+ 3 | 31 | treinta y uno
+ 4 | 22 | veintidos
+ 5 | 3 | tres
+ 6 | 20 | veinte
+ 7 | 23 | veintitres
+ 8 | 21 | veintiuno
+ 9 | 4 | cuatro
+ 10 | 14 | catorce
+ 11 | 2 | dos
+ 12 | 18 | dieciocho
+ 13 | 27 | veintisiete
+ 14 | 25 | veinticinco
+ 15 | 13 | trece
+ 16 | 28 | veintiocho
+ 17 | 32 | treinta y dos
+ 18 | 5 | cinco
+ 19 | 29 | veintinueve
+ 20 | 1 | uno
+ 21 | 24 | veinticuatro
+ 22 | 30 | treinta
+ 23 | 12 | doce
+ 24 | 17 | diecisiete
+ 25 | 9 | nueve
+ 26 | 19 | diecinueve
+ 27 | 26 | veintiseis
+ 28 | 15 | quince
+ 29 | 7 | siete
+ 30 | 16 | dieciseis
+ 31 | 8 | ocho
+ 32 | 6 | seis
+(32 rows)
+
+SELECT * from clstr_tst ORDER BY b;
+ a | b | c
+----+----+---------------
+ 20 | 1 | uno
+ 11 | 2 | dos
+ 5 | 3 | tres
+ 9 | 4 | cuatro
+ 18 | 5 | cinco
+ 32 | 6 | seis
+ 29 | 7 | siete
+ 31 | 8 | ocho
+ 25 | 9 | nueve
+ 2 | 10 | diez
+ 1 | 11 | once
+ 23 | 12 | doce
+ 15 | 13 | trece
+ 10 | 14 | catorce
+ 28 | 15 | quince
+ 30 | 16 | dieciseis
+ 24 | 17 | diecisiete
+ 12 | 18 | dieciocho
+ 26 | 19 | diecinueve
+ 6 | 20 | veinte
+ 8 | 21 | veintiuno
+ 4 | 22 | veintidos
+ 7 | 23 | veintitres
+ 21 | 24 | veinticuatro
+ 14 | 25 | veinticinco
+ 27 | 26 | veintiseis
+ 13 | 27 | veintisiete
+ 16 | 28 | veintiocho
+ 19 | 29 | veintinueve
+ 22 | 30 | treinta
+ 3 | 31 | treinta y uno
+ 17 | 32 | treinta y dos
+(32 rows)
+
+SELECT * from clstr_tst ORDER BY c;
+ a | b | c
+----+----+---------------
+ 10 | 14 | catorce
+ 18 | 5 | cinco
+ 9 | 4 | cuatro
+ 26 | 19 | diecinueve
+ 12 | 18 | dieciocho
+ 30 | 16 | dieciseis
+ 24 | 17 | diecisiete
+ 2 | 10 | diez
+ 23 | 12 | doce
+ 11 | 2 | dos
+ 25 | 9 | nueve
+ 31 | 8 | ocho
+ 1 | 11 | once
+ 28 | 15 | quince
+ 32 | 6 | seis
+ 29 | 7 | siete
+ 15 | 13 | trece
+ 22 | 30 | treinta
+ 17 | 32 | treinta y dos
+ 3 | 31 | treinta y uno
+ 5 | 3 | tres
+ 20 | 1 | uno
+ 6 | 20 | veinte
+ 14 | 25 | veinticinco
+ 21 | 24 | veinticuatro
+ 4 | 22 | veintidos
+ 19 | 29 | veintinueve
+ 16 | 28 | veintiocho
+ 27 | 26 | veintiseis
+ 13 | 27 | veintisiete
+ 7 | 23 | veintitres
+ 8 | 21 | veintiuno
+(32 rows)
+
+SELECT conname FROM pg_constraint WHERE conrelid=(SELECT oid FROM pg_class
+ WHERE relname='clstr_tst');
+ conname
+----------------
+ clstr_tst_pkey
+ clstr_tst_con
+(2 rows)
+
+SELECT relname FROM pg_class WHERE relname LIKE 'clstr_tst%' ORDER BY relname;
+ relname
+----------------------
+ clstr_tst
+ clstr_tst_a_seq
+ clstr_tst_b
+ clstr_tst_b_c
+ clstr_tst_c
+ clstr_tst_c_b
+ clstr_tst_inh
+ clstr_tst_pkey
+ clstr_tst_s
+ clstr_tst_s_pkey
+ clstr_tst_s_rf_a_seq
+(11 rows)
+
+DROP TABLE clstr_tst_inh;
+DROP TABLE clstr_tst;
diff --git a/src/test/regress/sql/cluster.sql b/src/test/regress/sql/cluster.sql
new file mode 100644
index 00000000000..6879c618f24
--- /dev/null
+++ b/src/test/regress/sql/cluster.sql
@@ -0,0 +1,72 @@
+--
+-- CLUSTER
+--
+
+CREATE TABLE clstr_tst_s (rf_a SERIAL PRIMARY KEY,
+ b INT);
+
+CREATE TABLE clstr_tst (a SERIAL PRIMARY KEY,
+ b INT,
+ c TEXT,
+ CONSTRAINT clstr_tst_con FOREIGN KEY (b) REFERENCES clstr_tst_s);
+
+CREATE INDEX clstr_tst_b ON clstr_tst (b);
+CREATE INDEX clstr_tst_c ON clstr_tst (c);
+CREATE INDEX clstr_tst_c_b ON clstr_tst (c,b);
+CREATE INDEX clstr_tst_b_c ON clstr_tst (b,c);
+
+INSERT INTO clstr_tst_s (b) VALUES (0);
+INSERT INTO clstr_tst_s (b) SELECT b FROM clstr_tst_s;
+INSERT INTO clstr_tst_s (b) SELECT b FROM clstr_tst_s;
+INSERT INTO clstr_tst_s (b) SELECT b FROM clstr_tst_s;
+INSERT INTO clstr_tst_s (b) SELECT b FROM clstr_tst_s;
+INSERT INTO clstr_tst_s (b) SELECT b FROM clstr_tst_s;
+
+CREATE TABLE clstr_tst_inh () INHERITS (clstr_tst);
+
+INSERT INTO clstr_tst (b, c) VALUES (11, 'once');
+INSERT INTO clstr_tst (b, c) VALUES (10, 'diez');
+INSERT INTO clstr_tst (b, c) VALUES (31, 'treinta y uno');
+INSERT INTO clstr_tst (b, c) VALUES (22, 'veintidos');
+INSERT INTO clstr_tst (b, c) VALUES (3, 'tres');
+INSERT INTO clstr_tst (b, c) VALUES (20, 'veinte');
+INSERT INTO clstr_tst (b, c) VALUES (23, 'veintitres');
+INSERT INTO clstr_tst (b, c) VALUES (21, 'veintiuno');
+INSERT INTO clstr_tst (b, c) VALUES (4, 'cuatro');
+INSERT INTO clstr_tst (b, c) VALUES (14, 'catorce');
+INSERT INTO clstr_tst (b, c) VALUES (2, 'dos');
+INSERT INTO clstr_tst (b, c) VALUES (18, 'dieciocho');
+INSERT INTO clstr_tst (b, c) VALUES (27, 'veintisiete');
+INSERT INTO clstr_tst (b, c) VALUES (25, 'veinticinco');
+INSERT INTO clstr_tst (b, c) VALUES (13, 'trece');
+INSERT INTO clstr_tst (b, c) VALUES (28, 'veintiocho');
+INSERT INTO clstr_tst (b, c) VALUES (32, 'treinta y dos');
+INSERT INTO clstr_tst (b, c) VALUES (5, 'cinco');
+INSERT INTO clstr_tst (b, c) VALUES (29, 'veintinueve');
+INSERT INTO clstr_tst (b, c) VALUES (1, 'uno');
+INSERT INTO clstr_tst (b, c) VALUES (24, 'veinticuatro');
+INSERT INTO clstr_tst (b, c) VALUES (30, 'treinta');
+INSERT INTO clstr_tst (b, c) VALUES (12, 'doce');
+INSERT INTO clstr_tst (b, c) VALUES (17, 'diecisiete');
+INSERT INTO clstr_tst (b, c) VALUES (9, 'nueve');
+INSERT INTO clstr_tst (b, c) VALUES (19, 'diecinueve');
+INSERT INTO clstr_tst (b, c) VALUES (26, 'veintiseis');
+INSERT INTO clstr_tst (b, c) VALUES (15, 'quince');
+INSERT INTO clstr_tst (b, c) VALUES (7, 'siete');
+INSERT INTO clstr_tst (b, c) VALUES (16, 'dieciseis');
+INSERT INTO clstr_tst (b, c) VALUES (8, 'ocho');
+INSERT INTO clstr_tst (b, c) VALUES (6, 'seis');
+
+CLUSTER clstr_tst_c ON clstr_tst;
+
+SELECT * from clstr_tst;
+SELECT * from clstr_tst ORDER BY a;
+SELECT * from clstr_tst ORDER BY b;
+SELECT * from clstr_tst ORDER BY c;
+
+SELECT conname FROM pg_constraint WHERE conrelid=(SELECT oid FROM pg_class
+ WHERE relname='clstr_tst');
+SELECT relname FROM pg_class WHERE relname LIKE 'clstr_tst%' ORDER BY relname;
+
+DROP TABLE clstr_tst_inh;
+DROP TABLE clstr_tst;