mirror of
https://github.com/MariaDB/server.git
synced 2025-07-27 18:02:13 +03:00
fix for bug 12207 (alter table discard tablespace on MyISAM table
causes ERROR 2013). (all-in-one approved patch)
This commit is contained in:
@ -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
|
ERROR 42000: Can't DROP 'no_such_key'; check that column/key exists
|
||||||
alter table t1 drop key a;
|
alter table t1 drop key a;
|
||||||
drop table t1;
|
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;
|
create table t1 (a text) character set koi8r;
|
||||||
insert into t1 values (_koi8r'<27><><EFBFBD><EFBFBD>');
|
insert into t1 values (_koi8r'<27><><EFBFBD><EFBFBD>');
|
||||||
select hex(a) from t1;
|
select hex(a) from t1;
|
||||||
|
@ -337,6 +337,14 @@ alter table t1 drop key no_such_key;
|
|||||||
alter table t1 drop key a;
|
alter table t1 drop key a;
|
||||||
drop table t1;
|
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
|
# Bug #6479 ALTER TABLE ... changing charset fails for TEXT columns
|
||||||
#
|
#
|
||||||
|
@ -2820,15 +2820,15 @@ mysql_discard_or_import_tablespace(THD *thd,
|
|||||||
err:
|
err:
|
||||||
close_thread_tables(thd);
|
close_thread_tables(thd);
|
||||||
thd->tablespace_op=FALSE;
|
thd->tablespace_op=FALSE;
|
||||||
|
|
||||||
if (error == 0)
|
if (error == 0)
|
||||||
{
|
{
|
||||||
send_ok(thd);
|
send_ok(thd);
|
||||||
DBUG_RETURN(0);
|
DBUG_RETURN(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (error == HA_ERR_ROW_IS_REFERENCED)
|
table->file->print_error(error, MYF(0));
|
||||||
my_error(ER_ROW_IS_REFERENCED, MYF(0));
|
|
||||||
|
|
||||||
DBUG_RETURN(-1);
|
DBUG_RETURN(-1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user