mirror of https://github.com/citusdata/citus.git
add some conflicting cimv test
parent
aa4c44b495
commit
f622647037
|
@ -473,8 +473,6 @@ multi_ProcessUtility(PlannedStmt *pstmt,
|
|||
(RefreshMatViewStmt *) parsetree);
|
||||
}
|
||||
|
||||
bool switchToExtensionOwner = false;
|
||||
|
||||
if (IsA(parsetree, DropStmt))
|
||||
{
|
||||
DropStmt *dropStatement = (DropStmt *) parsetree;
|
||||
|
|
|
@ -780,7 +780,7 @@ ORDER BY a, d_hour;
|
|||
(60 rows)
|
||||
|
||||
DROP MATERIALIZED VIEW mv;
|
||||
NOTICE: drop cascades to trigger mv_INSERT on table events
|
||||
NOTICE: drop cascades to trigger mv_3_INSERT on table events
|
||||
CREATE MATERIALIZED VIEW mv WITH (citus.cimv, citus.insertonlycapture) AS
|
||||
SELECT a,
|
||||
date_trunc('hour', d) AS d_hour,
|
||||
|
@ -794,7 +794,7 @@ SELECT * FROM mv;
|
|||
(0 rows)
|
||||
|
||||
DROP MATERIALIZED VIEW mv;
|
||||
NOTICE: drop cascades to trigger mv_INSERT on table events
|
||||
NOTICE: drop cascades to trigger mv_4_INSERT on table events
|
||||
SELECT create_distributed_table('events', 'a');
|
||||
NOTICE: Copying data from local table...
|
||||
NOTICE: copying the data has completed
|
||||
|
@ -1676,6 +1676,51 @@ SELECT * FROM mv;
|
|||
---------------------------------------------------------------------
|
||||
(0 rows)
|
||||
|
||||
-- make sure same mv can be created in different schemas without overlap
|
||||
CREATE SCHEMA another_schema;
|
||||
SET search_path to another_schema;
|
||||
SET citus.shard_count TO 4;
|
||||
CREATE TABLE events (a int, b int, c double precision, d timestamp, e bigint);
|
||||
CREATE MATERIALIZED VIEW mv WITH (citus.cimv) AS
|
||||
SELECT a,
|
||||
date_trunc('hour', d) AS d_hour,
|
||||
min(b) AS min_b,
|
||||
max(b) AS max_b,
|
||||
avg(b) AS avg_b,
|
||||
min(c) AS min_c,
|
||||
max(c) AS max_c,
|
||||
avg(c) AS avg_c,
|
||||
min(e) AS min_e,
|
||||
max(e) AS max_e,
|
||||
avg(e) AS avg_e
|
||||
FROM events
|
||||
WHERE b > 10
|
||||
GROUP BY a, d_hour;
|
||||
DROP MATERIALIZED VIEW mv;
|
||||
NOTICE: drop cascades to 4 other objects
|
||||
-- test that another user can create CIMV as well
|
||||
CREATE USER new_user;
|
||||
NOTICE: not propagating CREATE ROLE/USER commands to worker nodes
|
||||
CREATE SCHEMA another_schema2;
|
||||
SET search_path to another_schema2;
|
||||
CREATE TABLE events (a int, b int, c double precision, d timestamp, e bigint);
|
||||
CREATE MATERIALIZED VIEW mv WITH (citus.cimv) AS
|
||||
SELECT a,
|
||||
date_trunc('hour', d) AS d_hour,
|
||||
min(b) AS min_b,
|
||||
max(b) AS max_b,
|
||||
avg(b) AS avg_b,
|
||||
min(c) AS min_c,
|
||||
max(c) AS max_c,
|
||||
avg(c) AS avg_c,
|
||||
min(e) AS min_e,
|
||||
max(e) AS max_e,
|
||||
avg(e) AS avg_e
|
||||
FROM events
|
||||
WHERE b > 10
|
||||
GROUP BY a, d_hour;
|
||||
REFRESH MATERIALIZED VIEW mv;
|
||||
DROP MATERIALIZED VIEW mv CASCADE;
|
||||
NOTICE: drop cascades to 4 other objects
|
||||
SET client_min_messages TO WARNING; -- suppress cascade messages
|
||||
DROP SCHEMA cimv CASCADE;
|
||||
|
|
|
@ -379,5 +379,31 @@ GROUP BY a, d_hour;
|
|||
|
||||
DROP MATERIALIZED VIEW mv;
|
||||
|
||||
-- test that another user can create CIMV as well
|
||||
CREATE USER new_user;
|
||||
CREATE SCHEMA another_schema2;
|
||||
SET search_path to another_schema2;
|
||||
|
||||
CREATE TABLE events (a int, b int, c double precision, d timestamp, e bigint);
|
||||
|
||||
CREATE MATERIALIZED VIEW mv WITH (citus.cimv) AS
|
||||
SELECT a,
|
||||
date_trunc('hour', d) AS d_hour,
|
||||
min(b) AS min_b,
|
||||
max(b) AS max_b,
|
||||
avg(b) AS avg_b,
|
||||
min(c) AS min_c,
|
||||
max(c) AS max_c,
|
||||
avg(c) AS avg_c,
|
||||
min(e) AS min_e,
|
||||
max(e) AS max_e,
|
||||
avg(e) AS avg_e
|
||||
FROM events
|
||||
WHERE b > 10
|
||||
GROUP BY a, d_hour;
|
||||
|
||||
REFRESH MATERIALIZED VIEW mv;
|
||||
DROP MATERIALIZED VIEW mv CASCADE;
|
||||
|
||||
SET client_min_messages TO WARNING; -- suppress cascade messages
|
||||
DROP SCHEMA cimv CASCADE;
|
||||
|
|
Loading…
Reference in New Issue