mirror of
https://github.com/MariaDB/server.git
synced 2026-01-06 05:22:24 +03:00
perfschema 5.6.10 initial commit.
10.0 files
This commit is contained in:
170
mysql-test/suite/perfschema/t/misc.test
Normal file
170
mysql-test/suite/perfschema/t/misc.test
Normal file
@@ -0,0 +1,170 @@
|
||||
# Tests for PERFORMANCE_SCHEMA
|
||||
# Miscelaneous
|
||||
|
||||
--source include/not_embedded.inc
|
||||
--source include/have_perfschema.inc
|
||||
|
||||
#
|
||||
# Bug#12790483 OBJECTS_SUMMARY_GLOBAL_BY_TYPE AND RENAME TABLE
|
||||
#
|
||||
# Rename table leaves old tables names behind in
|
||||
# performance_schema.objects_summary_global_by_type
|
||||
#
|
||||
SELECT object_schema, object_name FROM performance_schema.objects_summary_global_by_type
|
||||
WHERE object_schema='test';
|
||||
|
||||
CREATE TABLE test.t_before(a INT);
|
||||
INSERT INTO test.t_before VALUES (1);
|
||||
|
||||
# The new table should appear in OBJECTS_SUMMARY_GLOBAL_BY_TYPE.
|
||||
|
||||
SELECT object_schema, object_name FROM performance_schema.objects_summary_global_by_type
|
||||
WHERE object_schema='test';
|
||||
|
||||
RENAME TABLE test.t_before TO test.t_after;
|
||||
|
||||
# The renamed table should appear in OBJECTS_SUMMARY_GLOBAL_BY_TYPE, but only
|
||||
# after it is accessed.
|
||||
|
||||
SELECT COUNT(*) FROM test.t_after;
|
||||
|
||||
SELECT object_schema, object_name FROM performance_schema.objects_summary_global_by_type
|
||||
WHERE object_schema='test';
|
||||
|
||||
DROP TABLE test.t_after;
|
||||
|
||||
# The renamed table should not appear in OBJECTS_SUMMARY_GLOBAL_BY_TYPE.
|
||||
|
||||
SELECT object_schema, object_name FROM performance_schema.objects_summary_global_by_type
|
||||
WHERE object_schema='test';
|
||||
|
||||
#
|
||||
# Verify table views are ignored by the table io instrumentation.
|
||||
#
|
||||
|
||||
CREATE TABLE test.t1(a INT);
|
||||
INSERT INTO test.t1 VALUES (1);
|
||||
CREATE VIEW test.v1 AS SELECT * FROM test.t1;
|
||||
SELECT COUNT(*) FROM test.v1;
|
||||
|
||||
# Verify that a PFS table share was not created for the view.
|
||||
SELECT object_schema, object_name FROM performance_schema.objects_summary_global_by_type
|
||||
WHERE object_schema='test';
|
||||
|
||||
DROP VIEW test.v1;
|
||||
DROP TABLE test.t1;
|
||||
|
||||
SELECT object_schema, object_name FROM performance_schema.objects_summary_global_by_type
|
||||
WHERE object_schema='test';
|
||||
|
||||
|
||||
#
|
||||
# Bug#45496 Performance schema: assertion fails in
|
||||
# ha_perfschema::rnd_init:223
|
||||
#
|
||||
|
||||
--disable_result_log
|
||||
SELECT EVENT_ID FROM performance_schema.events_waits_current
|
||||
WHERE THREAD_ID IN
|
||||
(SELECT THREAD_ID FROM performance_schema.threads)
|
||||
AND EVENT_NAME IN
|
||||
(SELECT NAME FROM performance_schema.setup_instruments
|
||||
WHERE NAME LIKE "wait/synch/%")
|
||||
LIMIT 1;
|
||||
--enable_result_log
|
||||
|
||||
#
|
||||
# Bug#45088 Should not be able to create tables of engine PERFORMANCE_SCHEMA
|
||||
#
|
||||
|
||||
--error ER_WRONG_PERFSCHEMA_USAGE
|
||||
create table test.t1(a int) engine=performance_schema;
|
||||
|
||||
# The table should not appear in OBJECTS_SUMMARY_GLOBAL_BY_TYPE
|
||||
|
||||
SELECT object_schema, object_name FROM performance_schema.objects_summary_global_by_type
|
||||
WHERE object_schema='test';
|
||||
|
||||
#
|
||||
# Bug#44897 Performance Schema: can create a ghost table in another database
|
||||
#
|
||||
|
||||
--error ER_WRONG_PERFSCHEMA_USAGE
|
||||
create table test.t1 like performance_schema.events_waits_current;
|
||||
|
||||
# The table should not appear in OBJECTS_SUMMARY_GLOBAL_BY_TYPE
|
||||
|
||||
SELECT object_schema, object_name FROM performance_schema.objects_summary_global_by_type
|
||||
WHERE object_schema='test';
|
||||
|
||||
#
|
||||
# Bug#44898 PerformanceSchema: can create a table in db performance_schema, cannot insert
|
||||
#
|
||||
|
||||
--error ER_TABLEACCESS_DENIED_ERROR
|
||||
create table performance_schema.t1(a int);
|
||||
|
||||
# The table should not appear in OBJECTS_SUMMARY_GLOBAL_BY_TYPE
|
||||
|
||||
SELECT object_schema, object_name FROM performance_schema.objects_summary_global_by_type
|
||||
WHERE object_schema='test';
|
||||
|
||||
#
|
||||
# Bug#51447 performance schema evil twin files
|
||||
#
|
||||
|
||||
--disable_warnings
|
||||
drop table if exists test.ghost;
|
||||
--enable_warnings
|
||||
|
||||
create table test.ghost (a int, b int);
|
||||
alter table test.ghost add index index_a(a);
|
||||
alter table test.ghost add index index_b(b);
|
||||
insert into test.ghost values (1, 3);
|
||||
insert into test.ghost values (2, 4);
|
||||
select * from test.ghost;
|
||||
|
||||
drop table test.ghost;
|
||||
|
||||
# Shoud return nothing
|
||||
select * from performance_schema.file_instances
|
||||
where file_name like "%ghost%";
|
||||
|
||||
#
|
||||
# Bug#52586 Misleading error message on attempt to access
|
||||
# a P_S table using a wrong name
|
||||
|
||||
--error ER_NO_SUCH_TABLE
|
||||
select * from performance_schema.no_such_table;
|
||||
|
||||
#
|
||||
# Bug#12370950 - 60905: TABLE_IO_WAITS_SUMMARY_BY_INDEX_USAGE AGGREGATES NON-INSERT DML WRONGLY
|
||||
#
|
||||
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS t_60905;
|
||||
--enable_warnings
|
||||
CREATE TABLE t_60905 (i INT, j INT, KEY(i)) ENGINE = InnoDB;
|
||||
INSERT INTO t_60905 VALUES
|
||||
(1,2), (3,4), (5,6), (7,8), (9,10);
|
||||
|
||||
# should delete with a "single" PRIMARY lookup (2 PRIMARY fetch, 1 PRIMARY delete)
|
||||
DELETE FROM t_60905 WHERE i = 1;
|
||||
|
||||
# should delete with a full scan (5 NULL fetch, 1 NULL delete)
|
||||
DELETE FROM t_60905 WHERE j = 8;
|
||||
|
||||
# show the instrument data
|
||||
SELECT object_schema,
|
||||
object_name,
|
||||
index_name,
|
||||
count_fetch,
|
||||
count_insert,
|
||||
count_update,
|
||||
count_delete
|
||||
FROM performance_schema.table_io_waits_summary_by_index_usage
|
||||
WHERE object_schema = 'test'
|
||||
AND object_name = 't_60905';
|
||||
|
||||
DROP TABLE t_60905;
|
||||
|
||||
Reference in New Issue
Block a user