78 lines
2.2 KiB
Plaintext
78 lines
2.2 KiB
Plaintext
# Tests for PERFORMANCE_SCHEMA
|
|
|
|
--source include/have_log_bin.inc
|
|
--source include/master-slave.inc
|
|
|
|
--disable_warnings
|
|
drop table if exists test.t1;
|
|
--sync_slave_with_master
|
|
reset master;
|
|
--enable_warnings
|
|
|
|
create table test.t1(a int) engine = XENGINE;
|
|
drop table test.t1;
|
|
|
|
--source include/show_binlog_events.inc
|
|
|
|
# Notes
|
|
#
|
|
# The point of this test is to make sure code is properly instrumented,
|
|
# for replication threads.
|
|
# Each time an ID is assigned to a replication thread,
|
|
# visible in the INFORMATION_SCHEMA.PROCESSLIST table,
|
|
# the same PROCESSLIST_ID should be visible in table performance_schema.threads
|
|
|
|
connection master;
|
|
-- echo "============ Performance schema on master ============"
|
|
|
|
# Read the ID of the binlog dump connection,
|
|
# as exposed in PROCESSLIST.
|
|
select ID from INFORMATION_SCHEMA.PROCESSLIST
|
|
where COMMAND = "Binlog Dump"
|
|
into @master_dump_pid;
|
|
|
|
select COMMAND, STATE
|
|
from INFORMATION_SCHEMA.PROCESSLIST
|
|
where ID = @master_dump_pid;
|
|
|
|
# Make sure the performance schema also knows this PROCESSLIST_ID
|
|
select NAME, TYPE, PROCESSLIST_COMMAND, PROCESSLIST_STATE
|
|
from performance_schema.threads
|
|
where PROCESSLIST_ID = @master_dump_pid;
|
|
|
|
sync_slave_with_master;
|
|
-- echo "============ Performance schema on slave ============"
|
|
|
|
# Read the ID of the SLAVE IO thread,
|
|
# as exposed in PROCESSLIST.
|
|
select ID from INFORMATION_SCHEMA.PROCESSLIST
|
|
where STATE like "Waiting for master to send event%"
|
|
into @slave_io_pid;
|
|
|
|
select COMMAND, STATE
|
|
from INFORMATION_SCHEMA.PROCESSLIST
|
|
where ID = @slave_io_pid;
|
|
|
|
# Make sure the performance schema also knows this PROCESSLIST_ID
|
|
select NAME, TYPE, PROCESSLIST_COMMAND, PROCESSLIST_STATE
|
|
from performance_schema.threads
|
|
where PROCESSLIST_ID = @slave_io_pid;
|
|
|
|
# Read the ID of the SLAVE SQL thread,
|
|
# as exposed in PROCESSLIST.
|
|
select ID from INFORMATION_SCHEMA.PROCESSLIST
|
|
where STATE like "Slave has read all relay log%"
|
|
into @slave_sql_pid;
|
|
|
|
select COMMAND, STATE
|
|
from INFORMATION_SCHEMA.PROCESSLIST
|
|
where ID = @slave_sql_pid;
|
|
|
|
# Make sure the performance schema also knows this PROCESSLIST_ID
|
|
select NAME, TYPE, PROCESSLIST_COMMAND, PROCESSLIST_STATE
|
|
from performance_schema.threads
|
|
where PROCESSLIST_ID = @slave_sql_pid;
|
|
|
|
--source include/rpl_end.inc
|
|
|