summaryrefslogtreecommitdiffstats
path: root/mysql-test/suite/perfschema/t/statement_program_nested.test
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-13 12:24:36 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-13 12:24:36 +0000
commit06eaf7232e9a920468c0f8d74dcf2fe8b555501c (patch)
treee2c7b5777f728320e5b5542b6213fd3591ba51e2 /mysql-test/suite/perfschema/t/statement_program_nested.test
parentInitial commit. (diff)
downloadmariadb-06eaf7232e9a920468c0f8d74dcf2fe8b555501c.tar.xz
mariadb-06eaf7232e9a920468c0f8d74dcf2fe8b555501c.zip
Adding upstream version 1:10.11.6.upstream/1%10.11.6
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'mysql-test/suite/perfschema/t/statement_program_nested.test')
-rw-r--r--mysql-test/suite/perfschema/t/statement_program_nested.test75
1 files changed, 75 insertions, 0 deletions
diff --git a/mysql-test/suite/perfschema/t/statement_program_nested.test b/mysql-test/suite/perfschema/t/statement_program_nested.test
new file mode 100644
index 00000000..183e9858
--- /dev/null
+++ b/mysql-test/suite/perfschema/t/statement_program_nested.test
@@ -0,0 +1,75 @@
+# -----------------------------------------------------------------------
+# Tests for the performance schema nested stored program instrumentation.
+# -----------------------------------------------------------------------
+
+--source include/not_embedded.inc
+--source include/have_perfschema.inc
+--source include/have_innodb.inc
+
+TRUNCATE TABLE performance_schema.events_statements_summary_by_program;
+TRUNCATE TABLE performance_schema.events_statements_history_long;
+
+--echo #################################################
+--echo # Quering PS statement summary and history_long #
+--echo #################################################
+
+--source suite/perfschema/include/program_nested_setup.inc
+ALTER TABLE t2 ENGINE=InnoDB;
+--source suite/perfschema/include/program_nested_execution.inc
+
+SELECT EVENT_NAME, SQL_TEXT, CURRENT_SCHEMA, OBJECT_TYPE, OBJECT_SCHEMA,
+ OBJECT_NAME, NESTING_EVENT_TYPE, NESTING_EVENT_LEVEL
+ FROM performance_schema.events_statements_history_long WHERE
+ CURRENT_SCHEMA='nested_sp' ORDER BY
+ OBJECT_NAME,NESTING_EVENT_LEVEL,SQL_TEXT,EVENT_NAME;
+
+SELECT OBJECT_TYPE, OBJECT_SCHEMA, OBJECT_NAME, COUNT_STAR, COUNT_STATEMENTS
+ FROM performance_schema.events_statements_summary_by_program
+ WHERE OBJECT_SCHEMA='nested_sp' ORDER BY OBJECT_NAME;
+
+--echo # clean-up
+TRUNCATE TABLE performance_schema.events_statements_summary_by_program;
+TRUNCATE TABLE performance_schema.events_statements_history_long;
+
+# After truncate the statictics collected will are reset
+SELECT OBJECT_TYPE, OBJECT_SCHEMA, OBJECT_NAME, COUNT_STAR, COUNT_STATEMENTS
+ FROM performance_schema.events_statements_summary_by_program
+ WHERE OBJECT_SCHEMA='nested_sp' ORDER BY OBJECT_NAME;
+
+--source suite/perfschema/include/program_nested_cleanup.inc
+
+# After clean-up the stored programs are removed from PS tables
+SELECT OBJECT_TYPE, OBJECT_SCHEMA, OBJECT_NAME, COUNT_STAR, COUNT_STATEMENTS
+ FROM performance_schema.events_statements_summary_by_program
+ WHERE OBJECT_SCHEMA='nested_sp' ORDER BY OBJECT_NAME;
+
+
+# Check the intrumentation of stored programs
+# when statement/sp/% instruments not timed
+
+--source suite/perfschema/include/program_nested_setup.inc
+
+update performance_schema.setup_instruments set enabled='YES', timed='NO'
+ where name like "statement/sp/%" order by name;
+
+TRUNCATE TABLE performance_schema.events_statements_summary_by_program;
+TRUNCATE TABLE performance_schema.events_statements_history_long;
+
+--source suite/perfschema/include/program_nested_execution.inc
+
+# check instrumentation
+
+SELECT EVENT_NAME, TIMER_START, TIMER_END, TIMER_WAIT FROM
+ performance_schema.events_statements_history_long WHERE
+ CURRENT_SCHEMA='nested_sp' AND EVENT_NAME like "statement/sp/%";
+
+# clean-up
+
+# Restore the setup
+update performance_schema.setup_instruments set enabled='YES', timed='YES'
+ where name like "statement/sp/%" order by name;
+
+TRUNCATE TABLE performance_schema.events_statements_summary_by_program;
+TRUNCATE TABLE performance_schema.events_statements_history_long;
+
+--source suite/perfschema/include/program_nested_cleanup.inc