mirror of
https://github.com/MariaDB/server.git
synced 2025-01-31 02:51:44 +01:00
67a48e1a4c
Part V: performance schema implementation
94 lines
2.4 KiB
Text
94 lines
2.4 KiB
Text
# Copyright (C) 2009 Sun Microsystems, Inc
|
|
#
|
|
# This program is free software; you can redistribute it and/or modify
|
|
# it under the terms of the GNU General Public License as published by
|
|
# the Free Software Foundation; version 2 of the License.
|
|
#
|
|
# This program is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU General Public License
|
|
# along with this program; if not, write to the Free Software
|
|
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
|
|
# Tests for PERFORMANCE_SCHEMA
|
|
|
|
--source include/not_embedded.inc
|
|
--source include/have_perfschema.inc
|
|
|
|
# Setup
|
|
|
|
--source ../include/setup_helper.inc
|
|
|
|
# We use a myisam table here because CREATE TABLE has a known,
|
|
# stable behavior (it will lock THR_LOCK_myisam once).
|
|
# The point is not to test myisam, but to test that each
|
|
# connection is properly instrumented, with one-thread-per-connection
|
|
|
|
update performance_schema.SETUP_INSTRUMENTS set enabled='YES'
|
|
where name like "wait/synch/mutex/mysys/THR_LOCK_myisam";
|
|
|
|
--disable_warnings
|
|
drop table if exists test.t1;
|
|
drop table if exists test.t2;
|
|
drop table if exists test.t3;
|
|
--enable_warnings
|
|
|
|
truncate table performance_schema.EVENTS_WAITS_HISTORY_LONG;
|
|
|
|
show variables like "thread_handling";
|
|
|
|
# Code to test
|
|
|
|
connection con1;
|
|
|
|
-- echo "----------------- Connection 1"
|
|
create table test.t1(a int) engine=MYISAM;
|
|
|
|
connection con2;
|
|
|
|
-- echo "----------------- Connection 2"
|
|
create table test.t2(a int) engine=MYISAM;
|
|
|
|
connection con3;
|
|
|
|
-- echo "----------------- Connection 3"
|
|
create table test.t3(a int) engine=MYISAM;
|
|
|
|
# Verification
|
|
|
|
connection default;
|
|
|
|
-- echo "----------------- Connection default"
|
|
|
|
--disable_query_log
|
|
eval set @tid= $con1_THREAD_ID;
|
|
--enable_query_log
|
|
|
|
execute stmt_dump_events using @tid;
|
|
execute stmt_dump_thread using @tid;
|
|
|
|
--disable_query_log
|
|
eval set @tid= $con2_THREAD_ID;
|
|
--enable_query_log
|
|
|
|
execute stmt_dump_events using @tid;
|
|
execute stmt_dump_thread using @tid;
|
|
|
|
--disable_query_log
|
|
eval set @tid= $con3_THREAD_ID;
|
|
--enable_query_log
|
|
|
|
execute stmt_dump_events using @tid;
|
|
execute stmt_dump_thread using @tid;
|
|
|
|
# Cleanup
|
|
|
|
drop table test.t1;
|
|
drop table test.t2;
|
|
drop table test.t3;
|
|
|
|
--source ../include/cleanup_helper.inc
|
|
|