mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
A fix (bug #10176: problem with varchar keys).
myisam/mi_key.c: A fix (bug #10176: problem with varchar keys). Should skip key pack length for 'old' too.
This commit is contained in:
@ -226,3 +226,13 @@ create table t1 (v varchar(65530), key(v(10)));
|
||||
insert into t1 values(repeat('a',65530));
|
||||
select length(v) from t1 where v=repeat('a',65530);
|
||||
drop table t1;
|
||||
|
||||
#
|
||||
# Bug #9489: problem with hash indexes
|
||||
#
|
||||
|
||||
create table t1(a int, b varchar(12), key ba(b, a));
|
||||
insert into t1 values (1, 'A'), (20, NULL);
|
||||
explain select * from t1 where a=20 and b is null;
|
||||
select * from t1 where a=20 and b is null;
|
||||
drop table t1;
|
||||
|
@ -1858,6 +1858,15 @@ select length(v) from t1 where v=repeat('a',65530);
|
||||
length(v)
|
||||
65530
|
||||
drop table t1;
|
||||
create table t1(a int, b varchar(12), key ba(b, a));
|
||||
insert into t1 values (1, 'A'), (20, NULL);
|
||||
explain select * from t1 where a=20 and b is null;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ref ba ba 20 const,const 1 Using where
|
||||
select * from t1 where a=20 and b is null;
|
||||
a b
|
||||
20 NULL
|
||||
drop table t1;
|
||||
create table t1 (v varchar(65530), key(v));
|
||||
Warnings:
|
||||
Warning 1071 Specified key was too long; max key length is 255 bytes
|
||||
|
@ -2359,6 +2359,15 @@ select length(v) from t1 where v=repeat('a',65530);
|
||||
length(v)
|
||||
65530
|
||||
drop table t1;
|
||||
create table t1(a int, b varchar(12), key ba(b, a));
|
||||
insert into t1 values (1, 'A'), (20, NULL);
|
||||
explain select * from t1 where a=20 and b is null;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ref ba ba 20 const,const 1 Using where; Using index
|
||||
select * from t1 where a=20 and b is null;
|
||||
a b
|
||||
20 NULL
|
||||
drop table t1;
|
||||
create table t1 (v varchar(65530), key(v));
|
||||
ERROR HY000: Can't create table './test/t1' (errno: 139)
|
||||
create table t1 (v varchar(65536));
|
||||
|
@ -1157,6 +1157,15 @@ select length(v) from t1 where v=repeat('a',65530);
|
||||
length(v)
|
||||
65530
|
||||
drop table t1;
|
||||
create table t1(a int, b varchar(12), key ba(b, a));
|
||||
insert into t1 values (1, 'A'), (20, NULL);
|
||||
explain select * from t1 where a=20 and b is null;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ref ba ba 20 const,const 1 Using where; Using index
|
||||
select * from t1 where a=20 and b is null;
|
||||
a b
|
||||
20 NULL
|
||||
drop table t1;
|
||||
create table t1 (v varchar(65530), key(v));
|
||||
Warnings:
|
||||
Warning 1071 Specified key was too long; max key length is 1000 bytes
|
||||
|
Reference in New Issue
Block a user