418 lines
		
	
	
		
			16 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
		
		
			
		
	
	
			418 lines
		
	
	
		
			16 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
| 
								 | 
							
								show profiles;
							 | 
						||
| 
								 | 
							
								Query_ID	Duration	Query
							 | 
						||
| 
								 | 
							
								show profile all;
							 | 
						||
| 
								 | 
							
								Status	Duration	CPU_user	CPU_system	Context_voluntary	Context_involuntary	Block_ops_in	Block_ops_out	Messages_sent	Messages_received	Page_faults_major	Page_faults_minor	Swaps	Source_function	Source_file	Source_line
							 | 
						||
| 
								 | 
							
								show session variables like 'profil%';
							 | 
						||
| 
								 | 
							
								Variable_name	Value
							 | 
						||
| 
								 | 
							
								profiling	OFF
							 | 
						||
| 
								 | 
							
								profiling_history_size	15
							 | 
						||
| 
								 | 
							
								select @@profiling;
							 | 
						||
| 
								 | 
							
								@@profiling
							 | 
						||
| 
								 | 
							
								0
							 | 
						||
| 
								 | 
							
								set global profiling = ON;
							 | 
						||
| 
								 | 
							
								ERROR HY000: Variable 'profiling' is a SESSION variable and can't be used with SET GLOBAL
							 | 
						||
| 
								 | 
							
								set @start_value= @@global.profiling_history_size;
							 | 
						||
| 
								 | 
							
								set global profiling_history_size=100;
							 | 
						||
| 
								 | 
							
								show global variables like 'profil%';
							 | 
						||
| 
								 | 
							
								Variable_name	Value
							 | 
						||
| 
								 | 
							
								profiling	OFF
							 | 
						||
| 
								 | 
							
								profiling_history_size	100
							 | 
						||
| 
								 | 
							
								set session profiling = ON;
							 | 
						||
| 
								 | 
							
								set session profiling_history_size=30;
							 | 
						||
| 
								 | 
							
								show session variables like 'profil%';
							 | 
						||
| 
								 | 
							
								Variable_name	Value
							 | 
						||
| 
								 | 
							
								profiling	ON
							 | 
						||
| 
								 | 
							
								profiling_history_size	30
							 | 
						||
| 
								 | 
							
								select @@profiling;
							 | 
						||
| 
								 | 
							
								@@profiling
							 | 
						||
| 
								 | 
							
								1
							 | 
						||
| 
								 | 
							
								create table t1 (
							 | 
						||
| 
								 | 
							
								a int,
							 | 
						||
| 
								 | 
							
								b int
							 | 
						||
| 
								 | 
							
								);
							 | 
						||
| 
								 | 
							
								insert into t1 values (1,1), (2,null), (3, 4);
							 | 
						||
| 
								 | 
							
								insert into t1 values (5,1), (6,null), (7, 4);
							 | 
						||
| 
								 | 
							
								insert into t1 values (1,1), (2,null), (3, 4);
							 | 
						||
| 
								 | 
							
								insert into t1 values (5,1), (6,null), (7, 4);
							 | 
						||
| 
								 | 
							
								select max(x) from (select sum(a) as x from t1 group by b) as teeone;
							 | 
						||
| 
								 | 
							
								max(x)
							 | 
						||
| 
								 | 
							
								20
							 | 
						||
| 
								 | 
							
								insert into t1 select * from t1;
							 | 
						||
| 
								 | 
							
								select count(*) from t1;
							 | 
						||
| 
								 | 
							
								count(*)
							 | 
						||
| 
								 | 
							
								24
							 | 
						||
| 
								 | 
							
								insert into t1 select * from t1;
							 | 
						||
| 
								 | 
							
								insert into t1 select * from t1;
							 | 
						||
| 
								 | 
							
								insert into t1 select * from t1;
							 | 
						||
| 
								 | 
							
								select count(*) from t1;
							 | 
						||
| 
								 | 
							
								count(*)
							 | 
						||
| 
								 | 
							
								192
							 | 
						||
| 
								 | 
							
								insert into t1 select * from t1;
							 | 
						||
| 
								 | 
							
								insert into t1 select * from t1;
							 | 
						||
| 
								 | 
							
								insert into t1 select * from t1;
							 | 
						||
| 
								 | 
							
								select count(*) from t1;
							 | 
						||
| 
								 | 
							
								count(*)
							 | 
						||
| 
								 | 
							
								1536
							 | 
						||
| 
								 | 
							
								select sum(a) from t1;
							 | 
						||
| 
								 | 
							
								sum(a)
							 | 
						||
| 
								 | 
							
								6144
							 | 
						||
| 
								 | 
							
								select sum(a) from t1 group by b;
							 | 
						||
| 
								 | 
							
								sum(a)
							 | 
						||
| 
								 | 
							
								2048
							 | 
						||
| 
								 | 
							
								1536
							 | 
						||
| 
								 | 
							
								2560
							 | 
						||
| 
								 | 
							
								select sum(a) + sum(b) from t1 group by b;
							 | 
						||
| 
								 | 
							
								sum(a) + sum(b)
							 | 
						||
| 
								 | 
							
								NULL
							 | 
						||
| 
								 | 
							
								2048
							 | 
						||
| 
								 | 
							
								4608
							 | 
						||
| 
								 | 
							
								select max(x) from (select sum(a) as x from t1 group by b) as teeone;
							 | 
						||
| 
								 | 
							
								max(x)
							 | 
						||
| 
								 | 
							
								2560
							 | 
						||
| 
								 | 
							
								select '012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890' as big_string;
							 | 
						||
| 
								 | 
							
								big_string
							 | 
						||
| 
								 | 
							
								012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890
							 | 
						||
| 
								 | 
							
								show profiles;
							 | 
						||
| 
								 | 
							
								Query_ID	Duration	Query
							 | 
						||
| 
								 | 
							
								1	#	set session profiling_history_size=30
							 | 
						||
| 
								 | 
							
								2	#	show session variables like 'profil%'
							 | 
						||
| 
								 | 
							
								3	#	select @@profiling
							 | 
						||
| 
								 | 
							
								4	#	create table t1 (
							 | 
						||
| 
								 | 
							
								a int,
							 | 
						||
| 
								 | 
							
								b int
							 | 
						||
| 
								 | 
							
								)
							 | 
						||
| 
								 | 
							
								5	#	insert into t1 values (1,1), (2,null), (3, 4)
							 | 
						||
| 
								 | 
							
								6	#	insert into t1 values (5,1), (6,null), (7, 4)
							 | 
						||
| 
								 | 
							
								7	#	insert into t1 values (1,1), (2,null), (3, 4)
							 | 
						||
| 
								 | 
							
								8	#	insert into t1 values (5,1), (6,null), (7, 4)
							 | 
						||
| 
								 | 
							
								9	#	select max(x) from (select sum(a) as x from t1 group by b) as teeone
							 | 
						||
| 
								 | 
							
								10	#	insert into t1 select * from t1
							 | 
						||
| 
								 | 
							
								11	#	select count(*) from t1
							 | 
						||
| 
								 | 
							
								12	#	insert into t1 select * from t1
							 | 
						||
| 
								 | 
							
								13	#	insert into t1 select * from t1
							 | 
						||
| 
								 | 
							
								14	#	insert into t1 select * from t1
							 | 
						||
| 
								 | 
							
								15	#	select count(*) from t1
							 | 
						||
| 
								 | 
							
								16	#	insert into t1 select * from t1
							 | 
						||
| 
								 | 
							
								17	#	insert into t1 select * from t1
							 | 
						||
| 
								 | 
							
								18	#	insert into t1 select * from t1
							 | 
						||
| 
								 | 
							
								19	#	select count(*) from t1
							 | 
						||
| 
								 | 
							
								20	#	select sum(a) from t1
							 | 
						||
| 
								 | 
							
								21	#	select sum(a) from t1 group by b
							 | 
						||
| 
								 | 
							
								22	#	select sum(a) + sum(b) from t1 group by b
							 | 
						||
| 
								 | 
							
								23	#	select max(x) from (select sum(a) as x from t1 group by b) as teeone
							 | 
						||
| 
								 | 
							
								24	#	select '0123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345
							 | 
						||
| 
								 | 
							
								show profile for query 15;
							 | 
						||
| 
								 | 
							
								show profile cpu for query 15;
							 | 
						||
| 
								 | 
							
								show profile cpu, block io for query 15;
							 | 
						||
| 
								 | 
							
								show profile cpu for query 9 limit 2 offset 2;
							 | 
						||
| 
								 | 
							
								show profile cpu for query 10 limit 0;
							 | 
						||
| 
								 | 
							
								show profile cpu for query 65534;
							 | 
						||
| 
								 | 
							
								show profile memory;
							 | 
						||
| 
								 | 
							
								show profile block io;
							 | 
						||
| 
								 | 
							
								show profile context switches;
							 | 
						||
| 
								 | 
							
								show profile page faults;
							 | 
						||
| 
								 | 
							
								show profile ipc;
							 | 
						||
| 
								 | 
							
								show profile swaps limit 1 offset 2;
							 | 
						||
| 
								 | 
							
								show profile source;
							 | 
						||
| 
								 | 
							
								show profile all for query 0 limit 0;
							 | 
						||
| 
								 | 
							
								show profile all for query 15;
							 | 
						||
| 
								 | 
							
								select * from information_schema.profiling;
							 | 
						||
| 
								 | 
							
								select query_id, state, duration from information_schema.profiling;
							 | 
						||
| 
								 | 
							
								select query_id, sum(duration) from information_schema.profiling group by query_id;
							 | 
						||
| 
								 | 
							
								select query_id, count(*) from information_schema.profiling group by query_id;
							 | 
						||
| 
								 | 
							
								select sum(duration) from information_schema.profiling;
							 | 
						||
| 
								 | 
							
								select query_id, count(*), sum(duration) from information_schema.profiling group by query_id;
							 | 
						||
| 
								 | 
							
								select CPU_user, CPU_system, Context_voluntary, Context_involuntary, Block_ops_in, Block_ops_out, Messages_sent, Messages_received, Page_faults_major, Page_faults_minor, Swaps, Source_function, Source_file, Source_line from information_schema.profiling;
							 | 
						||
| 
								 | 
							
								drop table if exists t1, t2, t3;
							 | 
						||
| 
								 | 
							
								Warnings:
							 | 
						||
| 
								 | 
							
								Note	1051	Unknown table 't2'
							 | 
						||
| 
								 | 
							
								Note	1051	Unknown table 't3'
							 | 
						||
| 
								 | 
							
								create table t1 (id int );
							 | 
						||
| 
								 | 
							
								create table t2 (id int not null);
							 | 
						||
| 
								 | 
							
								create table t3 (id int not null primary key);
							 | 
						||
| 
								 | 
							
								insert into t1 values (1), (2), (3);
							 | 
						||
| 
								 | 
							
								insert into t2 values (1), (2), (3);
							 | 
						||
| 
								 | 
							
								insert into t3 values (1), (2), (3);
							 | 
						||
| 
								 | 
							
								show profiles;
							 | 
						||
| 
								 | 
							
								Query_ID	Duration	Query
							 | 
						||
| 
								 | 
							
								10	#	insert into t1 select * from t1
							 | 
						||
| 
								 | 
							
								11	#	select count(*) from t1
							 | 
						||
| 
								 | 
							
								12	#	insert into t1 select * from t1
							 | 
						||
| 
								 | 
							
								13	#	insert into t1 select * from t1
							 | 
						||
| 
								 | 
							
								14	#	insert into t1 select * from t1
							 | 
						||
| 
								 | 
							
								15	#	select count(*) from t1
							 | 
						||
| 
								 | 
							
								16	#	insert into t1 select * from t1
							 | 
						||
| 
								 | 
							
								17	#	insert into t1 select * from t1
							 | 
						||
| 
								 | 
							
								18	#	insert into t1 select * from t1
							 | 
						||
| 
								 | 
							
								19	#	select count(*) from t1
							 | 
						||
| 
								 | 
							
								20	#	select sum(a) from t1
							 | 
						||
| 
								 | 
							
								21	#	select sum(a) from t1 group by b
							 | 
						||
| 
								 | 
							
								22	#	select sum(a) + sum(b) from t1 group by b
							 | 
						||
| 
								 | 
							
								23	#	select max(x) from (select sum(a) as x from t1 group by b) as teeone
							 | 
						||
| 
								 | 
							
								24	#	select '0123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345
							 | 
						||
| 
								 | 
							
								25	#	select * from information_schema.profiling
							 | 
						||
| 
								 | 
							
								26	#	select query_id, state, duration from information_schema.profiling
							 | 
						||
| 
								 | 
							
								27	#	select query_id, sum(duration) from information_schema.profiling group by query_id
							 | 
						||
| 
								 | 
							
								28	#	select query_id, count(*) from information_schema.profiling group by query_id
							 | 
						||
| 
								 | 
							
								29	#	select sum(duration) from information_schema.profiling
							 | 
						||
| 
								 | 
							
								30	#	select query_id, count(*), sum(duration) from information_schema.profiling group by query_id
							 | 
						||
| 
								 | 
							
								31	#	select CPU_user, CPU_system, Context_voluntary, Context_involuntary, Block_ops_in, Block_ops_out, Messages_sent, Messages_received, Page_faults_major, Page_faults_minor, Swaps, Source_function, Source_file, Source_line from information_schema.profiling
							 | 
						||
| 
								 | 
							
								32	#	drop table if exists t1, t2, t3
							 | 
						||
| 
								 | 
							
								33	#	SHOW WARNINGS
							 | 
						||
| 
								 | 
							
								34	#	create table t1 (id int )
							 | 
						||
| 
								 | 
							
								35	#	create table t2 (id int not null)
							 | 
						||
| 
								 | 
							
								36	#	create table t3 (id int not null primary key)
							 | 
						||
| 
								 | 
							
								37	#	insert into t1 values (1), (2), (3)
							 | 
						||
| 
								 | 
							
								38	#	insert into t2 values (1), (2), (3)
							 | 
						||
| 
								 | 
							
								39	#	insert into t3 values (1), (2), (3)
							 | 
						||
| 
								 | 
							
								select * from t1;
							 | 
						||
| 
								 | 
							
								id
							 | 
						||
| 
								 | 
							
								1
							 | 
						||
| 
								 | 
							
								2
							 | 
						||
| 
								 | 
							
								3
							 | 
						||
| 
								 | 
							
								show profiles;
							 | 
						||
| 
								 | 
							
								Query_ID	Duration	Query
							 | 
						||
| 
								 | 
							
								11	#	select count(*) from t1
							 | 
						||
| 
								 | 
							
								12	#	insert into t1 select * from t1
							 | 
						||
| 
								 | 
							
								13	#	insert into t1 select * from t1
							 | 
						||
| 
								 | 
							
								14	#	insert into t1 select * from t1
							 | 
						||
| 
								 | 
							
								15	#	select count(*) from t1
							 | 
						||
| 
								 | 
							
								16	#	insert into t1 select * from t1
							 | 
						||
| 
								 | 
							
								17	#	insert into t1 select * from t1
							 | 
						||
| 
								 | 
							
								18	#	insert into t1 select * from t1
							 | 
						||
| 
								 | 
							
								19	#	select count(*) from t1
							 | 
						||
| 
								 | 
							
								20	#	select sum(a) from t1
							 | 
						||
| 
								 | 
							
								21	#	select sum(a) from t1 group by b
							 | 
						||
| 
								 | 
							
								22	#	select sum(a) + sum(b) from t1 group by b
							 | 
						||
| 
								 | 
							
								23	#	select max(x) from (select sum(a) as x from t1 group by b) as teeone
							 | 
						||
| 
								 | 
							
								24	#	select '0123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345
							 | 
						||
| 
								 | 
							
								25	#	select * from information_schema.profiling
							 | 
						||
| 
								 | 
							
								26	#	select query_id, state, duration from information_schema.profiling
							 | 
						||
| 
								 | 
							
								27	#	select query_id, sum(duration) from information_schema.profiling group by query_id
							 | 
						||
| 
								 | 
							
								28	#	select query_id, count(*) from information_schema.profiling group by query_id
							 | 
						||
| 
								 | 
							
								29	#	select sum(duration) from information_schema.profiling
							 | 
						||
| 
								 | 
							
								30	#	select query_id, count(*), sum(duration) from information_schema.profiling group by query_id
							 | 
						||
| 
								 | 
							
								31	#	select CPU_user, CPU_system, Context_voluntary, Context_involuntary, Block_ops_in, Block_ops_out, Messages_sent, Messages_received, Page_faults_major, Page_faults_minor, Swaps, Source_function, Source_file, Source_line from information_schema.profiling
							 | 
						||
| 
								 | 
							
								32	#	drop table if exists t1, t2, t3
							 | 
						||
| 
								 | 
							
								33	#	SHOW WARNINGS
							 | 
						||
| 
								 | 
							
								34	#	create table t1 (id int )
							 | 
						||
| 
								 | 
							
								35	#	create table t2 (id int not null)
							 | 
						||
| 
								 | 
							
								36	#	create table t3 (id int not null primary key)
							 | 
						||
| 
								 | 
							
								37	#	insert into t1 values (1), (2), (3)
							 | 
						||
| 
								 | 
							
								38	#	insert into t2 values (1), (2), (3)
							 | 
						||
| 
								 | 
							
								39	#	insert into t3 values (1), (2), (3)
							 | 
						||
| 
								 | 
							
								40	#	select * from t1
							 | 
						||
| 
								 | 
							
								This ^^ should end in "select * from t1;"
							 | 
						||
| 
								 | 
							
								delete from t1;
							 | 
						||
| 
								 | 
							
								insert into t1 values (1), (2), (3);
							 | 
						||
| 
								 | 
							
								insert into t1 values (1), (2), (3);
							 | 
						||
| 
								 | 
							
								select * from t1;
							 | 
						||
| 
								 | 
							
								id
							 | 
						||
| 
								 | 
							
								1
							 | 
						||
| 
								 | 
							
								2
							 | 
						||
| 
								 | 
							
								3
							 | 
						||
| 
								 | 
							
								1
							 | 
						||
| 
								 | 
							
								2
							 | 
						||
| 
								 | 
							
								3
							 | 
						||
| 
								 | 
							
								show profiles;
							 | 
						||
| 
								 | 
							
								Query_ID	Duration	Query
							 | 
						||
| 
								 | 
							
								15	#	select count(*) from t1
							 | 
						||
| 
								 | 
							
								16	#	insert into t1 select * from t1
							 | 
						||
| 
								 | 
							
								17	#	insert into t1 select * from t1
							 | 
						||
| 
								 | 
							
								18	#	insert into t1 select * from t1
							 | 
						||
| 
								 | 
							
								19	#	select count(*) from t1
							 | 
						||
| 
								 | 
							
								20	#	select sum(a) from t1
							 | 
						||
| 
								 | 
							
								21	#	select sum(a) from t1 group by b
							 | 
						||
| 
								 | 
							
								22	#	select sum(a) + sum(b) from t1 group by b
							 | 
						||
| 
								 | 
							
								23	#	select max(x) from (select sum(a) as x from t1 group by b) as teeone
							 | 
						||
| 
								 | 
							
								24	#	select '0123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345
							 | 
						||
| 
								 | 
							
								25	#	select * from information_schema.profiling
							 | 
						||
| 
								 | 
							
								26	#	select query_id, state, duration from information_schema.profiling
							 | 
						||
| 
								 | 
							
								27	#	select query_id, sum(duration) from information_schema.profiling group by query_id
							 | 
						||
| 
								 | 
							
								28	#	select query_id, count(*) from information_schema.profiling group by query_id
							 | 
						||
| 
								 | 
							
								29	#	select sum(duration) from information_schema.profiling
							 | 
						||
| 
								 | 
							
								30	#	select query_id, count(*), sum(duration) from information_schema.profiling group by query_id
							 | 
						||
| 
								 | 
							
								31	#	select CPU_user, CPU_system, Context_voluntary, Context_involuntary, Block_ops_in, Block_ops_out, Messages_sent, Messages_received, Page_faults_major, Page_faults_minor, Swaps, Source_function, Source_file, Source_line from information_schema.profiling
							 | 
						||
| 
								 | 
							
								32	#	drop table if exists t1, t2, t3
							 | 
						||
| 
								 | 
							
								33	#	SHOW WARNINGS
							 | 
						||
| 
								 | 
							
								34	#	create table t1 (id int )
							 | 
						||
| 
								 | 
							
								35	#	create table t2 (id int not null)
							 | 
						||
| 
								 | 
							
								36	#	create table t3 (id int not null primary key)
							 | 
						||
| 
								 | 
							
								37	#	insert into t1 values (1), (2), (3)
							 | 
						||
| 
								 | 
							
								38	#	insert into t2 values (1), (2), (3)
							 | 
						||
| 
								 | 
							
								39	#	insert into t3 values (1), (2), (3)
							 | 
						||
| 
								 | 
							
								40	#	select * from t1
							 | 
						||
| 
								 | 
							
								41	#	delete from t1
							 | 
						||
| 
								 | 
							
								42	#	insert into t1 values (1), (2), (3)
							 | 
						||
| 
								 | 
							
								43	#	insert into t1 values (1), (2), (3)
							 | 
						||
| 
								 | 
							
								44	#	select * from t1
							 | 
						||
| 
								 | 
							
								set session profiling = OFF;
							 | 
						||
| 
								 | 
							
								select sum(id) from t1;
							 | 
						||
| 
								 | 
							
								sum(id)
							 | 
						||
| 
								 | 
							
								12
							 | 
						||
| 
								 | 
							
								show profiles;
							 | 
						||
| 
								 | 
							
								Query_ID	Duration	Query
							 | 
						||
| 
								 | 
							
								15	#	select count(*) from t1
							 | 
						||
| 
								 | 
							
								16	#	insert into t1 select * from t1
							 | 
						||
| 
								 | 
							
								17	#	insert into t1 select * from t1
							 | 
						||
| 
								 | 
							
								18	#	insert into t1 select * from t1
							 | 
						||
| 
								 | 
							
								19	#	select count(*) from t1
							 | 
						||
| 
								 | 
							
								20	#	select sum(a) from t1
							 | 
						||
| 
								 | 
							
								21	#	select sum(a) from t1 group by b
							 | 
						||
| 
								 | 
							
								22	#	select sum(a) + sum(b) from t1 group by b
							 | 
						||
| 
								 | 
							
								23	#	select max(x) from (select sum(a) as x from t1 group by b) as teeone
							 | 
						||
| 
								 | 
							
								24	#	select '0123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345678900123456789001234567890012345
							 | 
						||
| 
								 | 
							
								25	#	select * from information_schema.profiling
							 | 
						||
| 
								 | 
							
								26	#	select query_id, state, duration from information_schema.profiling
							 | 
						||
| 
								 | 
							
								27	#	select query_id, sum(duration) from information_schema.profiling group by query_id
							 | 
						||
| 
								 | 
							
								28	#	select query_id, count(*) from information_schema.profiling group by query_id
							 | 
						||
| 
								 | 
							
								29	#	select sum(duration) from information_schema.profiling
							 | 
						||
| 
								 | 
							
								30	#	select query_id, count(*), sum(duration) from information_schema.profiling group by query_id
							 | 
						||
| 
								 | 
							
								31	#	select CPU_user, CPU_system, Context_voluntary, Context_involuntary, Block_ops_in, Block_ops_out, Messages_sent, Messages_received, Page_faults_major, Page_faults_minor, Swaps, Source_function, Source_file, Source_line from information_schema.profiling
							 | 
						||
| 
								 | 
							
								32	#	drop table if exists t1, t2, t3
							 | 
						||
| 
								 | 
							
								33	#	SHOW WARNINGS
							 | 
						||
| 
								 | 
							
								34	#	create table t1 (id int )
							 | 
						||
| 
								 | 
							
								35	#	create table t2 (id int not null)
							 | 
						||
| 
								 | 
							
								36	#	create table t3 (id int not null primary key)
							 | 
						||
| 
								 | 
							
								37	#	insert into t1 values (1), (2), (3)
							 | 
						||
| 
								 | 
							
								38	#	insert into t2 values (1), (2), (3)
							 | 
						||
| 
								 | 
							
								39	#	insert into t3 values (1), (2), (3)
							 | 
						||
| 
								 | 
							
								40	#	select * from t1
							 | 
						||
| 
								 | 
							
								41	#	delete from t1
							 | 
						||
| 
								 | 
							
								42	#	insert into t1 values (1), (2), (3)
							 | 
						||
| 
								 | 
							
								43	#	insert into t1 values (1), (2), (3)
							 | 
						||
| 
								 | 
							
								44	#	select * from t1
							 | 
						||
| 
								 | 
							
								set session profiling = ON;
							 | 
						||
| 
								 | 
							
								select @@profiling;
							 | 
						||
| 
								 | 
							
								@@profiling
							 | 
						||
| 
								 | 
							
								1
							 | 
						||
| 
								 | 
							
								create function f1() returns varchar(50) return 'hello';
							 | 
						||
| 
								 | 
							
								select @@profiling;
							 | 
						||
| 
								 | 
							
								@@profiling
							 | 
						||
| 
								 | 
							
								1
							 | 
						||
| 
								 | 
							
								select * from t1 where id <> f1();
							 | 
						||
| 
								 | 
							
								id
							 | 
						||
| 
								 | 
							
								1
							 | 
						||
| 
								 | 
							
								2
							 | 
						||
| 
								 | 
							
								3
							 | 
						||
| 
								 | 
							
								1
							 | 
						||
| 
								 | 
							
								2
							 | 
						||
| 
								 | 
							
								3
							 | 
						||
| 
								 | 
							
								select @@profiling;
							 | 
						||
| 
								 | 
							
								@@profiling
							 | 
						||
| 
								 | 
							
								1
							 | 
						||
| 
								 | 
							
								set session profiling = OFF;
							 | 
						||
| 
								 | 
							
								drop table if exists profile_log;
							 | 
						||
| 
								 | 
							
								Warnings:
							 | 
						||
| 
								 | 
							
								Note	1051	Unknown table 'profile_log'
							 | 
						||
| 
								 | 
							
								create table profile_log (how_many int);
							 | 
						||
| 
								 | 
							
								drop procedure if exists p1;
							 | 
						||
| 
								 | 
							
								drop procedure if exists p2;
							 | 
						||
| 
								 | 
							
								drop procedure if exists p3;
							 | 
						||
| 
								 | 
							
								create procedure p1 () 
							 | 
						||
| 
								 | 
							
								modifies sql data 
							 | 
						||
| 
								 | 
							
								begin 
							 | 
						||
| 
								 | 
							
								set profiling = ON; 
							 | 
						||
| 
								 | 
							
								select 'This p1 should show up in profiling'; 
							 | 
						||
| 
								 | 
							
								insert into profile_log select count(*) from information_schema.profiling; 
							 | 
						||
| 
								 | 
							
								end//
							 | 
						||
| 
								 | 
							
								create procedure p2() 
							 | 
						||
| 
								 | 
							
								deterministic 
							 | 
						||
| 
								 | 
							
								begin 
							 | 
						||
| 
								 | 
							
								set profiling = ON; 
							 | 
						||
| 
								 | 
							
								call p1(); 
							 | 
						||
| 
								 | 
							
								select 'This p2 should show up in profiling'; 
							 | 
						||
| 
								 | 
							
								end//
							 | 
						||
| 
								 | 
							
								create procedure p3 () 
							 | 
						||
| 
								 | 
							
								reads sql data 
							 | 
						||
| 
								 | 
							
								begin 
							 | 
						||
| 
								 | 
							
								set profiling = ON; 
							 | 
						||
| 
								 | 
							
								select 'This p3 should show up in profiling'; 
							 | 
						||
| 
								 | 
							
								show profile; 
							 | 
						||
| 
								 | 
							
								end//
							 | 
						||
| 
								 | 
							
								first call to p1
							 | 
						||
| 
								 | 
							
								call p1;
							 | 
						||
| 
								 | 
							
								select * from profile_log;
							 | 
						||
| 
								 | 
							
								second call to p1
							 | 
						||
| 
								 | 
							
								call p1;
							 | 
						||
| 
								 | 
							
								select * from profile_log;
							 | 
						||
| 
								 | 
							
								third call to p1
							 | 
						||
| 
								 | 
							
								call p1;
							 | 
						||
| 
								 | 
							
								select * from profile_log;
							 | 
						||
| 
								 | 
							
								set session profiling = OFF;
							 | 
						||
| 
								 | 
							
								call p2;
							 | 
						||
| 
								 | 
							
								set session profiling = OFF;
							 | 
						||
| 
								 | 
							
								call p3;
							 | 
						||
| 
								 | 
							
								show profiles;
							 | 
						||
| 
								 | 
							
								drop procedure if exists p1;
							 | 
						||
| 
								 | 
							
								drop procedure if exists p2;
							 | 
						||
| 
								 | 
							
								drop procedure if exists p3;
							 | 
						||
| 
								 | 
							
								drop table if exists profile_log;
							 | 
						||
| 
								 | 
							
								set session profiling = ON;
							 | 
						||
| 
								 | 
							
								drop table if exists t2;
							 | 
						||
| 
								 | 
							
								create table t2 (id int not null);
							 | 
						||
| 
								 | 
							
								create trigger t2_bi before insert on t2 for each row set @x=0;
							 | 
						||
| 
								 | 
							
								select @@profiling;
							 | 
						||
| 
								 | 
							
								@@profiling
							 | 
						||
| 
								 | 
							
								1
							 | 
						||
| 
								 | 
							
								insert into t2 values (1), (2), (3);
							 | 
						||
| 
								 | 
							
								select @@profiling;
							 | 
						||
| 
								 | 
							
								@@profiling
							 | 
						||
| 
								 | 
							
								1
							 | 
						||
| 
								 | 
							
								set session profiling = ON;
							 | 
						||
| 
								 | 
							
								drop table if exists t1, t2;
							 | 
						||
| 
								 | 
							
								create table t1 (id int not null primary key);
							 | 
						||
| 
								 | 
							
								create table t2 (id int not null primary key, id1 int not null);
							 | 
						||
| 
								 | 
							
								select @@profiling;
							 | 
						||
| 
								 | 
							
								@@profiling
							 | 
						||
| 
								 | 
							
								1
							 | 
						||
| 
								 | 
							
								alter table t2 add foreign key (id1) references t1 (id) on delete cascade;
							 | 
						||
| 
								 | 
							
								select @@profiling;
							 | 
						||
| 
								 | 
							
								@@profiling
							 | 
						||
| 
								 | 
							
								1
							 | 
						||
| 
								 | 
							
								lock table t1 write;
							 | 
						||
| 
								 | 
							
								select @@profiling;
							 | 
						||
| 
								 | 
							
								@@profiling
							 | 
						||
| 
								 | 
							
								1
							 | 
						||
| 
								 | 
							
								unlock table;
							 | 
						||
| 
								 | 
							
								select @@profiling;
							 | 
						||
| 
								 | 
							
								@@profiling
							 | 
						||
| 
								 | 
							
								1
							 | 
						||
| 
								 | 
							
								set autocommit=0;
							 | 
						||
| 
								 | 
							
								select @@profiling, @@autocommit;
							 | 
						||
| 
								 | 
							
								@@profiling	@@autocommit
							 | 
						||
| 
								 | 
							
								1	0
							 | 
						||
| 
								 | 
							
								begin;
							 | 
						||
| 
								 | 
							
								select @@profiling;
							 | 
						||
| 
								 | 
							
								@@profiling
							 | 
						||
| 
								 | 
							
								1
							 | 
						||
| 
								 | 
							
								insert into t1 values (1);
							 | 
						||
| 
								 | 
							
								insert into t2 values (1,1);
							 | 
						||
| 
								 | 
							
								testing referential integrity cascade
							 | 
						||
| 
								 | 
							
								delete from t1 where id = 1;
							 | 
						||
| 
								 | 
							
								select @@profiling;
							 | 
						||
| 
								 | 
							
								@@profiling
							 | 
						||
| 
								 | 
							
								1
							 | 
						||
| 
								 | 
							
								testing rollback
							 | 
						||
| 
								 | 
							
								rollback;
							 | 
						||
| 
								 | 
							
								select @@profiling;
							 | 
						||
| 
								 | 
							
								@@profiling
							 | 
						||
| 
								 | 
							
								1
							 | 
						||
| 
								 | 
							
								testing commit
							 | 
						||
| 
								 | 
							
								begin;
							 | 
						||
| 
								 | 
							
								select @@profiling;
							 | 
						||
| 
								 | 
							
								@@profiling
							 | 
						||
| 
								 | 
							
								1
							 | 
						||
| 
								 | 
							
								commit;
							 | 
						||
| 
								 | 
							
								select @@profiling;
							 | 
						||
| 
								 | 
							
								@@profiling
							 | 
						||
| 
								 | 
							
								1
							 | 
						||
| 
								 | 
							
								drop table if exists t1, t2, t3;
							 | 
						||
| 
								 | 
							
								drop view if exists v1;
							 | 
						||
| 
								 | 
							
								Warnings:
							 | 
						||
| 
								 | 
							
								Note	1051	Unknown table 'test.v1'
							 | 
						||
| 
								 | 
							
								drop function if exists f1;
							 | 
						||
| 
								 | 
							
								set session profiling = OFF;
							 | 
						||
| 
								 | 
							
								set global profiling_history_size= @start_value;
							 | 
						||
| 
								 | 
							
								End of 5.0 tests
							 |