mariadb/mysql-test/suite/perfschema/t/status_reprepare.test
2020-03-14 09:51:36 +01:00

61 lines
1.7 KiB
Text

# Tests for PERFORMANCE_SCHEMA
--source include/no_protocol.inc
--source include/not_embedded.inc
--source include/have_perfschema.inc
--echo #
--echo # ================================================================================
--echo # SETUP
--echo # ================================================================================
# Create a new connection, to get clean statistics
connect(con1, localhost, root,,);
# Create a table
CREATE TABLE test.t1 (c1 INT);
#prepare a statement
PREPARE stmt1 FROM "SELECT c1 FROM test.t1";
#execute prepared statement;
EXECUTE stmt1;
# Check status from SHOW STATUS
SHOW SESSION STATUS LIKE "%com_stmt_%prepare%";
#check the statistics
SELECT * FROM performance_schema.session_status WHERE VARIABLE_NAME LIKE "%com_stmt%";
SELECT VARIABLE_VALUE INTO @count_global_reprepare_before
FROM performance_schema.global_status
WHERE VARIABLE_NAME LIKE "Com_stmt_reprepare";
# Alter table to make server reprepare the statement
ALTER TABLE test.t1 ADD COLUMN c2 INTEGER;
#execute prepared statement;
EXECUTE stmt1;
# Check status from SHOW STATUS
SHOW SESSION STATUS LIKE "%com_stmt_%prepare%";
#check the statistics
SELECT * FROM performance_schema.session_status WHERE VARIABLE_NAME LIKE "%com_stmt%";
SELECT VARIABLE_VALUE INTO @count_global_reprepare_after
FROM performance_schema.global_status
WHERE VARIABLE_NAME LIKE "Com_stmt_reprepare";
# Should increment by 1
SELECT @count_global_reprepare_after - @count_global_reprepare_before;
--echo #
--echo # ================================================================================
--echo # CLEANUP
--echo # ================================================================================
DROP TABLE test.t1;
--disconnect con1
--connection default