Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-5.0-maint
into mysql.com:/home/ram/work/b30885/b30885.5.0
This commit is contained in:
commit
d2251a8fe3
@ -808,6 +808,12 @@ uint hp_rb_pack_key(HP_KEYDEF *keydef, uchar *key, const uchar *old,
|
||||
if (!(*key++= (char) 1 - *old++))
|
||||
{
|
||||
k_len-= seg->length;
|
||||
/*
|
||||
Take into account length (2 bytes) of varchar key parts
|
||||
stored before the data.
|
||||
*/
|
||||
if (seg->flag & (HA_VAR_LENGTH_PART | HA_BLOB_PART))
|
||||
k_len-= 2;
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
@ -321,4 +321,12 @@ DROP TABLE t1;
|
||||
CREATE TABLE t1 (a INT, UNIQUE USING BTREE(a)) ENGINE=MEMORY;
|
||||
INSERT INTO t1 VALUES(NULL),(NULL);
|
||||
DROP TABLE t1;
|
||||
create table t1(a varchar(255), b varchar(255),
|
||||
key using btree (a,b)) engine=memory;
|
||||
insert into t1 values (1, 1), (3, 3), (2, 2), (NULL, 1), (NULL, NULL), (0, 0);
|
||||
select * from t1 where a is null;
|
||||
a b
|
||||
NULL NULL
|
||||
NULL 1
|
||||
drop table t1;
|
||||
End of 5.0 tests
|
||||
|
@ -235,5 +235,14 @@ CREATE TABLE t1 (a INT, UNIQUE USING BTREE(a)) ENGINE=MEMORY;
|
||||
INSERT INTO t1 VALUES(NULL),(NULL);
|
||||
DROP TABLE t1;
|
||||
|
||||
#
|
||||
# Bug #30885: MEMORY returns incorrect data if BTREE index is used for NULL lookup
|
||||
#
|
||||
create table t1(a varchar(255), b varchar(255),
|
||||
key using btree (a,b)) engine=memory;
|
||||
insert into t1 values (1, 1), (3, 3), (2, 2), (NULL, 1), (NULL, NULL), (0, 0);
|
||||
select * from t1 where a is null;
|
||||
drop table t1;
|
||||
|
||||
--echo End of 5.0 tests
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user