mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Merge of fix for Bug#53102 perfschema.pfs_upgrade fails on sol10 sparc64 max in parallel mode
into actual tree. No conflicts.
This commit is contained in:
@ -26,7 +26,6 @@ main.type_float @freebsd # Bug#38965 2010-05-04 alik test cases
|
|||||||
main.wait_timeout @solaris # Bug#51244 2010-04-26 alik wait_timeout fails on OpenSolaris
|
main.wait_timeout @solaris # Bug#51244 2010-04-26 alik wait_timeout fails on OpenSolaris
|
||||||
|
|
||||||
parts.partition_alter4_innodb # Bug#45299 2010-06-28 alik Test "partition_alter4_innodb" is taking too long, timeout
|
parts.partition_alter4_innodb # Bug#45299 2010-06-28 alik Test "partition_alter4_innodb" is taking too long, timeout
|
||||||
perfschema.pfs_upgrade # Bug#53102 2010-06-15 alik perfschema.pfs_upgrade fails on sol10 sparc64 max in parallel mode
|
|
||||||
|
|
||||||
rpl.rpl_heartbeat_basic # BUG#54820 2010-06-26 alik rpl.rpl_heartbeat_basic fails sporadically again
|
rpl.rpl_heartbeat_basic # BUG#54820 2010-06-26 alik rpl.rpl_heartbeat_basic fails sporadically again
|
||||||
rpl.rpl_heartbeat_2slaves # BUG#43828 2009-10-22 luis fails sporadically
|
rpl.rpl_heartbeat_2slaves # BUG#43828 2009-10-22 luis fails sporadically
|
||||||
|
29
mysql-test/suite/perfschema/include/upgrade_check.inc
Normal file
29
mysql-test/suite/perfschema/include/upgrade_check.inc
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
# Copyright (C) 2010 Oracle and/or its affiliates. All rights reserved.
|
||||||
|
#
|
||||||
|
# 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
|
||||||
|
|
||||||
|
# Routine to be called by pfs_upgrade.test
|
||||||
|
# $out_file and $err_file must be set within pfs_upgrade.test.
|
||||||
|
#
|
||||||
|
|
||||||
|
--error 1
|
||||||
|
--exec $MYSQL_UPGRADE --skip-verbose > $out_file 2> $err_file
|
||||||
|
|
||||||
|
# Verify that mysql_upgrade complained about the performance_schema
|
||||||
|
--cat_file $err_file
|
||||||
|
--error 0,1
|
||||||
|
--remove_file $out_file
|
||||||
|
--error 0,1
|
||||||
|
--remove_file $err_file
|
||||||
|
|
@ -65,3 +65,4 @@ Variable_name Value
|
|||||||
Qcache_hits 1
|
Qcache_hits 1
|
||||||
SET GLOBAL query_cache_size= default;
|
SET GLOBAL query_cache_size= default;
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
flush status;
|
||||||
|
@ -55,14 +55,21 @@ THREAD_ID EVENT_ID
|
|||||||
[THREAD_ID] [EVENT_ID]
|
[THREAD_ID] [EVENT_ID]
|
||||||
[THREAD_ID] [EVENT_ID]
|
[THREAD_ID] [EVENT_ID]
|
||||||
[THREAD_ID] [EVENT_ID]
|
[THREAD_ID] [EVENT_ID]
|
||||||
|
DROP TABLE IF EXISTS t_event;
|
||||||
|
DROP EVENT IF EXISTS t_ps_event;
|
||||||
|
CREATE TABLE t_event AS
|
||||||
|
SELECT EVENT_ID FROM performance_schema.EVENTS_WAITS_CURRENT
|
||||||
|
WHERE 1 = 2;
|
||||||
CREATE EVENT t_ps_event
|
CREATE EVENT t_ps_event
|
||||||
ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 1 SECOND
|
ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 1 SECOND
|
||||||
DO SELECT DISTINCT EVENT_ID
|
DO INSERT INTO t_event
|
||||||
|
SELECT DISTINCT EVENT_ID
|
||||||
FROM performance_schema.EVENTS_WAITS_CURRENT
|
FROM performance_schema.EVENTS_WAITS_CURRENT
|
||||||
JOIN performance_schema.EVENTS_WAITS_HISTORY USING (EVENT_ID)
|
JOIN performance_schema.EVENTS_WAITS_HISTORY USING (EVENT_ID)
|
||||||
ORDER BY EVENT_ID
|
ORDER BY EVENT_ID
|
||||||
LIMIT 1;
|
LIMIT 1;
|
||||||
ALTER TABLE t1 ADD COLUMN c INT;
|
ALTER TABLE t1 ADD COLUMN c INT;
|
||||||
|
DROP TRIGGER IF EXISTS t_ps_trigger;
|
||||||
CREATE TRIGGER t_ps_trigger BEFORE INSERT ON t1
|
CREATE TRIGGER t_ps_trigger BEFORE INSERT ON t1
|
||||||
FOR EACH ROW BEGIN
|
FOR EACH ROW BEGIN
|
||||||
SET NEW.c = (SELECT MAX(EVENT_ID)
|
SET NEW.c = (SELECT MAX(EVENT_ID)
|
||||||
@ -76,6 +83,7 @@ id c
|
|||||||
12 [EVENT_ID]
|
12 [EVENT_ID]
|
||||||
13 [EVENT_ID]
|
13 [EVENT_ID]
|
||||||
DROP TRIGGER t_ps_trigger;
|
DROP TRIGGER t_ps_trigger;
|
||||||
|
DROP PROCEDURE IF EXISTS t_ps_proc;
|
||||||
CREATE PROCEDURE t_ps_proc(IN tid INT, OUT pid INT)
|
CREATE PROCEDURE t_ps_proc(IN tid INT, OUT pid INT)
|
||||||
BEGIN
|
BEGIN
|
||||||
SELECT id FROM performance_schema.PROCESSLIST
|
SELECT id FROM performance_schema.PROCESSLIST
|
||||||
@ -83,6 +91,7 @@ WHERE THREAD_ID = tid INTO pid;
|
|||||||
END;
|
END;
|
||||||
|
|
|
|
||||||
CALL t_ps_proc(0, @p_id);
|
CALL t_ps_proc(0, @p_id);
|
||||||
|
DROP FUNCTION IF EXISTS t_ps_proc;
|
||||||
CREATE FUNCTION t_ps_func(tid INT) RETURNS int
|
CREATE FUNCTION t_ps_func(tid INT) RETURNS int
|
||||||
BEGIN
|
BEGIN
|
||||||
return (SELECT id FROM performance_schema.PROCESSLIST
|
return (SELECT id FROM performance_schema.PROCESSLIST
|
||||||
@ -92,6 +101,10 @@ END;
|
|||||||
SELECT t_ps_func(0) = @p_id;
|
SELECT t_ps_func(0) = @p_id;
|
||||||
t_ps_func(0) = @p_id
|
t_ps_func(0) = @p_id
|
||||||
1
|
1
|
||||||
|
SELECT * FROM t_event;
|
||||||
|
EVENT_ID
|
||||||
|
[EVENT_ID]
|
||||||
DROP PROCEDURE t_ps_proc;
|
DROP PROCEDURE t_ps_proc;
|
||||||
DROP FUNCTION t_ps_func;
|
DROP FUNCTION t_ps_func;
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
|
DROP TABLE t_event;
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
# Copyright (C) 2009 Sun Microsystems, Inc
|
# Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
|
||||||
#
|
#
|
||||||
# This program is free software; you can redistribute it and/or modify
|
# 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
|
# it under the terms of the GNU General Public License as published by
|
||||||
@ -10,8 +10,8 @@
|
|||||||
# GNU General Public License for more details.
|
# GNU General Public License for more details.
|
||||||
#
|
#
|
||||||
# You should have received a copy of the GNU General Public License
|
# You should have received a copy of the GNU General Public License
|
||||||
# along with this program; if not, write to the Free Software
|
# along with this program; if not, write to the Free Software Foundation,
|
||||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
# 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
# Check error handling for invalid server start options
|
# Check error handling for invalid server start options
|
||||||
@ -19,8 +19,11 @@
|
|||||||
--source include/not_embedded.inc
|
--source include/not_embedded.inc
|
||||||
--source include/have_perfschema.inc
|
--source include/have_perfschema.inc
|
||||||
|
|
||||||
|
let $outfile= $MYSQLTEST_VARDIR/tmp/bad_option_1.txt;
|
||||||
|
--error 0,1
|
||||||
|
--remove_file $outfile
|
||||||
--error 7
|
--error 7
|
||||||
--exec $MYSQLD_BOOTSTRAP_CMD --loose-console --performance-schema-enabled=maybe > $MYSQLTEST_VARDIR/tmp/bad_option_1.txt 2>&1
|
--exec $MYSQLD_BOOTSTRAP_CMD --loose-console --performance-schema-enabled=maybe > $outfile 2>&1
|
||||||
|
|
||||||
perl;
|
perl;
|
||||||
use strict;
|
use strict;
|
||||||
@ -42,4 +45,5 @@ perl;
|
|||||||
}
|
}
|
||||||
close FILE;
|
close FILE;
|
||||||
EOF
|
EOF
|
||||||
|
--remove_file $outfile
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
# Copyright (C) 2009 Sun Microsystems, Inc
|
# Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
|
||||||
#
|
#
|
||||||
# This program is free software; you can redistribute it and/or modify
|
# 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
|
# it under the terms of the GNU General Public License as published by
|
||||||
@ -10,8 +10,8 @@
|
|||||||
# GNU General Public License for more details.
|
# GNU General Public License for more details.
|
||||||
#
|
#
|
||||||
# You should have received a copy of the GNU General Public License
|
# You should have received a copy of the GNU General Public License
|
||||||
# along with this program; if not, write to the Free Software
|
# along with this program; if not, write to the Free Software Foundation,
|
||||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
# 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
# Check error handling for ambiguous server start options
|
# Check error handling for ambiguous server start options
|
||||||
@ -19,8 +19,11 @@
|
|||||||
--source include/not_embedded.inc
|
--source include/not_embedded.inc
|
||||||
--source include/have_perfschema.inc
|
--source include/have_perfschema.inc
|
||||||
|
|
||||||
|
let $outfile= $MYSQLTEST_VARDIR/tmp/bad_option_2.txt;
|
||||||
|
--error 0,1
|
||||||
|
--remove_file $outfile
|
||||||
--error 3
|
--error 3
|
||||||
--exec $MYSQLD_BOOTSTRAP_CMD --loose-console --performance-schema-max_=12 > $MYSQLTEST_VARDIR/tmp/bad_option_2.txt 2>&1
|
--exec $MYSQLD_BOOTSTRAP_CMD --loose-console --performance-schema-max_=12 > $outfile 2>&1
|
||||||
|
|
||||||
perl;
|
perl;
|
||||||
use strict;
|
use strict;
|
||||||
@ -41,4 +44,5 @@ perl;
|
|||||||
}
|
}
|
||||||
close FILE;
|
close FILE;
|
||||||
EOF
|
EOF
|
||||||
|
--remove_file $outfile
|
||||||
|
|
||||||
|
@ -81,6 +81,7 @@ update performance_schema.SETUP_INSTRUMENTS set enabled='YES';
|
|||||||
unlock tables;
|
unlock tables;
|
||||||
|
|
||||||
disconnect con1;
|
disconnect con1;
|
||||||
|
--source include/wait_until_disconnected.inc
|
||||||
|
|
||||||
--echo connection default;
|
--echo connection default;
|
||||||
connection default;
|
connection default;
|
||||||
|
@ -22,6 +22,15 @@
|
|||||||
--source include/have_perfschema.inc
|
--source include/have_perfschema.inc
|
||||||
--source include/have_lowercase0.inc
|
--source include/have_lowercase0.inc
|
||||||
|
|
||||||
|
# Some initial settings + Preemptive cleanup
|
||||||
|
let $MYSQLD_DATADIR= `SELECT @@datadir`;
|
||||||
|
let $err_file= $MYSQLTEST_VARDIR/tmp/pfs_upgrade.err;
|
||||||
|
let $out_file= $MYSQLTEST_VARDIR/tmp/pfs_upgrade.out;
|
||||||
|
--error 0,1
|
||||||
|
--remove_file $out_file
|
||||||
|
--error 0,1
|
||||||
|
--remove_file $err_file
|
||||||
|
|
||||||
--disable_warnings
|
--disable_warnings
|
||||||
drop table if exists test.user_table;
|
drop table if exists test.user_table;
|
||||||
drop procedure if exists test.user_proc;
|
drop procedure if exists test.user_proc;
|
||||||
@ -29,22 +38,20 @@ drop function if exists test.user_func;
|
|||||||
drop event if exists test.user_event;
|
drop event if exists test.user_event;
|
||||||
--enable_warnings
|
--enable_warnings
|
||||||
|
|
||||||
|
|
||||||
--echo "Testing mysql_upgrade with TABLE performance_schema.user_table"
|
--echo "Testing mysql_upgrade with TABLE performance_schema.user_table"
|
||||||
|
|
||||||
create table test.user_table(a int);
|
create table test.user_table(a int);
|
||||||
|
|
||||||
let $MYSQLD_DATADIR= `SELECT @@datadir`;
|
--error 0,1
|
||||||
|
--remove_file $MYSQLD_DATADIR/performance_schema/user_table.frm
|
||||||
--copy_file $MYSQLD_DATADIR/test/user_table.frm $MYSQLD_DATADIR/performance_schema/user_table.frm
|
--copy_file $MYSQLD_DATADIR/test/user_table.frm $MYSQLD_DATADIR/performance_schema/user_table.frm
|
||||||
|
|
||||||
# Make sure the table is visible
|
# Make sure the table is visible
|
||||||
use performance_schema;
|
use performance_schema;
|
||||||
show tables like "user_table";
|
show tables like "user_table";
|
||||||
|
|
||||||
--error 1
|
--source suite/perfschema/include/upgrade_check.inc
|
||||||
--exec $MYSQL_UPGRADE --skip-verbose > $MYSQLTEST_VARDIR/tmp/pfs_upgrade.out 2> $MYSQLTEST_VARDIR/tmp/pfs_upgrade.err
|
|
||||||
|
|
||||||
# Verify that mysql_upgrade complained about the performance_schema
|
|
||||||
--cat_file $MYSQLTEST_VARDIR/tmp/pfs_upgrade.err
|
|
||||||
|
|
||||||
# Make sure the table is still visible
|
# Make sure the table is still visible
|
||||||
show tables like "user_table";
|
show tables like "user_table";
|
||||||
@ -54,22 +61,20 @@ use test;
|
|||||||
--remove_file $MYSQLD_DATADIR/performance_schema/user_table.frm
|
--remove_file $MYSQLD_DATADIR/performance_schema/user_table.frm
|
||||||
drop table test.user_table;
|
drop table test.user_table;
|
||||||
|
|
||||||
|
|
||||||
--echo "Testing mysql_upgrade with VIEW performance_schema.user_view"
|
--echo "Testing mysql_upgrade with VIEW performance_schema.user_view"
|
||||||
|
|
||||||
create view test.user_view as select "Not supposed to be here";
|
create view test.user_view as select "Not supposed to be here";
|
||||||
|
|
||||||
let $MYSQLD_DATADIR= `SELECT @@datadir`;
|
--error 0,1
|
||||||
|
--remove_file $MYSQLD_DATADIR/performance_schema/user_view.frm
|
||||||
--copy_file $MYSQLD_DATADIR/test/user_view.frm $MYSQLD_DATADIR/performance_schema/user_view.frm
|
--copy_file $MYSQLD_DATADIR/test/user_view.frm $MYSQLD_DATADIR/performance_schema/user_view.frm
|
||||||
|
|
||||||
# Make sure the view is visible
|
# Make sure the view is visible
|
||||||
use performance_schema;
|
use performance_schema;
|
||||||
show tables like "user_view";
|
show tables like "user_view";
|
||||||
|
|
||||||
--error 1
|
--source suite/perfschema/include/upgrade_check.inc
|
||||||
--exec $MYSQL_UPGRADE --skip-verbose > $MYSQLTEST_VARDIR/tmp/pfs_upgrade.out 2> $MYSQLTEST_VARDIR/tmp/pfs_upgrade.err
|
|
||||||
|
|
||||||
# Verify that mysql_upgrade complained about the performance_schema
|
|
||||||
--cat_file $MYSQLTEST_VARDIR/tmp/pfs_upgrade.err
|
|
||||||
|
|
||||||
# Make sure the view is still visible
|
# Make sure the view is still visible
|
||||||
show tables like "user_view";
|
show tables like "user_view";
|
||||||
@ -79,6 +84,7 @@ use test;
|
|||||||
--remove_file $MYSQLD_DATADIR/performance_schema/user_view.frm
|
--remove_file $MYSQLD_DATADIR/performance_schema/user_view.frm
|
||||||
drop view test.user_view;
|
drop view test.user_view;
|
||||||
|
|
||||||
|
|
||||||
--echo "Testing mysql_upgrade with PROCEDURE performance_schema.user_proc"
|
--echo "Testing mysql_upgrade with PROCEDURE performance_schema.user_proc"
|
||||||
|
|
||||||
create procedure test.user_proc()
|
create procedure test.user_proc()
|
||||||
@ -86,17 +92,14 @@ create procedure test.user_proc()
|
|||||||
|
|
||||||
update mysql.proc set db='performance_schema' where name='user_proc';
|
update mysql.proc set db='performance_schema' where name='user_proc';
|
||||||
|
|
||||||
--error 1
|
--source suite/perfschema/include/upgrade_check.inc
|
||||||
--exec $MYSQL_UPGRADE --skip-verbose > $MYSQLTEST_VARDIR/tmp/pfs_upgrade.out 2> $MYSQLTEST_VARDIR/tmp/pfs_upgrade.err
|
|
||||||
|
|
||||||
# Verify that mysql_upgrade complained about the performance_schema
|
|
||||||
--cat_file $MYSQLTEST_VARDIR/tmp/pfs_upgrade.err
|
|
||||||
|
|
||||||
select name from mysql.proc where db='performance_schema';
|
select name from mysql.proc where db='performance_schema';
|
||||||
|
|
||||||
update mysql.proc set db='test' where name='user_proc';
|
update mysql.proc set db='test' where name='user_proc';
|
||||||
drop procedure test.user_proc;
|
drop procedure test.user_proc;
|
||||||
|
|
||||||
|
|
||||||
--echo "Testing mysql_upgrade with FUNCTION performance_schema.user_func"
|
--echo "Testing mysql_upgrade with FUNCTION performance_schema.user_func"
|
||||||
|
|
||||||
create function test.user_func() returns integer
|
create function test.user_func() returns integer
|
||||||
@ -104,17 +107,14 @@ create function test.user_func() returns integer
|
|||||||
|
|
||||||
update mysql.proc set db='performance_schema' where name='user_func';
|
update mysql.proc set db='performance_schema' where name='user_func';
|
||||||
|
|
||||||
--error 1
|
--source suite/perfschema/include/upgrade_check.inc
|
||||||
--exec $MYSQL_UPGRADE --skip-verbose > $MYSQLTEST_VARDIR/tmp/pfs_upgrade.out 2> $MYSQLTEST_VARDIR/tmp/pfs_upgrade.err
|
|
||||||
|
|
||||||
# Verify that mysql_upgrade complained about the performance_schema
|
|
||||||
--cat_file $MYSQLTEST_VARDIR/tmp/pfs_upgrade.err
|
|
||||||
|
|
||||||
select name from mysql.proc where db='performance_schema';
|
select name from mysql.proc where db='performance_schema';
|
||||||
|
|
||||||
update mysql.proc set db='test' where name='user_func';
|
update mysql.proc set db='test' where name='user_func';
|
||||||
drop function test.user_func;
|
drop function test.user_func;
|
||||||
|
|
||||||
|
|
||||||
--echo "Testing mysql_upgrade with EVENT performance_schema.user_event"
|
--echo "Testing mysql_upgrade with EVENT performance_schema.user_event"
|
||||||
|
|
||||||
create event test.user_event on schedule every 1 day do
|
create event test.user_event on schedule every 1 day do
|
||||||
@ -122,17 +122,10 @@ create event test.user_event on schedule every 1 day do
|
|||||||
|
|
||||||
update mysql.event set db='performance_schema' where name='user_event';
|
update mysql.event set db='performance_schema' where name='user_event';
|
||||||
|
|
||||||
--error 1
|
--source suite/perfschema/include/upgrade_check.inc
|
||||||
--exec $MYSQL_UPGRADE --skip-verbose > $MYSQLTEST_VARDIR/tmp/pfs_upgrade.out 2> $MYSQLTEST_VARDIR/tmp/pfs_upgrade.err
|
|
||||||
|
|
||||||
# Verify that mysql_upgrade complained about the performance_schema
|
|
||||||
--cat_file $MYSQLTEST_VARDIR/tmp/pfs_upgrade.err
|
|
||||||
|
|
||||||
select name from mysql.event where db='performance_schema';
|
select name from mysql.event where db='performance_schema';
|
||||||
|
|
||||||
update mysql.event set db='test' where name='user_event';
|
update mysql.event set db='test' where name='user_event';
|
||||||
drop event test.user_event;
|
drop event test.user_event;
|
||||||
|
|
||||||
--remove_file $MYSQLTEST_VARDIR/tmp/pfs_upgrade.out
|
|
||||||
--remove_file $MYSQLTEST_VARDIR/tmp/pfs_upgrade.err
|
|
||||||
|
|
||||||
|
@ -350,9 +350,9 @@ TRUNCATE TABLE performance_schema.EVENTS_WAITS_HISTORY;
|
|||||||
TRUNCATE TABLE performance_schema.EVENTS_WAITS_CURRENT;
|
TRUNCATE TABLE performance_schema.EVENTS_WAITS_CURRENT;
|
||||||
|
|
||||||
--echo # Clean up
|
--echo # Clean up
|
||||||
|
|
||||||
--connection default
|
|
||||||
--disconnect pfs_user_4
|
--disconnect pfs_user_4
|
||||||
|
--source include/wait_until_disconnected.inc
|
||||||
|
--connection default
|
||||||
REVOKE ALL PRIVILEGES, GRANT OPTION FROM pfs_user_4;
|
REVOKE ALL PRIVILEGES, GRANT OPTION FROM pfs_user_4;
|
||||||
DROP USER pfs_user_4;
|
DROP USER pfs_user_4;
|
||||||
flush privileges;
|
flush privileges;
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
# Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
|
# Copyright (C) 2009 Sun Microsystems, Inc
|
||||||
#
|
#
|
||||||
# This program is free software; you can redistribute it and/or modify
|
# 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
|
# it under the terms of the GNU General Public License as published by
|
||||||
@ -10,8 +10,8 @@
|
|||||||
# GNU General Public License for more details.
|
# GNU General Public License for more details.
|
||||||
#
|
#
|
||||||
# You should have received a copy of the GNU General Public License
|
# You should have received a copy of the GNU General Public License
|
||||||
# along with this program; if not, write to the Free Software Foundation,
|
# along with this program; if not, write to the Free Software
|
||||||
# 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
|
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||||
|
|
||||||
# Tests for PERFORMANCE_SCHEMA
|
# Tests for PERFORMANCE_SCHEMA
|
||||||
|
|
||||||
@ -33,7 +33,6 @@ SET GLOBAL query_cache_size=1355776;
|
|||||||
|
|
||||||
flush query cache;
|
flush query cache;
|
||||||
reset query cache;
|
reset query cache;
|
||||||
# Reset Qcache_* to a known state
|
|
||||||
flush status;
|
flush status;
|
||||||
|
|
||||||
select * from t1;
|
select * from t1;
|
||||||
@ -67,4 +66,5 @@ show status like "Qcache_hits";
|
|||||||
SET GLOBAL query_cache_size= default;
|
SET GLOBAL query_cache_size= default;
|
||||||
|
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
flush status;
|
||||||
|
|
||||||
|
@ -85,6 +85,7 @@ update performance_schema.SETUP_INSTRUMENTS set enabled='YES';
|
|||||||
--enable_result_log
|
--enable_result_log
|
||||||
|
|
||||||
disconnect con1;
|
disconnect con1;
|
||||||
|
--source include/wait_until_disconnected.inc
|
||||||
|
|
||||||
--echo connection default;
|
--echo connection default;
|
||||||
connection default;
|
connection default;
|
||||||
|
1
mysql-test/suite/perfschema/t/selects-master.opt
Normal file
1
mysql-test/suite/perfschema/t/selects-master.opt
Normal file
@ -0,0 +1 @@
|
|||||||
|
--event-scheduler
|
@ -1,4 +1,4 @@
|
|||||||
# Copyright (C) 2008-2009 Sun Microsystems, Inc
|
# Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
|
||||||
#
|
#
|
||||||
# This program is free software; you can redistribute it and/or modify
|
# 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
|
# it under the terms of the GNU General Public License as published by
|
||||||
@ -10,8 +10,8 @@
|
|||||||
# GNU General Public License for more details.
|
# GNU General Public License for more details.
|
||||||
#
|
#
|
||||||
# You should have received a copy of the GNU General Public License
|
# You should have received a copy of the GNU General Public License
|
||||||
# along with this program; if not, write to the Free Software
|
# along with this program; if not, write to the Free Software Foundation,
|
||||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
# 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
|
||||||
|
|
||||||
--source include/not_embedded.inc
|
--source include/not_embedded.inc
|
||||||
--source include/have_perfschema.inc
|
--source include/have_perfschema.inc
|
||||||
@ -85,20 +85,32 @@ LIMIT 5;
|
|||||||
|
|
||||||
# EVENT
|
# EVENT
|
||||||
|
|
||||||
|
# Check that the event_scheduler is really running
|
||||||
|
--source include/running_event_scheduler.inc
|
||||||
|
|
||||||
|
--disable_warnings
|
||||||
|
DROP TABLE IF EXISTS t_event;
|
||||||
|
DROP EVENT IF EXISTS t_ps_event;
|
||||||
|
--enable_warnings
|
||||||
|
CREATE TABLE t_event AS
|
||||||
|
SELECT EVENT_ID FROM performance_schema.EVENTS_WAITS_CURRENT
|
||||||
|
WHERE 1 = 2;
|
||||||
CREATE EVENT t_ps_event
|
CREATE EVENT t_ps_event
|
||||||
ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 1 SECOND
|
ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 1 SECOND
|
||||||
DO SELECT DISTINCT EVENT_ID
|
DO INSERT INTO t_event
|
||||||
|
SELECT DISTINCT EVENT_ID
|
||||||
FROM performance_schema.EVENTS_WAITS_CURRENT
|
FROM performance_schema.EVENTS_WAITS_CURRENT
|
||||||
JOIN performance_schema.EVENTS_WAITS_HISTORY USING (EVENT_ID)
|
JOIN performance_schema.EVENTS_WAITS_HISTORY USING (EVENT_ID)
|
||||||
ORDER BY EVENT_ID
|
ORDER BY EVENT_ID
|
||||||
LIMIT 1;
|
LIMIT 1;
|
||||||
|
|
||||||
--sleep 2
|
|
||||||
|
|
||||||
# TRIGGER
|
# TRIGGER
|
||||||
|
|
||||||
ALTER TABLE t1 ADD COLUMN c INT;
|
ALTER TABLE t1 ADD COLUMN c INT;
|
||||||
|
|
||||||
|
--disable_warnings
|
||||||
|
DROP TRIGGER IF EXISTS t_ps_trigger;
|
||||||
|
--enable_warnings
|
||||||
delimiter |;
|
delimiter |;
|
||||||
|
|
||||||
CREATE TRIGGER t_ps_trigger BEFORE INSERT ON t1
|
CREATE TRIGGER t_ps_trigger BEFORE INSERT ON t1
|
||||||
@ -119,6 +131,9 @@ DROP TRIGGER t_ps_trigger;
|
|||||||
|
|
||||||
# PROCEDURE
|
# PROCEDURE
|
||||||
|
|
||||||
|
--disable_warnings
|
||||||
|
DROP PROCEDURE IF EXISTS t_ps_proc;
|
||||||
|
--enable_warnings
|
||||||
delimiter |;
|
delimiter |;
|
||||||
|
|
||||||
CREATE PROCEDURE t_ps_proc(IN tid INT, OUT pid INT)
|
CREATE PROCEDURE t_ps_proc(IN tid INT, OUT pid INT)
|
||||||
@ -135,6 +150,9 @@ CALL t_ps_proc(0, @p_id);
|
|||||||
|
|
||||||
# FUNCTION
|
# FUNCTION
|
||||||
|
|
||||||
|
--disable_warnings
|
||||||
|
DROP FUNCTION IF EXISTS t_ps_proc;
|
||||||
|
--enable_warnings
|
||||||
delimiter |;
|
delimiter |;
|
||||||
|
|
||||||
CREATE FUNCTION t_ps_func(tid INT) RETURNS int
|
CREATE FUNCTION t_ps_func(tid INT) RETURNS int
|
||||||
@ -149,8 +167,17 @@ delimiter ;|
|
|||||||
|
|
||||||
SELECT t_ps_func(0) = @p_id;
|
SELECT t_ps_func(0) = @p_id;
|
||||||
|
|
||||||
DROP PROCEDURE t_ps_proc;
|
# We might reach this point too early which means the event scheduler has not
|
||||||
DROP FUNCTION t_ps_func;
|
# execute our "t_ps_event". Therefore we poll till the record was inserted
|
||||||
|
# and run our test statement afterwards.
|
||||||
|
let $wait_timeout= 20;
|
||||||
|
let $wait_condition= SELECT COUNT(*) = 1 FROM t_event;
|
||||||
|
--source include/wait_condition.inc
|
||||||
|
--replace_column 1 [EVENT_ID]
|
||||||
|
SELECT * FROM t_event;
|
||||||
|
|
||||||
# Clean up
|
# Clean up
|
||||||
|
DROP PROCEDURE t_ps_proc;
|
||||||
|
DROP FUNCTION t_ps_func;
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
|
DROP TABLE t_event;
|
||||||
|
Reference in New Issue
Block a user