diff options
| author | Tomas Vondra | 2017-04-21 21:28:02 +0000 |
|---|---|---|
| committer | Tomas Vondra | 2017-04-21 21:28:02 +0000 |
| commit | d507faf6eaf54b7706cbcd2ef173c604efc268c7 (patch) | |
| tree | b46efa4a357530d81e375add34f22c32167cf360 | |
| parent | 154a9069df268b2edd81a3f1f5ed6a879ef9c23c (diff) | |
Add the missing REFRESH MATERIALIZED VIEW to matview test suite
This adds back the missing refreshes, which were removed due to
the lack of support for a CONCURRENTLY mode. This adds back plain
refreshes (without the CONCURRENTLY keyword), which at least makes
the results the same as in upstream.
| -rw-r--r-- | src/test/regress/expected/matview.out | 15 | ||||
| -rw-r--r-- | src/test/regress/sql/matview.sql | 5 |
2 files changed, 15 insertions, 5 deletions
diff --git a/src/test/regress/expected/matview.out b/src/test/regress/expected/matview.out index a416540983..38465f529a 100644 --- a/src/test/regress/expected/matview.out +++ b/src/test/regress/expected/matview.out @@ -192,13 +192,14 @@ SELECT * FROM mvtest_tvm ORDER BY type; z | 11 (3 rows) +REFRESH MATERIALIZED VIEW mvtest_tm; REFRESH MATERIALIZED VIEW mvtest_tvm; SELECT * FROM mvtest_tm ORDER BY type; type | totamt ------+-------- x | 5 y | 12 - z | 11 + z | 24 (3 rows) SELECT * FROM mvtest_tvm ORDER BY type; @@ -280,7 +281,7 @@ EXPLAIN (costs off) SELECT * FROM mvtest_tmm; grandtot ---------- - 28 + 41 (1 row) SELECT * FROM mvtest_tvmm; @@ -310,7 +311,7 @@ SELECT type, m.totamt AS mtot, v.totamt AS vtot FROM mvtest_tm m LEFT JOIN mvtes ------+------+------ x | 5 | 5 y | 12 | 12 - z | 11 | 24 + z | 24 | 24 (3 rows) -- make sure that dependencies are reported properly when they block the drop @@ -432,6 +433,7 @@ CREATE UNIQUE INDEX on mvtest_mv (c); INSERT INTO mvtest_foo VALUES(2, 3, 4); INSERT INTO mvtest_foo VALUES(3, 4, 5); REFRESH MATERIALIZED VIEW mvtest_mv; +REFRESH MATERIALIZED VIEW mvtest_mv; DROP TABLE mvtest_foo CASCADE; NOTICE: drop cascades to materialized view mvtest_mv -- allow subquery to reference unpopulated matview if WITH NO DATA is specified @@ -449,11 +451,12 @@ INSERT INTO mvtest_boxes (b) VALUES CREATE MATERIALIZED VIEW mvtest_boxmv AS SELECT * FROM mvtest_boxes; CREATE UNIQUE INDEX mvtest_boxmv_id ON mvtest_boxmv (id); UPDATE mvtest_boxes SET b = '(2,2),(1,1)' WHERE id = 2; +REFRESH MATERIALIZED VIEW mvtest_boxmv; SELECT * FROM mvtest_boxmv ORDER BY id; id | b ----+----------------------------- 1 | (32,32),(31,31) - 2 | (2.0000004,2.0000004),(1,1) + 2 | (2,2),(1,1) 3 | (1.9999996,1.9999996),(1,1) (3 rows) @@ -474,6 +477,7 @@ INSERT INTO mvtest_v values (1, 2); CREATE UNIQUE INDEX mvtest_mv_v_ii ON mvtest_mv_v (ii); REFRESH MATERIALIZED VIEW mvtest_mv_v; UPDATE mvtest_v SET j = 3 WHERE x = 1; +REFRESH MATERIALIZED VIEW mvtest_mv_v; REFRESH MATERIALIZED VIEW mvtest_mv_v_2; REFRESH MATERIALIZED VIEW mvtest_mv_v_3; REFRESH MATERIALIZED VIEW mvtest_mv_v_4; @@ -486,7 +490,7 @@ SELECT * FROM mvtest_v; SELECT * FROM mvtest_mv_v; ii | jj ----+---- - 1 | 2 + 1 | 3 (1 row) SELECT * FROM mvtest_mv_v_2; @@ -566,6 +570,7 @@ NOTICE: relation "mvtest_mv_foo" already exists, skipping CREATE UNIQUE INDEX ON mvtest_mv_foo (i); RESET ROLE; REFRESH MATERIALIZED VIEW mvtest_mv_foo; +REFRESH MATERIALIZED VIEW mvtest_mv_foo; DROP OWNED BY regress_user_mvtest CASCADE; DROP ROLE regress_user_mvtest; -- make sure that create WITH NO DATA works via SPI diff --git a/src/test/regress/sql/matview.sql b/src/test/regress/sql/matview.sql index ad1fa49665..15baee23a7 100644 --- a/src/test/regress/sql/matview.sql +++ b/src/test/regress/sql/matview.sql @@ -59,6 +59,7 @@ INSERT INTO mvtest_t VALUES (6, 'z', 13); -- confirm pre- and post-refresh contents of fairly simple materialized views SELECT * FROM mvtest_tm ORDER BY type; SELECT * FROM mvtest_tvm ORDER BY type; +REFRESH MATERIALIZED VIEW mvtest_tm; REFRESH MATERIALIZED VIEW mvtest_tvm; SELECT * FROM mvtest_tm ORDER BY type; SELECT * FROM mvtest_tvm ORDER BY type; @@ -151,6 +152,7 @@ CREATE UNIQUE INDEX on mvtest_mv (c); INSERT INTO mvtest_foo VALUES(2, 3, 4); INSERT INTO mvtest_foo VALUES(3, 4, 5); REFRESH MATERIALIZED VIEW mvtest_mv; +REFRESH MATERIALIZED VIEW mvtest_mv; DROP TABLE mvtest_foo CASCADE; -- allow subquery to reference unpopulated matview if WITH NO DATA is specified @@ -168,6 +170,7 @@ INSERT INTO mvtest_boxes (b) VALUES CREATE MATERIALIZED VIEW mvtest_boxmv AS SELECT * FROM mvtest_boxes; CREATE UNIQUE INDEX mvtest_boxmv_id ON mvtest_boxmv (id); UPDATE mvtest_boxes SET b = '(2,2),(1,1)' WHERE id = 2; +REFRESH MATERIALIZED VIEW mvtest_boxmv; SELECT * FROM mvtest_boxmv ORDER BY id; DROP TABLE mvtest_boxes CASCADE; @@ -184,6 +187,7 @@ INSERT INTO mvtest_v values (1, 2); CREATE UNIQUE INDEX mvtest_mv_v_ii ON mvtest_mv_v (ii); REFRESH MATERIALIZED VIEW mvtest_mv_v; UPDATE mvtest_v SET j = 3 WHERE x = 1; +REFRESH MATERIALIZED VIEW mvtest_mv_v; REFRESH MATERIALIZED VIEW mvtest_mv_v_2; REFRESH MATERIALIZED VIEW mvtest_mv_v_3; REFRESH MATERIALIZED VIEW mvtest_mv_v_4; @@ -219,6 +223,7 @@ CREATE MATERIALIZED VIEW IF NOT EXISTS mvtest_mv_foo AS SELECT * FROM mvtest_foo CREATE UNIQUE INDEX ON mvtest_mv_foo (i); RESET ROLE; REFRESH MATERIALIZED VIEW mvtest_mv_foo; +REFRESH MATERIALIZED VIEW mvtest_mv_foo; DROP OWNED BY regress_user_mvtest CASCADE; DROP ROLE regress_user_mvtest; |
