mirror of
https://github.com/MariaDB/server.git
synced 2026-01-06 05:22:24 +03:00
WL#2360 Performance schema
Part V: performance schema implementation
This commit is contained in:
94
mysql-test/suite/perfschema/t/one_thread_per_con.test
Normal file
94
mysql-test/suite/perfschema/t/one_thread_per_con.test
Normal file
@@ -0,0 +1,94 @@
|
||||
# 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
|
||||
|
||||
Reference in New Issue
Block a user