summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPavan Deolasee2016-03-09 11:32:50 +0000
committerPavan Deolasee2016-10-18 10:00:19 +0000
commit80755599ae3078667cd53f3de13473aa030ca8c2 (patch)
tree667116e14cfb70d36ce5730d17008a8a4f57dc2e
parentf38b50177dd627aeff8cff01dd9d94b94c0f3dd4 (diff)
Add test cases to enable/disable certain modules using the new logging
infrastructure They are not added to either serial or parallel schedules and just serve as examples right now
-rw-r--r--src/test/regress/expected/disable_msgmod.out12
-rw-r--r--src/test/regress/expected/enable_msgmod.out74
-rw-r--r--src/test/regress/sql/disable_msgmod.sql4
-rw-r--r--src/test/regress/sql/enable_msgmod.sql41
4 files changed, 131 insertions, 0 deletions
diff --git a/src/test/regress/expected/disable_msgmod.out b/src/test/regress/expected/disable_msgmod.out
new file mode 100644
index 0000000000..68826b6efb
--- /dev/null
+++ b/src/test/regress/expected/disable_msgmod.out
@@ -0,0 +1,12 @@
+
+SELECT r.nodename, r.status
+ FROM execute_on_all_nodes('SELECT pg_msgmodule_disable_all()')
+AS r(nodename text, status bool);
+ nodename | status
+------------+--------
+ coord1 | t
+ coord2 | t
+ datanode_1 | t
+ datanode_2 | t
+(4 rows)
+
diff --git a/src/test/regress/expected/enable_msgmod.out b/src/test/regress/expected/enable_msgmod.out
new file mode 100644
index 0000000000..560932be0c
--- /dev/null
+++ b/src/test/regress/expected/enable_msgmod.out
@@ -0,0 +1,74 @@
+create or replace function execute_on_all_nodes(query varchar)
+returns setof record language plpgsql as $D$
+declare
+ node_sql varchar;
+ nodename varchar;
+ nodenames_query varchar;
+ res record;
+begin
+ nodenames_query := 'SELECT node_name FROM pgxc_node';
+ for nodename in execute nodenames_query loop
+ node_sql = 'EXECUTE DIRECT ON (' || nodename || ') $$ ' || 'SELECT ''' ||
+nodename || '''::text AS nodename, subquery.* FROM (' || query || ') subquery $$';
+-- raise notice '%', node_sql;
+ FOR res IN EXECUTE node_sql LOOP
+ RETURN NEXT res;
+ END LOOP;
+ end loop;
+end;
+$D$;
+SELECT r.nodename, r.status
+ FROM execute_on_all_nodes('SELECT pg_msgmodule_set(121, -1, -1, ''LOG'')')
+AS r(nodename text, status bool);
+ nodename | status
+------------+--------
+ coord1 | t
+ coord2 | t
+ datanode_1 | t
+ datanode_2 | t
+(4 rows)
+
+SELECT r.nodename, r.status
+ FROM execute_on_all_nodes('SELECT pg_msgmodule_set(97, -1, -1, ''LOG'')')
+AS r(nodename text, status bool);
+ nodename | status
+------------+--------
+ coord1 | t
+ coord2 | t
+ datanode_1 | t
+ datanode_2 | t
+(4 rows)
+
+SELECT r.nodename, r.status
+ FROM execute_on_all_nodes('SELECT pg_msgmodule_set(98, -1, -1, ''LOG'')')
+AS r(nodename text, status bool);
+ nodename | status
+------------+--------
+ coord1 | t
+ coord2 | t
+ datanode_1 | t
+ datanode_2 | t
+(4 rows)
+
+SELECT r.nodename, r.status
+ FROM execute_on_all_nodes('SELECT pg_msgmodule_set(99, -1, -1, ''LOG'')')
+AS r(nodename text, status bool);
+ nodename | status
+------------+--------
+ coord1 | t
+ coord2 | t
+ datanode_1 | t
+ datanode_2 | t
+(4 rows)
+
+SELECT r.nodename, r.status
+ FROM execute_on_all_nodes('SELECT pg_msgmodule_enable_all(true)')
+AS r(nodename text, status bool);
+ nodename | status
+------------+--------
+ coord1 | t
+ coord2 | t
+ datanode_1 | t
+ datanode_2 | t
+(4 rows)
+
diff --git a/src/test/regress/sql/disable_msgmod.sql b/src/test/regress/sql/disable_msgmod.sql
new file mode 100644
index 0000000000..bdca3417ef
--- /dev/null
+++ b/src/test/regress/sql/disable_msgmod.sql
@@ -0,0 +1,4 @@
+
+SELECT r.nodename, r.status
+ FROM execute_on_all_nodes('SELECT pg_msgmodule_disable_all()')
+AS r(nodename text, status bool);
diff --git a/src/test/regress/sql/enable_msgmod.sql b/src/test/regress/sql/enable_msgmod.sql
new file mode 100644
index 0000000000..09497dd7ad
--- /dev/null
+++ b/src/test/regress/sql/enable_msgmod.sql
@@ -0,0 +1,41 @@
+
+create or replace function execute_on_all_nodes(query varchar)
+returns setof record language plpgsql as $D$
+declare
+ node_sql varchar;
+ nodename varchar;
+ nodenames_query varchar;
+ res record;
+begin
+ nodenames_query := 'SELECT node_name FROM pgxc_node';
+ for nodename in execute nodenames_query loop
+ node_sql = 'EXECUTE DIRECT ON (' || nodename || ') $$ ' || 'SELECT ''' ||
+nodename || '''::text AS nodename, subquery.* FROM (' || query || ') subquery $$';
+-- raise notice '%', node_sql;
+ FOR res IN EXECUTE node_sql LOOP
+ RETURN NEXT res;
+ END LOOP;
+ end loop;
+end;
+$D$;
+
+SELECT r.nodename, r.status
+ FROM execute_on_all_nodes('SELECT pg_msgmodule_set(121, -1, -1, ''LOG'')')
+AS r(nodename text, status bool);
+
+SELECT r.nodename, r.status
+ FROM execute_on_all_nodes('SELECT pg_msgmodule_set(97, -1, -1, ''LOG'')')
+AS r(nodename text, status bool);
+
+SELECT r.nodename, r.status
+ FROM execute_on_all_nodes('SELECT pg_msgmodule_set(98, -1, -1, ''LOG'')')
+AS r(nodename text, status bool);
+
+SELECT r.nodename, r.status
+ FROM execute_on_all_nodes('SELECT pg_msgmodule_set(99, -1, -1, ''LOG'')')
+AS r(nodename text, status bool);
+
+SELECT r.nodename, r.status
+ FROM execute_on_all_nodes('SELECT pg_msgmodule_enable_all(true)')
+AS r(nodename text, status bool);
+