mirror of
https://github.com/MariaDB/server.git
synced 2025-01-18 13:02:28 +01:00
aaa9ed3eff
WL#3397 Refactoring storage engine test cases (for falcon) It contains also fixes according to code review. Contents: Testcases which were in history dedicated to InnoDB or MyISAM only. Modifications: 1. Shift the main testing code into include/<testing field>.inc Introduce $variables which can be used to omit tests for features which are not supported by certain storage engines. 2. The storage engine to be tested is assigned within the toplevel script (t/<whatever>_<engine>.test) via variable $engine_type and the the main testing code is sourced from include/<testing field>.inc 3. Some toplevel testscripts have to be renamed to - avoid immediate or future namespace clashes - show via filename which storage engine is tested 4. Minor code cleanup like remove trailing spaces, some additional comments ....
65 lines
1.5 KiB
PHP
65 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;
|