List:Commits« Previous MessageNext Message »
From:Mikael Ronstrom Date:December 2 2009 7:14am
Subject:bzr commit into mysql-5.5-trunk-bugfixing branch (mikael:2910) Bug#49180
View as plain text  
#At file:///home/mikael/mysql_clones/mysql-trunk-bug49180/ based on revid:holyfoot@stripped

 2910 Mikael Ronstrom	2009-12-02
      BUG#49180, fixed MAXVALUE problem

    modified:
      mysql-test/r/partition_column.result
      mysql-test/t/partition_column.test
      sql/partition_info.cc
=== modified file 'mysql-test/r/partition_column.result'
--- a/mysql-test/r/partition_column.result	2009-11-10 08:34:26 +0000
+++ b/mysql-test/r/partition_column.result	2009-12-02 07:14:22 +0000
@@ -1,4 +1,14 @@
 drop table if exists t1;
+create table t1 (a int, b int)
+partition by range columns (a,b)
+( partition p0 values less than (maxvalue, 10),
+partition p1 values less than (maxvalue, maxvalue));
+ERROR HY000: VALUES LESS THAN value must be strictly increasing for each partition
+create table t1 (a int, b int, c int)
+partition by range columns (a,b,c)
+( partition p0 values less than (1, maxvalue, 10),
+partition p1 values less than (1, maxvalue, maxvalue));
+ERROR HY000: VALUES LESS THAN value must be strictly increasing for each partition
 create table t1 (a varchar(1) character set latin1 collate latin1_general_ci)
 partition by range columns(a)
 ( partition p0 values less than ('a'),
@@ -89,7 +99,7 @@ subpartition by hash (to_seconds(d))
 subpartitions 4
 ( partition p0 values less than (1, '0', MAXVALUE, '1900-01-01'),
 partition p1 values less than (1, 'a', MAXVALUE, '1999-01-01'),
-partition p2 values less than (1, 'a', MAXVALUE, MAXVALUE),
+partition p2 values less than (1, 'b', MAXVALUE, MAXVALUE),
 partition p3 values less than (1, MAXVALUE, MAXVALUE, MAXVALUE));
 select partition_method, partition_expression, partition_description
 from information_schema.partitions where table_name = "t1";
@@ -102,10 +112,10 @@ RANGE COLUMNS	a,b,c,d	1,'a',MAXVALUE,'19
 RANGE COLUMNS	a,b,c,d	1,'a',MAXVALUE,'1999-01-01'
 RANGE COLUMNS	a,b,c,d	1,'a',MAXVALUE,'1999-01-01'
 RANGE COLUMNS	a,b,c,d	1,'a',MAXVALUE,'1999-01-01'
-RANGE COLUMNS	a,b,c,d	1,'a',MAXVALUE,MAXVALUE
-RANGE COLUMNS	a,b,c,d	1,'a',MAXVALUE,MAXVALUE
-RANGE COLUMNS	a,b,c,d	1,'a',MAXVALUE,MAXVALUE
-RANGE COLUMNS	a,b,c,d	1,'a',MAXVALUE,MAXVALUE
+RANGE COLUMNS	a,b,c,d	1,'b',MAXVALUE,MAXVALUE
+RANGE COLUMNS	a,b,c,d	1,'b',MAXVALUE,MAXVALUE
+RANGE COLUMNS	a,b,c,d	1,'b',MAXVALUE,MAXVALUE
+RANGE COLUMNS	a,b,c,d	1,'b',MAXVALUE,MAXVALUE
 RANGE COLUMNS	a,b,c,d	1,MAXVALUE,MAXVALUE,MAXVALUE
 RANGE COLUMNS	a,b,c,d	1,MAXVALUE,MAXVALUE,MAXVALUE
 RANGE COLUMNS	a,b,c,d	1,MAXVALUE,MAXVALUE,MAXVALUE
@@ -123,7 +133,7 @@ SUBPARTITION BY HASH (to_seconds(d))
 SUBPARTITIONS 4
 (PARTITION p0 VALUES LESS THAN (1,'0',MAXVALUE,'1900-01-01') ENGINE = MyISAM,
  PARTITION p1 VALUES LESS THAN (1,'a',MAXVALUE,'1999-01-01') ENGINE = MyISAM,
- PARTITION p2 VALUES LESS THAN (1,'a',MAXVALUE,MAXVALUE) ENGINE = MyISAM,
+ PARTITION p2 VALUES LESS THAN (1,'b',MAXVALUE,MAXVALUE) ENGINE = MyISAM,
  PARTITION p3 VALUES LESS THAN (1,MAXVALUE,MAXVALUE,MAXVALUE) ENGINE = MyISAM) */
 drop table t1;
 create table t1 (a int, b int)

=== modified file 'mysql-test/t/partition_column.test'
--- a/mysql-test/t/partition_column.test	2009-11-06 10:49:27 +0000
+++ b/mysql-test/t/partition_column.test	2009-12-02 07:14:22 +0000
@@ -9,6 +9,21 @@ drop table if exists t1;
 --enable_warnings
 
 #
+# BUG#49180, Possible to define empty intervals for column list partitioning
+#
+--error ER_RANGE_NOT_INCREASING_ERROR
+create table t1 (a int, b int)
+partition by range columns (a,b)
+( partition p0 values less than (maxvalue, 10),
+  partition p1 values less than (maxvalue, maxvalue));
+
+--error ER_RANGE_NOT_INCREASING_ERROR
+create table t1 (a int, b int, c int)
+partition by range columns (a,b,c)
+( partition p0 values less than (1, maxvalue, 10),
+  partition p1 values less than (1, maxvalue, maxvalue));
+
+#
 # BUG#48161, Delivering too few records using collate syntax with partitions
 #
 # Test case from BUG#48447 with some extension
@@ -78,7 +93,7 @@ subpartition by hash (to_seconds(d))
 subpartitions 4
 ( partition p0 values less than (1, '0', MAXVALUE, '1900-01-01'),
   partition p1 values less than (1, 'a', MAXVALUE, '1999-01-01'),
-  partition p2 values less than (1, 'a', MAXVALUE, MAXVALUE),
+  partition p2 values less than (1, 'b', MAXVALUE, MAXVALUE),
   partition p3 values less than (1, MAXVALUE, MAXVALUE, MAXVALUE));
 select partition_method, partition_expression, partition_description
   from information_schema.partitions where table_name = "t1";

=== modified file 'sql/partition_info.cc'
--- a/sql/partition_info.cc	2009-11-10 09:32:29 +0000
+++ b/sql/partition_info.cc	2009-12-02 07:14:22 +0000
@@ -801,7 +801,7 @@ int partition_info::compare_column_value
     if (first->max_value || second->max_value)
     {
       if (first->max_value && second->max_value)
-        continue;
+        return 0;
       if (second->max_value)
         return -1;
       else


Attachment: [text/bzr-bundle] bzr/mikael@mysql.com-20091202071422-rhuis17u073xowse.bundle
Thread
bzr commit into mysql-5.5-trunk-bugfixing branch (mikael:2910) Bug#49180Mikael Ronstrom2 Dec
  • Re: bzr commit into mysql-5.5-trunk-bugfixing branch (mikael:2910)Bug#49180Mattias Jonsson2 Dec