Commit 06092085 authored by unknown's avatar unknown

Merge mysql.com:/home/jimw/my/mysql-5.1-17497

into  mysql.com:/home/jimw/my/mysql-5.1-clean


sql/sql_table.cc:
  Auto merged
mysql-test/r/partition.result:
  SCCS merged
mysql-test/t/partition.test:
  SCCS merged
parents 360c7818 48469933
...@@ -451,4 +451,6 @@ select * from t2 where s1 = 2; ...@@ -451,4 +451,6 @@ select * from t2 where s1 = 2;
s1 s1
2 2
drop table t2; drop table t2;
create temporary table t1 (a int) partition by hash(a);
ERROR HY000: Cannot create temporary table with partitions
End of 5.1 tests End of 5.1 tests
...@@ -571,4 +571,10 @@ select * from t2 where s1 < 3; ...@@ -571,4 +571,10 @@ select * from t2 where s1 < 3;
select * from t2 where s1 = 2; select * from t2 where s1 = 2;
drop table t2; drop table t2;
#
# Bug #17497: Partitions: crash if add partition on temporary table
#
--error ER_PARTITION_NO_TEMPORARY
create temporary table t1 (a int) partition by hash(a);
--echo End of 5.1 tests --echo End of 5.1 tests
...@@ -5820,4 +5820,5 @@ ER_STORED_FUNCTION_PREVENTS_SWITCH_BINLOG_FORMAT ...@@ -5820,4 +5820,5 @@ ER_STORED_FUNCTION_PREVENTS_SWITCH_BINLOG_FORMAT
eng "Cannot change the binary logging format inside a stored function or trigger" eng "Cannot change the binary logging format inside a stored function or trigger"
ER_NDB_CANT_SWITCH_BINLOG_FORMAT ER_NDB_CANT_SWITCH_BINLOG_FORMAT
eng "The NDB cluster engine does not support changing the binlog format on the fly yet" eng "The NDB cluster engine does not support changing the binlog format on the fly yet"
ER_PARTITION_NO_TEMPORARY
eng "Cannot create temporary table with partitions"
...@@ -2073,6 +2073,11 @@ bool mysql_create_table_internal(THD *thd, ...@@ -2073,6 +2073,11 @@ bool mysql_create_table_internal(THD *thd,
char *part_syntax_buf; char *part_syntax_buf;
uint syntax_len; uint syntax_len;
handlerton *engine_type; handlerton *engine_type;
if (create_info->options & HA_LEX_CREATE_TMP_TABLE)
{
my_error(ER_PARTITION_NO_TEMPORARY, MYF(0));
goto err;
}
while ((key= key_iterator++)) while ((key= key_iterator++))
{ {
if (key->type == Key::FOREIGN_KEY) if (key->type == Key::FOREIGN_KEY)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment