mariadb/mysql-test/suite/perfschema/t/server_init.test
Sergei Golubchik 38e3ae155d mysql-5.5 merge
2012-01-16 20:16:35 +01:00

185 lines
6.1 KiB
Text

# Tests for PERFORMANCE_SCHEMA
--source include/not_embedded.inc
--source include/have_perfschema.inc
# This test verifies that the mysys and server instruments are properly
# initialized and recorded by the performance schema during the bootstrap
# sequence in mysqld main().
# Note that some globals mutexes/rwlocks/conds that depend on #ifdef options
# or runtime options are not tested here, to have a predictable result.
use performance_schema;
# Verify that these global mutexes have been properly initilized in mysys
select count(name) from mutex_instances
where name like "wait/synch/mutex/mysys/THR_LOCK_threads";
select count(name) from mutex_instances
where name like "wait/synch/mutex/mysys/THR_LOCK_malloc";
select count(name) from mutex_instances
where name like "wait/synch/mutex/mysys/THR_LOCK_open";
select count(name) from mutex_instances
where name like "wait/synch/mutex/mysys/THR_LOCK_isam";
select count(name) from mutex_instances
where name like "wait/synch/mutex/mysys/THR_LOCK_myisam";
select count(name) from mutex_instances
where name like "wait/synch/mutex/mysys/THR_LOCK_heap";
select count(name) from mutex_instances
where name like "wait/synch/mutex/mysys/THR_LOCK_net";
select count(name) from mutex_instances
where name like "wait/synch/mutex/mysys/THR_LOCK_charset";
# There are no global rwlock in mysys
# Verify that these global conditions have been properly initilized in mysys
select count(name) from cond_instances
where name like "wait/synch/cond/mysys/THR_COND_threads";
# Verify that these global mutexes have been properly initilized in sql
select count(name) from mutex_instances
where name like "wait/synch/mutex/sql/LOCK_open";
select count(name) from mutex_instances
where name like "wait/synch/mutex/sql/LOCK_thread_count";
select count(name) from mutex_instances
where name like "wait/synch/mutex/sql/LOCK_status";
select count(name) from mutex_instances
where name like "wait/synch/mutex/sql/LOCK_error_log";
select count(name) from mutex_instances
where name like "wait/synch/mutex/sql/LOCK_delayed_insert";
select count(name) from mutex_instances
where name like "wait/synch/mutex/sql/LOCK_uuid_short_generator";
select count(name) from mutex_instances
where name like "wait/synch/mutex/sql/LOCK_delayed_status";
select count(name) from mutex_instances
where name like "wait/synch/mutex/sql/LOCK_delayed_create";
select count(name) from mutex_instances
where name like "wait/synch/mutex/sql/LOCK_crypt";
select count(name) from mutex_instances
where name like "wait/synch/mutex/sql/LOCK_slave_list";
select count(name) from mutex_instances
where name like "wait/synch/mutex/sql/LOCK_active_mi";
select count(name) from mutex_instances
where name like "wait/synch/mutex/sql/LOCK_manager";
select count(name) from mutex_instances
where name like "wait/synch/mutex/sql/LOCK_global_system_variables";
select count(name) from mutex_instances
where name like "wait/synch/mutex/sql/LOCK_user_conn";
select count(name) from mutex_instances
where name like "wait/synch/mutex/sql/LOCK_prepared_stmt_count";
select count(name) from mutex_instances
where name like "wait/synch/mutex/sql/LOCK_connection_count";
select count(name) from mutex_instances
where name like "wait/synch/mutex/sql/LOCK_server_started";
select count(name) from mutex_instances
where name like "wait/synch/mutex/sql/LOCK_rpl_status";
# LOG_INFO object are created on demand, and are not global.
# select count(name) from mutex_instances
# where name like "wait/synch/mutex/sql/LOG_INFO::lock";
select count(name) from mutex_instances
where name like "wait/synch/mutex/sql/Query_cache::structure_guard_mutex";
# The event scheduler may be disabled
# select count(name) from mutex_instances
# where name like "wait/synch/mutex/sql/Event_scheduler::LOCK_scheduler_state";
select count(name) from mutex_instances
where name like "wait/synch/mutex/sql/LOCK_event_queue";
select count(name) from mutex_instances
where name like "wait/synch/mutex/sql/LOCK_user_locks";
select count(name) from mutex_instances
where name like "wait/synch/mutex/sql/Cversion_lock";
select count(name) from mutex_instances
where name like "wait/synch/mutex/sql/LOCK_audit_mask";
select count(name) from mutex_instances
where name like "wait/synch/mutex/sql/LOCK_xid_cache";
select count(name) from mutex_instances
where name like "wait/synch/mutex/sql/LOCK_plugin";
# Not a global variable, may be destroyed already.
# select count(name) from mutex_instances
# where name like "wait/synch/mutex/sql/LOCK_gdl";
select count(name) from mutex_instances
where name like "wait/synch/mutex/sql/tz_LOCK";
# Verify that these global rwlocks have been properly initilized in sql
select count(name) from rwlock_instances
where name like "wait/synch/rwlock/sql/LOCK_grant";
select count(name) from rwlock_instances
where name like "wait/synch/rwlock/sql/LOCK_sys_init_connect";
select count(name) from rwlock_instances
where name like "wait/synch/rwlock/sql/LOCK_sys_init_slave";
select count(name) from rwlock_instances
where name like "wait/synch/rwlock/sql/LOCK_system_variables_hash";
# Verify that these global conditions have been properly initilized in sql
select count(name) from cond_instances
where name like "wait/synch/cond/sql/COND_server_started";
select count(name) from cond_instances
where name like "wait/synch/cond/sql/COND_refresh";
select count(name) from cond_instances
where name like "wait/synch/cond/sql/COND_thread_count";
select count(name) from cond_instances
where name like "wait/synch/cond/sql/COND_manager";
select count(name) from cond_instances
where name like "wait/synch/cond/sql/COND_thread_cache";
select count(name) from cond_instances
where name like "wait/synch/cond/sql/COND_flush_thread_cache";
select count(name) from cond_instances
where name like "wait/synch/cond/sql/COND_rpl_status";
select count(name) from cond_instances
where name like "wait/synch/cond/sql/Query_cache::COND_cache_status_changed";
# The event scheduler may be disabled
# select count(name) from cond_instances
# where name like "wait/synch/cond/sql/Event_scheduler::COND_state";
select count(name) from cond_instances
where name like "wait/synch/cond/sql/COND_queue_state";