mirror of
				https://github.com/MariaDB/server.git
				synced 2025-11-03 20:36:16 +01:00 
			
		
		
		
	Updated tests: cases with bugs or which cannot be run with the cursor-protocol were excluded with "--disable_cursor_protocol"/"--enable_cursor_protocol" Fix for v.10.5
		
			
				
	
	
		
			66 lines
		
	
	
	
		
			2.1 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			66 lines
		
	
	
	
		
			2.1 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
# MDEV-7586 regression test.
 | 
						|
# Test if created_tmp_tables status variable is correctly incremented.
 | 
						|
--source include/have_perfschema.inc
 | 
						|
--source include/not_embedded.inc
 | 
						|
 | 
						|
# Tests will be skipped for the view protocol because the view protocol creates 
 | 
						|
# an additional util connection and other statistics data
 | 
						|
-- source include/no_view_protocol.inc
 | 
						|
 | 
						|
create table t2 (a int);
 | 
						|
insert into t2 values (1),(2),(3);
 | 
						|
create view v2 as select a from t2;
 | 
						|
 | 
						|
--disable_cursor_protocol
 | 
						|
flush status;
 | 
						|
select * from v2;
 | 
						|
--disable_ps_protocol
 | 
						|
show status like '%Created_tmp%';
 | 
						|
--enable_ps_protocol
 | 
						|
 | 
						|
explain select * from v2;
 | 
						|
 | 
						|
select * from (select * from t2) T1;
 | 
						|
--disable_ps_protocol
 | 
						|
show status like '%Created_tmp%';
 | 
						|
--enable_ps_protocol
 | 
						|
--enable_cursor_protocol
 | 
						|
 | 
						|
explain select * from (select * from t2) T1;
 | 
						|
 | 
						|
 | 
						|
drop view v2;
 | 
						|
drop table t2;
 | 
						|
 | 
						|
 | 
						|
--disable_ps_protocol
 | 
						|
 | 
						|
CREATE TABLE t1(a int);
 | 
						|
INSERT INTO t1 values(1),(2);
 | 
						|
CREATE TABLE t2(a int);
 | 
						|
INSERT INTO t2 values(1),(2);
 | 
						|
 | 
						|
EXPLAIN SELECT * FROM t1 WHERE a IN (SELECT * FROM t2 GROUP BY a HAVING a > 1);
 | 
						|
truncate table performance_schema.events_statements_history_long;
 | 
						|
flush status;
 | 
						|
CREATE TABLE t3 SELECT * FROM t1 WHERE a IN (SELECT * FROM t2 GROUP BY a HAVING a > 1);
 | 
						|
--echo # Performance schema should be the same as "Created_tmp_tables" variable below
 | 
						|
select sum(created_tmp_tables) from performance_schema.events_statements_history_long;
 | 
						|
show status like '%Created_tmp%';
 | 
						|
drop table t3;
 | 
						|
 | 
						|
EXPLAIN SELECT * FROM t1 WHERE a IN (SELECT * FROM t2 GROUP BY a);
 | 
						|
truncate table performance_schema.events_statements_history_long;
 | 
						|
flush status;
 | 
						|
CREATE TABLE t3 SELECT * FROM t1 WHERE a IN (SELECT * FROM t2 GROUP BY a);
 | 
						|
--echo # Performance schema should be the same as "Created_tmp_tables" variable below
 | 
						|
select sum(created_tmp_tables) from performance_schema.events_statements_history_long;
 | 
						|
show status like '%Created_tmp%';
 | 
						|
 | 
						|
drop table t1,t2,t3;
 | 
						|
 | 
						|
truncate table performance_schema.events_statements_history_long;
 | 
						|
flush status;
 | 
						|
--echo # Performance schema should be the same as "Created_tmp_tables" variable below
 | 
						|
select sum(created_tmp_tables) from performance_schema.events_statements_history_long;
 | 
						|
show status like '%Created_tmp%';
 |