58 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
		
		
			
		
	
	
			58 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
|  | -- source include/not_embedded.inc | ||
|  | 
 | ||
|  | # | ||
|  | # BUG#10308: purge log with subselect | ||
|  | # Bug#28553: mysqld crash in "purge master log before(select time from information_schema)" | ||
|  | # | ||
|  | --error 1064 | ||
|  | purge master logs before (select adddate(current_timestamp(), interval -4 day)); | ||
|  | purge master logs before adddate(current_timestamp(), interval -4 day); | ||
|  | 
 | ||
|  | # | ||
|  | # Bug31048: Many nested subqueries may cause server crash. | ||
|  | # | ||
|  | create table t1(a int,b int,key(a),key(b)); | ||
|  | insert into t1(a,b) values (1,2),(2,1),(2,3),(3,4),(5,4),(5,5), | ||
|  |   (6,7),(7,4),(5,3); | ||
|  | 
 | ||
|  | let $nesting= 26; | ||
|  | let $should_work_nesting= 5; | ||
|  | let $start= select sum(a),a from t1 where a> ( select sum(a) from t1 ; | ||
|  | let $end= )group by a ; | ||
|  | let $start_app= where a> ( select sum(a) from t1 ; | ||
|  | let $end_pre= )group by b limit 1 ; | ||
|  | 
 | ||
|  | --disable_result_log | ||
|  | --disable_query_log | ||
|  | # At least 4 level nesting should work without errors | ||
|  | while ($should_work_nesting) | ||
|  | { | ||
|  | --echo $should_work_nesting | ||
|  |   eval $start $end; | ||
|  |   eval explain $start $end; | ||
|  |   let $start= $start | ||
|  |   $start_app; | ||
|  |   let $end= $end_pre | ||
|  |   $end; | ||
|  |   dec $should_work_nesting; | ||
|  | } | ||
|  | # Other may fail with the 'stack overrun error' | ||
|  | while ($nesting) | ||
|  | { | ||
|  | --echo $nesting | ||
|  | --error 0,1436 | ||
|  |   eval $start $end; | ||
|  | --error 0,1436 | ||
|  |   eval explain $start $end; | ||
|  |   let $start= $start | ||
|  |   $start_app; | ||
|  |   let $end= $end_pre | ||
|  |   $end; | ||
|  |   dec $nesting; | ||
|  | } | ||
|  | --enable_result_log | ||
|  | --enable_query_log | ||
|  | drop table t1; | ||
|  | 
 | ||
|  | --echo End of 5.1 tests |