mirror of https://github.com/citusdata/citus.git
failure 1
parent
08d82ce8bb
commit
ea9cb77569
|
@ -25,7 +25,7 @@ SELECT citus.clear_network_traffic();
|
|||
---- test multiple statements spanning multiple shards,
|
||||
---- at each significant point. These transactions are 2pc
|
||||
-- fail at DELETE
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="^DELETE").kill()');
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="DELETE").kill()');
|
||||
mitmproxy
|
||||
---------------------------------------------------------------------
|
||||
|
||||
|
@ -54,7 +54,7 @@ SELECT * FROM dml_test ORDER BY id ASC;
|
|||
(4 rows)
|
||||
|
||||
-- cancel at DELETE
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="^DELETE").cancel(' || pg_backend_pid() || ')');
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="DELETE").cancel(' || pg_backend_pid() || ')');
|
||||
mitmproxy
|
||||
---------------------------------------------------------------------
|
||||
|
||||
|
|
|
@ -21,7 +21,7 @@ CREATE TABLE partitioned_table_0
|
|||
PARTITION OF partitioned_table (dist_key, partition_id)
|
||||
FOR VALUES IN ( 0 );
|
||||
INSERT INTO partitioned_table VALUES (0, 0);
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="^INSERT").kill()');
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="INSERT").kill()');
|
||||
mitmproxy
|
||||
---------------------------------------------------------------------
|
||||
|
||||
|
|
|
@ -23,7 +23,7 @@ SELECT create_distributed_table('select_test', 'key');
|
|||
|
||||
-- put data in shard for which mitm node is first placement
|
||||
INSERT INTO select_test VALUES (3, 'test data');
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="^SELECT.*select_test").kill()');
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="SELECT.*select_test").kill()');
|
||||
mitmproxy
|
||||
---------------------------------------------------------------------
|
||||
|
||||
|
@ -45,7 +45,7 @@ WARNING: connection to the remote node localhost:xxxxx failed with the followin
|
|||
|
||||
-- kill after first SELECT; txn should fail as INSERT triggers
|
||||
-- 2PC (and placementis not marked bad)
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="^SELECT.*select_test").kill()');
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="SELECT.*select_test").kill()');
|
||||
mitmproxy
|
||||
---------------------------------------------------------------------
|
||||
|
||||
|
@ -66,7 +66,7 @@ TRUNCATE select_test;
|
|||
-- now the same tests with query cancellation
|
||||
-- put data in shard for which mitm node is first placement
|
||||
INSERT INTO select_test VALUES (3, 'test data');
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="^SELECT.*select_test").cancel(' || pg_backend_pid() || ')');
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="SELECT.*select_test").cancel(' || pg_backend_pid() || ')');
|
||||
mitmproxy
|
||||
---------------------------------------------------------------------
|
||||
|
||||
|
@ -77,7 +77,7 @@ ERROR: canceling statement due to user request
|
|||
SELECT * FROM select_test WHERE key = 3;
|
||||
ERROR: canceling statement due to user request
|
||||
-- cancel after first SELECT; txn should fail and nothing should be marked as invalid
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="^SELECT.*select_test").cancel(' || pg_backend_pid() || ')');
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="SELECT.*select_test").cancel(' || pg_backend_pid() || ')');
|
||||
mitmproxy
|
||||
---------------------------------------------------------------------
|
||||
|
||||
|
@ -107,7 +107,7 @@ SELECT citus.mitmproxy('conn.allow()');
|
|||
TRUNCATE select_test;
|
||||
-- cancel the second query
|
||||
-- error after second SELECT; txn should fail
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="^SELECT.*select_test").after(1).cancel(' || pg_backend_pid() || ')');
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="SELECT.*select_test").after(1).cancel(' || pg_backend_pid() || ')');
|
||||
mitmproxy
|
||||
---------------------------------------------------------------------
|
||||
|
||||
|
@ -126,7 +126,7 @@ SELECT * FROM select_test WHERE key = 3;
|
|||
ERROR: canceling statement due to user request
|
||||
COMMIT;
|
||||
-- error after second SELECT; txn should fails the transaction
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="^SELECT.*select_test").after(1).reset()');
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="SELECT.*select_test").after(1).reset()');
|
||||
mitmproxy
|
||||
---------------------------------------------------------------------
|
||||
|
||||
|
@ -144,7 +144,7 @@ INSERT INTO select_test VALUES (3, 'even more data');
|
|||
SELECT * FROM select_test WHERE key = 3;
|
||||
ERROR: connection to the remote node localhost:xxxxx failed with the following error: connection not open
|
||||
COMMIT;
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="^SELECT.*pg_prepared_xacts").after(2).kill()');
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="SELECT.*pg_prepared_xacts").after(2).kill()');
|
||||
mitmproxy
|
||||
---------------------------------------------------------------------
|
||||
|
||||
|
@ -173,7 +173,7 @@ SELECT create_distributed_table('select_test', 'key');
|
|||
|
||||
SET citus.max_cached_conns_per_worker TO 1; -- allow connection to be cached
|
||||
INSERT INTO select_test VALUES (1, 'test data');
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="^SELECT.*select_test").after(1).kill()');
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="SELECT.*select_test").after(1).kill()');
|
||||
mitmproxy
|
||||
---------------------------------------------------------------------
|
||||
|
||||
|
@ -188,7 +188,7 @@ SELECT * FROM select_test WHERE key = 1;
|
|||
SELECT * FROM select_test WHERE key = 1;
|
||||
ERROR: connection to the remote node localhost:xxxxx failed with the following error: connection not open
|
||||
-- now the same test with query cancellation
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="^SELECT.*select_test").after(1).cancel(' || pg_backend_pid() || ')');
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="SELECT.*select_test").after(1).cancel(' || pg_backend_pid() || ')');
|
||||
mitmproxy
|
||||
---------------------------------------------------------------------
|
||||
|
||||
|
|
|
@ -21,7 +21,7 @@ SELECT citus.clear_network_traffic();
|
|||
---- at each significant point. These transactions are 2pc
|
||||
|
||||
-- fail at DELETE
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="^DELETE").kill()');
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="DELETE").kill()');
|
||||
|
||||
BEGIN;
|
||||
DELETE FROM dml_test WHERE id = 1;
|
||||
|
@ -35,7 +35,7 @@ COMMIT;
|
|||
SELECT * FROM dml_test ORDER BY id ASC;
|
||||
|
||||
-- cancel at DELETE
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="^DELETE").cancel(' || pg_backend_pid() || ')');
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="DELETE").cancel(' || pg_backend_pid() || ')');
|
||||
|
||||
BEGIN;
|
||||
DELETE FROM dml_test WHERE id = 1;
|
||||
|
|
|
@ -19,7 +19,7 @@ CREATE TABLE partitioned_table_0
|
|||
|
||||
INSERT INTO partitioned_table VALUES (0, 0);
|
||||
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="^INSERT").kill()');
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="INSERT").kill()');
|
||||
|
||||
INSERT INTO partitioned_table VALUES (0, 0);
|
||||
|
||||
|
|
|
@ -13,13 +13,13 @@ SELECT create_distributed_table('select_test', 'key');
|
|||
-- put data in shard for which mitm node is first placement
|
||||
INSERT INTO select_test VALUES (3, 'test data');
|
||||
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="^SELECT.*select_test").kill()');
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="SELECT.*select_test").kill()');
|
||||
SELECT * FROM select_test WHERE key = 3;
|
||||
SELECT * FROM select_test WHERE key = 3;
|
||||
|
||||
-- kill after first SELECT; txn should fail as INSERT triggers
|
||||
-- 2PC (and placementis not marked bad)
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="^SELECT.*select_test").kill()');
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="SELECT.*select_test").kill()');
|
||||
|
||||
BEGIN;
|
||||
INSERT INTO select_test VALUES (3, 'more data');
|
||||
|
@ -35,12 +35,12 @@ TRUNCATE select_test;
|
|||
-- put data in shard for which mitm node is first placement
|
||||
INSERT INTO select_test VALUES (3, 'test data');
|
||||
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="^SELECT.*select_test").cancel(' || pg_backend_pid() || ')');
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="SELECT.*select_test").cancel(' || pg_backend_pid() || ')');
|
||||
SELECT * FROM select_test WHERE key = 3;
|
||||
SELECT * FROM select_test WHERE key = 3;
|
||||
|
||||
-- cancel after first SELECT; txn should fail and nothing should be marked as invalid
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="^SELECT.*select_test").cancel(' || pg_backend_pid() || ')');
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="SELECT.*select_test").cancel(' || pg_backend_pid() || ')');
|
||||
|
||||
BEGIN;
|
||||
INSERT INTO select_test VALUES (3, 'more data');
|
||||
|
@ -58,7 +58,7 @@ TRUNCATE select_test;
|
|||
|
||||
-- cancel the second query
|
||||
-- error after second SELECT; txn should fail
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="^SELECT.*select_test").after(1).cancel(' || pg_backend_pid() || ')');
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="SELECT.*select_test").after(1).cancel(' || pg_backend_pid() || ')');
|
||||
|
||||
BEGIN;
|
||||
INSERT INTO select_test VALUES (3, 'more data');
|
||||
|
@ -68,7 +68,7 @@ SELECT * FROM select_test WHERE key = 3;
|
|||
COMMIT;
|
||||
|
||||
-- error after second SELECT; txn should fails the transaction
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="^SELECT.*select_test").after(1).reset()');
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="SELECT.*select_test").after(1).reset()');
|
||||
|
||||
BEGIN;
|
||||
INSERT INTO select_test VALUES (3, 'more data');
|
||||
|
@ -77,7 +77,7 @@ INSERT INTO select_test VALUES (3, 'even more data');
|
|||
SELECT * FROM select_test WHERE key = 3;
|
||||
COMMIT;
|
||||
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="^SELECT.*pg_prepared_xacts").after(2).kill()');
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="SELECT.*pg_prepared_xacts").after(2).kill()');
|
||||
SELECT recover_prepared_transactions();
|
||||
SELECT recover_prepared_transactions();
|
||||
|
||||
|
@ -93,12 +93,12 @@ SELECT create_distributed_table('select_test', 'key');
|
|||
SET citus.max_cached_conns_per_worker TO 1; -- allow connection to be cached
|
||||
INSERT INTO select_test VALUES (1, 'test data');
|
||||
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="^SELECT.*select_test").after(1).kill()');
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="SELECT.*select_test").after(1).kill()');
|
||||
SELECT * FROM select_test WHERE key = 1;
|
||||
SELECT * FROM select_test WHERE key = 1;
|
||||
|
||||
-- now the same test with query cancellation
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="^SELECT.*select_test").after(1).cancel(' || pg_backend_pid() || ')');
|
||||
SELECT citus.mitmproxy('conn.onQuery(query="SELECT.*select_test").after(1).cancel(' || pg_backend_pid() || ')');
|
||||
SELECT * FROM select_test WHERE key = 1;
|
||||
SELECT * FROM select_test WHERE key = 1;
|
||||
|
||||
|
|
Loading…
Reference in New Issue