mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
the test moved from range.test to innodb.test - it should not be run when innodb is disabled
This commit is contained in:
@ -1630,3 +1630,37 @@ show status like "binlog_cache_disk_use";
|
|||||||
Variable_name Value
|
Variable_name Value
|
||||||
Binlog_cache_disk_use 1
|
Binlog_cache_disk_use 1
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
create table t1 (x bigint unsigned not null primary key) engine=innodb;
|
||||||
|
insert into t1(x) values (0xfffffffffffffff0),(0xfffffffffffffff1);
|
||||||
|
select * from t1;
|
||||||
|
x
|
||||||
|
18446744073709551600
|
||||||
|
18446744073709551601
|
||||||
|
select count(*) from t1 where x>0;
|
||||||
|
count(*)
|
||||||
|
2
|
||||||
|
select count(*) from t1 where x=0;
|
||||||
|
count(*)
|
||||||
|
0
|
||||||
|
select count(*) from t1 where x<0;
|
||||||
|
count(*)
|
||||||
|
0
|
||||||
|
select count(*) from t1 where x < -16;
|
||||||
|
count(*)
|
||||||
|
0
|
||||||
|
select count(*) from t1 where x = -16;
|
||||||
|
count(*)
|
||||||
|
0
|
||||||
|
explain select count(*) from t1 where x > -16;
|
||||||
|
id select_type table type possible_keys key key_len ref rows Extra
|
||||||
|
1 SIMPLE t1 range PRIMARY PRIMARY 8 NULL 1 Using where; Using index
|
||||||
|
select count(*) from t1 where x > -16;
|
||||||
|
count(*)
|
||||||
|
1
|
||||||
|
select * from t1 where x > -16;
|
||||||
|
x
|
||||||
|
18446744073709551601
|
||||||
|
select count(*) from t1 where x = 18446744073709551601;
|
||||||
|
count(*)
|
||||||
|
1
|
||||||
|
drop table t1;
|
||||||
|
@ -537,38 +537,3 @@ select count(*) from t2 where x = 18446744073709551601;
|
|||||||
count(*)
|
count(*)
|
||||||
0
|
0
|
||||||
drop table t1;
|
drop table t1;
|
||||||
create table t1 (x bigint unsigned not null primary key) engine=innodb;
|
|
||||||
insert into t1(x) values (0xfffffffffffffff0),(0xfffffffffffffff1);
|
|
||||||
select * from t1;
|
|
||||||
x
|
|
||||||
18446744073709551600
|
|
||||||
18446744073709551601
|
|
||||||
select count(*) from t1 where x>0;
|
|
||||||
count(*)
|
|
||||||
2
|
|
||||||
select count(*) from t1 where x=0;
|
|
||||||
count(*)
|
|
||||||
0
|
|
||||||
select count(*) from t1 where x<0;
|
|
||||||
count(*)
|
|
||||||
0
|
|
||||||
select count(*) from t1 where x < -16;
|
|
||||||
count(*)
|
|
||||||
0
|
|
||||||
select count(*) from t1 where x = -16;
|
|
||||||
count(*)
|
|
||||||
0
|
|
||||||
explain select count(*) from t1 where x > -16;
|
|
||||||
id select_type table type possible_keys key key_len ref rows Extra
|
|
||||||
1 SIMPLE t1 index PRIMARY PRIMARY 8 NULL 2 Using where; Using index
|
|
||||||
select count(*) from t1 where x > -16;
|
|
||||||
count(*)
|
|
||||||
2
|
|
||||||
select * from t1 where x > -16;
|
|
||||||
x
|
|
||||||
18446744073709551600
|
|
||||||
18446744073709551601
|
|
||||||
select count(*) from t1 where x = 18446744073709551601;
|
|
||||||
count(*)
|
|
||||||
1
|
|
||||||
drop table t1;
|
|
||||||
|
@ -1155,5 +1155,27 @@ delete from t1;
|
|||||||
commit;
|
commit;
|
||||||
show status like "binlog_cache_use";
|
show status like "binlog_cache_use";
|
||||||
show status like "binlog_cache_disk_use";
|
show status like "binlog_cache_disk_use";
|
||||||
|
drop table t1;
|
||||||
|
|
||||||
|
#
|
||||||
|
# range optimizer problem
|
||||||
|
#
|
||||||
|
|
||||||
|
create table t1 (x bigint unsigned not null primary key) engine=innodb;
|
||||||
|
insert into t1(x) values (0xfffffffffffffff0),(0xfffffffffffffff1);
|
||||||
|
select * from t1;
|
||||||
|
select count(*) from t1 where x>0;
|
||||||
|
select count(*) from t1 where x=0;
|
||||||
|
select count(*) from t1 where x<0;
|
||||||
|
select count(*) from t1 where x < -16;
|
||||||
|
select count(*) from t1 where x = -16;
|
||||||
|
explain select count(*) from t1 where x > -16;
|
||||||
|
|
||||||
|
# The following result should be (2). To be fixed when we add 'unsigned flag' to
|
||||||
|
# Field::store(longlong)
|
||||||
|
select count(*) from t1 where x > -16;
|
||||||
|
select * from t1 where x > -16;
|
||||||
|
select count(*) from t1 where x = 18446744073709551601;
|
||||||
|
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
|
||||||
|
@ -414,23 +414,4 @@ select count(*) from t2 where x > -16;
|
|||||||
select count(*) from t2 where x = 18446744073709551601;
|
select count(*) from t2 where x = 18446744073709551601;
|
||||||
|
|
||||||
drop table t1;
|
drop table t1;
|
||||||
--disable_warnings
|
|
||||||
create table t1 (x bigint unsigned not null primary key) engine=innodb;
|
|
||||||
--enable_warnings
|
|
||||||
insert into t1(x) values (0xfffffffffffffff0),(0xfffffffffffffff1);
|
|
||||||
select * from t1;
|
|
||||||
select count(*) from t1 where x>0;
|
|
||||||
select count(*) from t1 where x=0;
|
|
||||||
select count(*) from t1 where x<0;
|
|
||||||
select count(*) from t1 where x < -16;
|
|
||||||
select count(*) from t1 where x = -16;
|
|
||||||
explain select count(*) from t1 where x > -16;
|
|
||||||
|
|
||||||
# The following result should be (2). To be fixed when we add 'unsigned flag' to
|
|
||||||
# Field::store(longlong)
|
|
||||||
select count(*) from t1 where x > -16;
|
|
||||||
select * from t1 where x > -16;
|
|
||||||
select count(*) from t1 where x = 18446744073709551601;
|
|
||||||
|
|
||||||
drop table t1;
|
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user