Skip to content
Permalink
Browse files
MDEV-13715 Server crashes in ha_partition::engine_name
This happened when trying to PARTITION a SEQUENCE table
Problem was that wrong function was used to get engine name

Signed-off-by: Monty <monty@mariadb.org>
  • Loading branch information
midenok authored and montywi committed Oct 22, 2017
1 parent edfdf0d commit f64cff9
Show file tree
Hide file tree
Showing 3 changed files with 19 additions and 1 deletion.
@@ -0,0 +1,7 @@
#
# MDEV-13715 ha_partition::engine_name() segfault fix
#
create sequence s;
alter table s partition by hash(start_value) partitions 2;
ERROR HY000: Table storage engine 'partition' does not support the create option 'SEQUENCE'
drop sequence s;
@@ -0,0 +1,11 @@
--source include/have_partition.inc
--source include/have_sequence.inc

--echo #
--echo # MDEV-13715 ha_partition::engine_name() segfault fix
--echo #

create sequence s;
--error ER_ILLEGAL_HA_CREATE_OPTION
alter table s partition by hash(start_value) partitions 2;
drop sequence s;
@@ -3311,7 +3311,7 @@ mysql_prepare_create_table(THD *thd, HA_CREATE_INFO *create_info,
{
if (!(file->ha_table_flags() & HA_CAN_TABLES_WITHOUT_ROLLBACK))
{
my_error(ER_ILLEGAL_HA_CREATE_OPTION, MYF(0), file->engine_name()->str,
my_error(ER_ILLEGAL_HA_CREATE_OPTION, MYF(0), file->table_type(),
"SEQUENCE");
DBUG_RETURN(TRUE);
}

0 comments on commit f64cff9

Please sign in to comment.