diff options
author | ramil/ram@mysql.com/ramil.myoffice.izhnet.ru <> | 2007-10-05 16:33:15 +0500 |
---|---|---|
committer | ramil/ram@mysql.com/ramil.myoffice.izhnet.ru <> | 2007-10-05 16:33:15 +0500 |
commit | b4b7cf2a95f96892d5ae14608ca52107528b2b7d (patch) | |
tree | d198975d5c9aa6d5f23d7d347392a59ffaffd7fe /mysql-test/r/heap_btree.result | |
parent | 1ba3f4f56b57bcf6266beae20da6a06eda436964 (diff) | |
download | mariadb-git-b4b7cf2a95f96892d5ae14608ca52107528b2b7d.tar.gz |
Fix for bug #30885: MEMORY returns incorrect data if BTREE index is used for NULL lookup
Problem: creating an rb-tree key we store length (2 bytes) before the actual data for
varchar key parts. The fact was missed for NULL key parts, when we set NULL byte and
skip the rest.
Fix: take into account the length of the varchar key parts for NULLs.
Diffstat (limited to 'mysql-test/r/heap_btree.result')
-rw-r--r-- | mysql-test/r/heap_btree.result | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/mysql-test/r/heap_btree.result b/mysql-test/r/heap_btree.result index 91f51a95936..21f5a549529 100644 --- a/mysql-test/r/heap_btree.result +++ b/mysql-test/r/heap_btree.result @@ -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 |