mirror of
https://github.com/MariaDB/server.git
synced 2025-07-20 10:24:14 +03:00
This was done to get more information about where time is spent. Now we can get proper timing for time spent in commit, rollback, binlog write etc. Following stages was added: - Commit - Commit_implicit - Rollback - Rollback implicit - Binlog write - Init for update - This is used instead of "Init" for insert, update and delete. - Staring cleanup Following stages where changed: - "Unlocking tables" stage reset stage to previous stage at end - "binlog write" stage resets stage to previous stage at end - "end" -> "end of update loop" - "cleaning up" -> "Reset for next command" - Added stage_searching_rows_for_update when searching for rows to be deleted. Other things: - Renamed all stages to start with big letter (before there was no consitency) - Increased performance_schema_max_stage_classes from 150 to 160. - Most of the test changes in performance schema comes from renaming of stages. - Removed duplicate output of variables and inital state in a lot of performance schema tests. This was done to make it easier to change a default value for a performance variable without affecting all tests. - Added start_server_variables.test to check configuration - Removed some duplicate "closing tables" stages - Updated position for "stage_init_update" and "stage_updating" for delete, insert and update to be just before update loop (for more exact timing). - Don't set "Checking permissions" twice in a row. - Remove stage_end stage from creating views (not done for create table either). - Updated default performance history size from 10 to 20 because of new stages - Ensure that ps_enabled is correct (to be used in a later patch)
84 lines
4.1 KiB
SQL
84 lines
4.1 KiB
SQL
# Tests for PERFORMANCE_SCHEMA
|
|
|
|
show databases;
|
|
|
|
select count(*) from performance_schema.performance_timers;
|
|
select count(*) from performance_schema.setup_consumers;
|
|
# wait/io/table/sql/handler is a native instrument
|
|
# wait/lock/table/sql/handler is a native instrument
|
|
# idle/io/socket is a native instrument
|
|
select count(*) > 3 from performance_schema.setup_instruments;
|
|
select count(*) from performance_schema.setup_timers;
|
|
|
|
# Make sure we don't crash, no matter what the starting parameters are
|
|
|
|
--disable_result_log
|
|
--disable_query_log
|
|
select * from performance_schema.accounts;
|
|
select * from performance_schema.cond_instances;
|
|
select * from performance_schema.events_stages_current;
|
|
select * from performance_schema.events_stages_history;
|
|
select * from performance_schema.events_stages_history_long;
|
|
select * from performance_schema.events_stages_summary_by_account_by_event_name;
|
|
select * from performance_schema.events_stages_summary_by_host_by_event_name;
|
|
select * from performance_schema.events_stages_summary_by_thread_by_event_name;
|
|
select * from performance_schema.events_stages_summary_by_user_by_event_name;
|
|
select * from performance_schema.events_stages_summary_global_by_event_name;
|
|
select * from performance_schema.events_statements_current;
|
|
select * from performance_schema.events_statements_history;
|
|
select * from performance_schema.events_statements_history_long;
|
|
select * from performance_schema.events_statements_summary_by_account_by_event_name;
|
|
select * from performance_schema.events_statements_summary_by_digest;
|
|
select * from performance_schema.events_statements_summary_by_host_by_event_name;
|
|
select * from performance_schema.events_statements_summary_by_thread_by_event_name;
|
|
select * from performance_schema.events_statements_summary_by_user_by_event_name;
|
|
select * from performance_schema.events_statements_summary_global_by_event_name;
|
|
select * from performance_schema.events_waits_current;
|
|
select * from performance_schema.events_waits_history;
|
|
select * from performance_schema.events_waits_history_long;
|
|
select * from performance_schema.events_waits_summary_by_account_by_event_name;
|
|
select * from performance_schema.events_waits_summary_by_host_by_event_name;
|
|
select * from performance_schema.events_waits_summary_by_instance;
|
|
select * from performance_schema.events_waits_summary_by_thread_by_event_name;
|
|
select * from performance_schema.events_waits_summary_by_user_by_event_name;
|
|
select * from performance_schema.events_waits_summary_global_by_event_name;
|
|
select * from performance_schema.file_instances;
|
|
select * from performance_schema.file_summary_by_event_name;
|
|
select * from performance_schema.file_summary_by_instance;
|
|
select * from performance_schema.host_cache;
|
|
select * from performance_schema.hosts;
|
|
select * from performance_schema.mutex_instances;
|
|
select * from performance_schema.objects_summary_global_by_type;
|
|
select * from performance_schema.performance_timers;
|
|
select * from performance_schema.rwlock_instances;
|
|
select * from performance_schema.session_account_connect_attrs;
|
|
select * from performance_schema.session_connect_attrs;
|
|
select * from performance_schema.setup_actors;
|
|
select * from performance_schema.setup_consumers;
|
|
select * from performance_schema.setup_instruments;
|
|
select * from performance_schema.setup_objects;
|
|
select * from performance_schema.setup_timers;
|
|
select * from performance_schema.socket_instances;
|
|
select * from performance_schema.socket_summary_by_instance;
|
|
select * from performance_schema.socket_summary_by_event_name;
|
|
select * from performance_schema.table_io_waits_summary_by_index_usage;
|
|
select * from performance_schema.table_io_waits_summary_by_table;
|
|
select * from performance_schema.table_lock_waits_summary_by_table;
|
|
select * from performance_schema.threads;
|
|
select * from performance_schema.users;
|
|
--enable_result_log
|
|
--enable_query_log
|
|
|
|
# This has an unrepeatable output, it does depends too much on
|
|
# - the platform hardware (sizeof structures, padding)
|
|
# - the compiler used (sizeof(enum))
|
|
# - the platform header files (sizeof(size_t))
|
|
# - the code path in the server (what gets executed and instrumented
|
|
# at runtime)
|
|
|
|
--disable_result_log
|
|
show engine PERFORMANCE_SCHEMA status;
|
|
show status like "performance_schema%";
|
|
--enable_result_log
|
|
|