BUG#12873 - BTREE index on MEMORY table with multiple NULL values
doesn't work properly Unique BTREE index on MEMORY table refuse multiple NULL values. Fixed search_flag to allow multiple null values inside unique key.
This commit is contained in:
parent
d24b4d6e99
commit
32a07617bc
@ -105,7 +105,7 @@ int hp_rb_write_key(HP_INFO *info, HP_KEYDEF *keyinfo, const byte *record,
|
||||
custom_arg.key_length= hp_rb_make_key(keyinfo, info->recbuf, record, recpos);
|
||||
if (keyinfo->flag & HA_NOSAME)
|
||||
{
|
||||
custom_arg.search_flag= SEARCH_FIND | SEARCH_SAME | SEARCH_UPDATE;
|
||||
custom_arg.search_flag= SEARCH_FIND | SEARCH_UPDATE;
|
||||
keyinfo->rb_tree.flag= TREE_NO_DUPS;
|
||||
}
|
||||
else
|
||||
|
@ -256,3 +256,6 @@ SELECT INDEX_LENGTH FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA=DATABASE()
|
||||
INDEX_LENGTH
|
||||
21
|
||||
DROP TABLE t1;
|
||||
CREATE TABLE t1 (a INT, UNIQUE USING BTREE(a)) ENGINE=MEMORY;
|
||||
INSERT INTO t1 VALUES(NULL),(NULL);
|
||||
DROP TABLE t1;
|
||||
|
@ -176,4 +176,12 @@ UPDATE t1 SET val=1;
|
||||
SELECT INDEX_LENGTH FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA=DATABASE() AND TABLE_NAME='t1';
|
||||
DROP TABLE t1;
|
||||
|
||||
#
|
||||
# BUG#12873 - BTREE index on MEMORY table with multiple NULL values doesn't
|
||||
# work properly
|
||||
#
|
||||
CREATE TABLE t1 (a INT, UNIQUE USING BTREE(a)) ENGINE=MEMORY;
|
||||
INSERT INTO t1 VALUES(NULL),(NULL);
|
||||
DROP TABLE t1;
|
||||
|
||||
# End of 4.1 tests
|
||||
|
Loading…
x
Reference in New Issue
Block a user