mirror of
				https://github.com/MariaDB/server.git
				synced 2025-11-04 04:46:15 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			53 lines
		
	
	
	
		
			1.9 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			53 lines
		
	
	
	
		
			1.9 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
# Tests for PERFORMANCE_SCHEMA table io
 | 
						|
# This test makes a restart because without it, events_waits_history_long
 | 
						|
# sometimes contains duplicated entries of roles_mapping.
 | 
						|
 | 
						|
--source include/not_embedded.inc
 | 
						|
--source include/have_perfschema.inc
 | 
						|
--source include/restart_mysqld.inc
 | 
						|
--source ../include/table_io_setup_helper.inc
 | 
						|
 | 
						|
# Remove "deleted" records from mysql.db that may come from previous tests,
 | 
						|
# to avoid displaying spurious fetch.
 | 
						|
# There are two possible server reactions which are both ok.
 | 
						|
# Table  Op      Msg_type        Msg_text
 | 
						|
# mysql.db       optimize        status  OK
 | 
						|
# or
 | 
						|
# mysql.db       optimize        status  Table is already up to date
 | 
						|
# Therefore we suppress the query_log here.
 | 
						|
--echo # We are forced to suppress here the server response.
 | 
						|
--disable_result_log
 | 
						|
optimize table mysql.user;
 | 
						|
optimize table mysql.db;
 | 
						|
optimize table mysql.proxies_priv;
 | 
						|
optimize table mysql.roles_mapping;
 | 
						|
optimize table mysql.tables_priv;
 | 
						|
optimize table mysql.procs_priv;
 | 
						|
optimize table mysql.servers;
 | 
						|
optimize table mysql.roles_mapping;
 | 
						|
--enable_result_log
 | 
						|
 | 
						|
# Start recording events
 | 
						|
update performance_schema.setup_consumers set enabled='YES';
 | 
						|
update performance_schema.setup_objects set enabled='YES'
 | 
						|
  where object_type='TABLE' and object_schema= 'mysql';
 | 
						|
 | 
						|
# Code to test
 | 
						|
 | 
						|
flush privileges;
 | 
						|
# This will cause table io in mysql system security tables
 | 
						|
insert into test.marker set a = 1;
 | 
						|
# This will not, the ACL cache is already loaded
 | 
						|
insert into test.marker set a = 1;
 | 
						|
insert into test.marker set a = 1;
 | 
						|
show global variables like "performance_schema%";
 | 
						|
show global status like "performance_schema%";
 | 
						|
# Stop recording events + pull results
 | 
						|
let $schema_to_dump= "test", "mysql";
 | 
						|
--source ../include/table_io_result_helper.inc
 | 
						|
 | 
						|
# Cleanup
 | 
						|
--source ../include/table_io_cleanup_helper.inc
 | 
						|
 | 
						|
update performance_schema.setup_objects set enabled='NO'
 | 
						|
  where object_type='TABLE' and object_schema= 'mysql';
 |