mirror of
				https://github.com/MariaDB/server.git
				synced 2025-10-31 10:56:12 +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';
 | 
