From 1d9a1c4667e6c1df267cba36e255e2cb20d8661b Mon Sep 17 00:00:00 2001 From: unknown Date: Thu, 9 Mar 2006 10:19:25 -0800 Subject: [PATCH] BUG#17947: Crash when REBUILD PARTITION syntax error mysql-test/r/partition.result: New test case mysql-test/t/partition.test: New test case sql/sql_yacc.yy: Ridiculuos small bug in parser --- mysql-test/r/partition.result | 6 ++++++ mysql-test/t/partition.test | 12 ++++++++++++ sql/sql_yacc.yy | 2 +- 3 files changed, 19 insertions(+), 1 deletion(-) diff --git a/mysql-test/r/partition.result b/mysql-test/r/partition.result index 59e29046d90..80942c861fe 100644 --- a/mysql-test/r/partition.result +++ b/mysql-test/r/partition.result @@ -422,4 +422,10 @@ partition_name partition_description table_rows x123 11,12 1 x234 NULL,1 1 drop table t1; +create table t1 (a int) +partition by list (a) +(partition p0 values in (1)); +alter table t1 rebuild partition; +ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1 +drop table t1; End of 5.1 tests diff --git a/mysql-test/t/partition.test b/mysql-test/t/partition.test index f22edb54756..8fc46490856 100644 --- a/mysql-test/t/partition.test +++ b/mysql-test/t/partition.test @@ -540,4 +540,16 @@ select partition_name, partition_description, table_rows from information_schema.partitions where table_schema ='test'; drop table t1; +# +# BUG 17947 Crash with REBUILD PARTITION +# +create table t1 (a int) +partition by list (a) +(partition p0 values in (1)); + +--error 1064 +alter table t1 rebuild partition; + +drop table t1; + --echo End of 5.1 tests diff --git a/sql/sql_yacc.yy b/sql/sql_yacc.yy index a64886d503d..17cb218e2be 100644 --- a/sql/sql_yacc.yy +++ b/sql/sql_yacc.yy @@ -5024,7 +5024,7 @@ alter_commands: ; all_or_alt_part_name_list: - | ALL + ALL { Lex->alter_info.flags|= ALTER_ALL_PARTITION; }