mirror of
https://github.com/MariaDB/server.git
synced 2025-01-29 02:05:57 +01:00
fix for bug 12207 (alter table discard tablespace on MyISAM table
causes ERROR 2013). (all-in-one approved patch) mysql-test/r/alter_table.result: result for test for bug #12207 (alter table discard database works on mysiam and causes error 2013) mysql-test/t/alter_table.test: test for bug #12207 (alter table discard tablescpae on MyISAM table causes ERROR 2013) sql/sql_table.cc: send all error message to table->file->print_error() thus not missing handing of some (like engine not supported). fix for bug #12207 (alter table discard tablespace on MyISAM table causes ERROR 2013)
This commit is contained in:
parent
901075ac22
commit
04af59a36c
3 changed files with 15 additions and 3 deletions
|
@ -523,6 +523,10 @@ alter table t1 drop key no_such_key;
|
|||
ERROR 42000: Can't DROP 'no_such_key'; check that column/key exists
|
||||
alter table t1 drop key a;
|
||||
drop table t1;
|
||||
CREATE TABLE T12207(a int) ENGINE=MYISAM;
|
||||
ALTER TABLE T12207 DISCARD TABLESPACE;
|
||||
ERROR HY000: Table storage engine for 'T12207' doesn't have this option
|
||||
DROP TABLE T12207;
|
||||
create table t1 (a text) character set koi8r;
|
||||
insert into t1 values (_koi8r'ÔÅÓÔ');
|
||||
select hex(a) from t1;
|
||||
|
|
|
@ -337,6 +337,14 @@ alter table t1 drop key no_such_key;
|
|||
alter table t1 drop key a;
|
||||
drop table t1;
|
||||
|
||||
#
|
||||
# BUG 12207 alter table ... discard table space on MyISAM table causes ERROR 2013 (HY000)
|
||||
#
|
||||
CREATE TABLE T12207(a int) ENGINE=MYISAM;
|
||||
--error 1031
|
||||
ALTER TABLE T12207 DISCARD TABLESPACE;
|
||||
DROP TABLE T12207;
|
||||
|
||||
#
|
||||
# Bug #6479 ALTER TABLE ... changing charset fails for TEXT columns
|
||||
#
|
||||
|
|
|
@ -2820,15 +2820,15 @@ mysql_discard_or_import_tablespace(THD *thd,
|
|||
err:
|
||||
close_thread_tables(thd);
|
||||
thd->tablespace_op=FALSE;
|
||||
|
||||
if (error == 0)
|
||||
{
|
||||
send_ok(thd);
|
||||
DBUG_RETURN(0);
|
||||
}
|
||||
|
||||
if (error == HA_ERR_ROW_IS_REFERENCED)
|
||||
my_error(ER_ROW_IS_REFERENCED, MYF(0));
|
||||
|
||||
table->file->print_error(error, MYF(0));
|
||||
|
||||
DBUG_RETURN(-1);
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue