mirror of
https://github.com/MariaDB/server.git
synced 2025-01-17 04:22:27 +01:00
9608773f75
This essentially reverts commit 4e89ec6692
and only disables InnoDB persistent statistics for tests where it is
desirable. By design, InnoDB persistent statistics will not be updated
except by ANALYZE TABLE or by STATS_AUTO_RECALC.
The internal transactions that update persistent InnoDB statistics
in background tasks (with innodb_stats_auto_recalc=ON) may cause
nondeterministic query plans or interfere with some tests that deal
with other InnoDB internals, such as the purge of transaction history.
221 lines
6.6 KiB
Text
221 lines
6.6 KiB
Text
drop table if exists t1;
|
|
select 'a' = 'a', 'a' = 'a ', 'a ' = 'a';
|
|
'a' = 'a' 'a' = 'a ' 'a ' = 'a'
|
|
1 1 1
|
|
select 'a\0' = 'a', 'a\0' < 'a', 'a\0' > 'a';
|
|
'a\0' = 'a' 'a\0' < 'a' 'a\0' > 'a'
|
|
0 1 0
|
|
select 'a' = 'a\0', 'a' < 'a\0', 'a' > 'a\0';
|
|
'a' = 'a\0' 'a' < 'a\0' 'a' > 'a\0'
|
|
0 0 1
|
|
select 'a\0' = 'a ', 'a\0' < 'a ', 'a\0' > 'a ';
|
|
'a\0' = 'a ' 'a\0' < 'a ' 'a\0' > 'a '
|
|
0 1 0
|
|
select 'a ' = 'a\0', 'a ' < 'a\0', 'a ' > 'a\0';
|
|
'a ' = 'a\0' 'a ' < 'a\0' 'a ' > 'a\0'
|
|
0 0 1
|
|
select 'a a' > 'a', 'a \0' < 'a';
|
|
'a a' > 'a' 'a \0' < 'a'
|
|
1 1
|
|
select binary 'a a' > 'a', binary 'a \0' > 'a', binary 'a\0' > 'a';
|
|
binary 'a a' > 'a' binary 'a \0' > 'a' binary 'a\0' > 'a'
|
|
1 1 1
|
|
create table t1 (text1 varchar(32) not NULL, KEY key1 (text1));
|
|
insert into t1 values ('teststring'), ('nothing'), ('teststring\t');
|
|
check table t1;
|
|
Table Op Msg_type Msg_text
|
|
test.t1 check status OK
|
|
select * from t1 ignore key (key1) where text1='teststring' or
|
|
text1 like 'teststring_%' ORDER BY text1;
|
|
text1
|
|
teststring
|
|
teststring
|
|
select * from t1 where text1='teststring' or text1 like 'teststring_%';
|
|
text1
|
|
teststring
|
|
teststring
|
|
select * from t1 where text1='teststring' or text1 > 'teststring\t';
|
|
text1
|
|
teststring
|
|
select * from t1 order by text1;
|
|
text1
|
|
nothing
|
|
teststring
|
|
teststring
|
|
explain select * from t1 order by text1;
|
|
id select_type table type possible_keys key key_len ref rows Extra
|
|
1 SIMPLE t1 index NULL key1 34 NULL 3 Using index
|
|
alter table t1 modify text1 char(32) binary not null;
|
|
check table t1;
|
|
Table Op Msg_type Msg_text
|
|
test.t1 check status OK
|
|
select * from t1 ignore key (key1) where text1='teststring' or
|
|
text1 like 'teststring_%' ORDER BY text1;
|
|
text1
|
|
teststring
|
|
teststring
|
|
select concat('|', text1, '|') as c from t1 where text1='teststring' or text1 like 'teststring_%' order by c;
|
|
c
|
|
|teststring |
|
|
|teststring|
|
|
select concat('|', text1, '|') from t1 where text1='teststring' or text1 > 'teststring\t';
|
|
concat('|', text1, '|')
|
|
|teststring|
|
|
select text1, length(text1) from t1 order by text1;
|
|
text1 length(text1)
|
|
nothing 7
|
|
teststring 11
|
|
teststring 10
|
|
select text1, length(text1) from t1 order by binary text1;
|
|
text1 length(text1)
|
|
nothing 7
|
|
teststring 10
|
|
teststring 11
|
|
alter table t1 modify text1 blob not null, drop key key1, add key key1 (text1(20));
|
|
insert into t1 values ('teststring ');
|
|
select concat('|', text1, '|') from t1 order by text1;
|
|
concat('|', text1, '|')
|
|
|nothing|
|
|
|teststring|
|
|
|teststring |
|
|
|teststring |
|
|
select concat('|', text1, '|') from t1 where text1='teststring' or text1 > 'teststring\t';
|
|
concat('|', text1, '|')
|
|
|teststring|
|
|
|teststring |
|
|
select concat('|', text1, '|') from t1 where text1='teststring';
|
|
concat('|', text1, '|')
|
|
|teststring|
|
|
select concat('|', text1, '|') from t1 where text1='teststring ';
|
|
concat('|', text1, '|')
|
|
|teststring |
|
|
alter table t1 modify text1 text not null, pack_keys=1;
|
|
select concat('|', text1, '|') from t1 where text1='teststring';
|
|
concat('|', text1, '|')
|
|
|teststring|
|
|
|teststring |
|
|
select concat('|', text1, '|') from t1 where text1='teststring ';
|
|
concat('|', text1, '|')
|
|
|teststring|
|
|
|teststring |
|
|
explain select concat('|', text1, '|') from t1 where text1='teststring ';
|
|
id select_type table type possible_keys key key_len ref rows Extra
|
|
1 SIMPLE t1 ref key1 key1 22 const 2 Using where
|
|
select concat('|', text1, '|') from t1 where text1 like 'teststring_%';
|
|
concat('|', text1, '|')
|
|
|teststring |
|
|
|teststring |
|
|
select concat('|', text1, '|') as c from t1 where text1='teststring' or text1 like 'teststring_%' order by c;
|
|
c
|
|
|teststring |
|
|
|teststring |
|
|
|teststring|
|
|
select concat('|', text1, '|') from t1 where text1='teststring' or text1 > 'teststring\t';
|
|
concat('|', text1, '|')
|
|
|teststring|
|
|
|teststring |
|
|
select concat('|', text1, '|') from t1 order by text1;
|
|
concat('|', text1, '|')
|
|
|nothing|
|
|
|teststring |
|
|
|teststring|
|
|
|teststring |
|
|
drop table t1;
|
|
create table t1 (text1 varchar(32) not NULL, KEY key1 (text1)) pack_keys=0;
|
|
insert into t1 values ('teststring'), ('nothing'), ('teststring\t');
|
|
select concat('|', text1, '|') as c from t1 where text1='teststring' or text1 like 'teststring_%' order by c;
|
|
c
|
|
|teststring |
|
|
|teststring|
|
|
select concat('|', text1, '|') from t1 where text1='teststring' or text1 >= 'teststring\t';
|
|
concat('|', text1, '|')
|
|
|teststring |
|
|
|teststring|
|
|
drop table t1;
|
|
create table t1 (text1 varchar(32) not NULL, KEY key1 using BTREE (text1)) engine=heap;
|
|
insert into t1 values ('teststring'), ('nothing'), ('teststring\t');
|
|
select * from t1 ignore key (key1) where text1='teststring' or
|
|
text1 like 'teststring_%' ORDER BY text1;
|
|
text1
|
|
teststring
|
|
teststring
|
|
select * from t1 where text1='teststring' or text1 like 'teststring_%';
|
|
text1
|
|
teststring
|
|
teststring
|
|
select * from t1 where text1='teststring' or text1 >= 'teststring\t';
|
|
text1
|
|
teststring
|
|
teststring
|
|
select * from t1 order by text1;
|
|
text1
|
|
nothing
|
|
teststring
|
|
teststring
|
|
explain select * from t1 order by text1;
|
|
id select_type table type possible_keys key key_len ref rows Extra
|
|
1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using filesort
|
|
alter table t1 modify text1 char(32) binary not null;
|
|
select * from t1 order by text1;
|
|
text1
|
|
nothing
|
|
teststring
|
|
teststring
|
|
drop table t1;
|
|
create table t1 (text1 varchar(32) not NULL, KEY key1 (text1)) engine=innodb
|
|
stats_persistent=0;
|
|
insert into t1 values ('teststring'), ('nothing'), ('teststring\t');
|
|
check table t1;
|
|
Table Op Msg_type Msg_text
|
|
test.t1 check status OK
|
|
select * from t1 where text1='teststring' or text1 like 'teststring_%';
|
|
text1
|
|
teststring
|
|
teststring
|
|
select * from t1 where text1='teststring' or text1 > 'teststring\t';
|
|
text1
|
|
teststring
|
|
select * from t1 order by text1;
|
|
text1
|
|
nothing
|
|
teststring
|
|
teststring
|
|
explain select * from t1 order by text1;
|
|
id select_type table type possible_keys key key_len ref rows Extra
|
|
1 SIMPLE t1 index NULL key1 34 NULL 3 Using index
|
|
alter table t1 modify text1 char(32) binary not null;
|
|
select * from t1 order by text1;
|
|
text1
|
|
nothing
|
|
teststring
|
|
teststring
|
|
alter table t1 modify text1 blob not null, drop key key1, add key key1 (text1(20));
|
|
insert into t1 values ('teststring ');
|
|
select concat('|', text1, '|') from t1 order by text1;
|
|
concat('|', text1, '|')
|
|
|nothing|
|
|
|teststring|
|
|
|teststring |
|
|
|teststring |
|
|
alter table t1 modify text1 text not null, pack_keys=1;
|
|
select * from t1 where text1 like 'teststring_%';
|
|
text1
|
|
teststring
|
|
teststring
|
|
select text1, length(text1) from t1 where text1='teststring' or text1 like 'teststring_%';
|
|
text1 length(text1)
|
|
teststring 11
|
|
teststring 10
|
|
teststring 11
|
|
select text1, length(text1) from t1 where text1='teststring' or text1 >= 'teststring\t';
|
|
text1 length(text1)
|
|
teststring 11
|
|
teststring 10
|
|
teststring 11
|
|
select concat('|', text1, '|') from t1 order by text1;
|
|
concat('|', text1, '|')
|
|
|nothing|
|
|
|teststring |
|
|
|teststring|
|
|
|teststring |
|
|
drop table t1;
|