List:Commits« Previous MessageNext Message »
From:mattiasj Date:December 3 2007 3:17pm
Subject:bk commit into 6.0 tree (mattiasj:1.2671) BUG#30480
View as plain text  
Below is the list of changes that have just been committed into a local
6.0 repository of mattiasj. When mattiasj does a push these changes will
be propagated to the main repository and, within 24 hours after the
push, to the public repository.
For information on how to access the public repository
see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html

ChangeSet@stripped, 2007-12-03 16:17:10+01:00, mattiasj@witty. +2 -0
  Bug#30480: Falcon: searches fail if LIKE and key partition
  (also fixes the bugs: 29320, 29493 and 30536)
  
  Problem: Partitioning did not handle unordered scans correctly
  for engines with unordered read order.
  
  Solution: do not stop scanning if a record is out of range, since
  there can be more records within the range afterwards.
  
  Note. this is the test case ONLY, the real patch is separate since it
  goes into 5.1 as well (for non mysql storage engines,
  since falcon is in 6.0)

  mysql-test/r/partition_falcon.result@stripped, 2007-12-03 16:17:08+01:00, mattiasj@witty. +18 -0
    Bug#30480: Falcon: searches fail if LIKE and key partition
    test result for falcon related partitioning

  mysql-test/r/partition_falcon.result@stripped, 2007-12-03 16:17:08+01:00, mattiasj@witty. +0 -0

  mysql-test/t/partition_falcon.test@stripped, 2007-12-03 16:17:08+01:00, mattiasj@witty. +25 -0
    Bug#30480: Falcon: searches fail if LIKE and key partition
    test case for falcon related partitioning

  mysql-test/t/partition_falcon.test@stripped, 2007-12-03 16:17:08+01:00, mattiasj@witty. +0 -0

diff -Nrup a/mysql-test/r/partition_falcon.result b/mysql-test/r/partition_falcon.result
--- /dev/null	Wed Dec 31 16:00:00 196900
+++ b/mysql-test/r/partition_falcon.result	2007-12-03 16:17:08 +01:00
@@ -0,0 +1,18 @@
+DROP TABLE IF EXISTS t1;
+SET storage_engine = Falcon;
+# Bug #30480
+CREATE TABLE t1 (c1 VARCHAR(3))
+ENGINE=Falcon
+PARTITION BY KEY(c1)
+PARTITIONS 1;
+CREATE INDEX i1 ON t1 (c1);
+INSERT INTO t1 VALUES ('B'), ('A');
+# No result if bug exists
+SELECT * FROM t1 WHERE c1 LIKE 'A%';
+c1
+A
+# But this was not found (if bug exists)
+SELECT * FROM t1 WHERE c1 = 'A';
+c1
+A
+DROP TABLE t1;
diff -Nrup a/mysql-test/t/partition_falcon.test b/mysql-test/t/partition_falcon.test
--- /dev/null	Wed Dec 31 16:00:00 196900
+++ b/mysql-test/t/partition_falcon.test	2007-12-03 16:17:08 +01:00
@@ -0,0 +1,25 @@
+--source include/have_falcon.inc
+--source include/have_partition.inc
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+--enable_warnings
+SET storage_engine = Falcon;
+
+#
+# Bug #30480: Falcon: searches fail if LIKE and key partition
+# (mattiasj 2007-11-23: verified all testcases on the following bugs:
+# 29320, 29493, 30536, 30480, this simple test substitutes them all)
+--echo # Bug #30480
+# simple test on Bug#30480
+CREATE TABLE t1 (c1 VARCHAR(3))
+ENGINE=Falcon
+PARTITION BY KEY(c1)
+PARTITIONS 1;
+# must have index to show the bug
+CREATE INDEX i1 ON t1 (c1);
+INSERT INTO t1 VALUES ('B'), ('A');
+-- echo # No result if bug exists
+SELECT * FROM t1 WHERE c1 LIKE 'A%';
+-- echo # But this was not found (if bug exists)
+SELECT * FROM t1 WHERE c1 = 'A';
+DROP TABLE t1;
Thread
bk commit into 6.0 tree (mattiasj:1.2671) BUG#30480mattiasj3 Dec