66 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			PHP
		
	
	
	
		
		
			
		
	
	
			66 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			PHP
		
	
	
	
| 
								 | 
							
								# include/index_merge_2sweeps.inc
							 | 
						||
| 
								 | 
							
								#
							 | 
						||
| 
								 | 
							
								# 2-sweeps read Index_merge test
							 | 
						||
| 
								 | 
							
								#
							 | 
						||
| 
								 | 
							
								# The variable
							 | 
						||
| 
								 | 
							
								#     $engine_type       -- storage engine to be tested
							 | 
						||
| 
								 | 
							
								# has to be set before sourcing this script.
							 | 
						||
| 
								 | 
							
								#
							 | 
						||
| 
								 | 
							
								# Last update:
							 | 
						||
| 
								 | 
							
								# 2006-08-02 ML test refactored
							 | 
						||
| 
								 | 
							
								#               old name was index_merge_innodb2.test
							 | 
						||
| 
								 | 
							
								#               main code went into include/index_merge_2sweeps.inc
							 | 
						||
| 
								 | 
							
								#
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--echo #---------------- 2-sweeps read Index merge test 2 -------------------------------
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								eval SET SESSION STORAGE_ENGINE = $engine_type;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--disable_warnings
							 | 
						||
| 
								 | 
							
								drop table if exists t1;
							 | 
						||
| 
								 | 
							
								--enable_warnings
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								create table t1 (
							 | 
						||
| 
								 | 
							
								  pk int primary key,
							 | 
						||
| 
								 | 
							
								  key1 int,
							 | 
						||
| 
								 | 
							
								  key2 int,
							 | 
						||
| 
								 | 
							
								  filler char(200),
							 | 
						||
| 
								 | 
							
								  filler2 char(200),
							 | 
						||
| 
								 | 
							
								  index(key1),
							 | 
						||
| 
								 | 
							
								  index(key2)
							 | 
						||
| 
								 | 
							
								);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								--disable_query_log
							 | 
						||
| 
								 | 
							
								let $1=1000;
							 | 
						||
| 
								 | 
							
								while ($1)
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
								  eval insert into t1 values($1, $1, $1, 'filler-data','filler-data-2');
							 | 
						||
| 
								 | 
							
								  dec $1;
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								--enable_query_log
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								select * from t1 where (key1 >= 2 and key1 <= 10) or (pk >= 4 and pk <=8 );
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								set @maxv=1000;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								select * from t1 where
							 | 
						||
| 
								 | 
							
								  (pk < 5) or (pk > 10 and pk < 15) or (pk >= 50 and pk < 55 ) or (pk > @maxv-10)
							 | 
						||
| 
								 | 
							
								  or key1=18 or key1=60;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								select * from t1 where
							 | 
						||
| 
								 | 
							
								  (pk < 5) or (pk > 10 and pk < 15) or (pk >= 50 and pk < 55 ) or (pk > @maxv-10)
							 | 
						||
| 
								 | 
							
								  or key1 < 3 or key1 > @maxv-11;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								select * from t1 where
							 | 
						||
| 
								 | 
							
								  (pk < 5) or (pk > 10 and pk < 15) or (pk >= 50 and pk < 55 ) or (pk > @maxv-10)
							 | 
						||
| 
								 | 
							
								  or
							 | 
						||
| 
								 | 
							
								  (key1 < 5) or (key1 > 10 and key1 < 15) or (key1 >= 50 and key1 < 55 ) or (key1 > @maxv-10);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								select * from t1 where
							 | 
						||
| 
								 | 
							
								  (pk > 10 and pk < 15) or (pk >= 50 and pk < 55 )
							 | 
						||
| 
								 | 
							
								  or
							 | 
						||
| 
								 | 
							
								  (key1 < 5) or (key1 > @maxv-10);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								drop table t1;
							 |