mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
OPTIMIZE, ANALYZE, CHECK, REPAIR and REBUILD only supported if fast_alter_partition flag set
This commit is contained in:

parent
05105a02cc
commit
ac10cffe80
@ -165,3 +165,17 @@ ENGINE=NDB
|
||||
PARTITION BY KEY(c3) PARTITIONS 5;
|
||||
ALTER TABLE t1 COALESCE PARTITION 4;
|
||||
DROP TABLE t1;
|
||||
CREATE TABLE t1 (a int primary key)
|
||||
ENGINE=NDB
|
||||
PARTITION BY KEY(a);
|
||||
ALTER TABLE t1 OPTIMIZE PARTITION p0;
|
||||
ERROR HY000: Table storage engine for 't1' doesn't have this option
|
||||
ALTER TABLE t1 CHECK PARTITION p0;
|
||||
ERROR HY000: Table storage engine for 't1' doesn't have this option
|
||||
ALTER TABLE t1 REPAIR PARTITION p0;
|
||||
ERROR HY000: Table storage engine for 't1' doesn't have this option
|
||||
ALTER TABLE t1 ANALYZE PARTITION p0;
|
||||
ERROR HY000: Table storage engine for 't1' doesn't have this option
|
||||
ALTER TABLE t1 REBUILD PARTITION p0;
|
||||
ERROR HY000: Table storage engine for 't1' doesn't have this option
|
||||
DROP TABLE t1;
|
||||
|
@ -153,3 +153,22 @@ b'0',
|
||||
ALTER TABLE t1 COALESCE PARTITION 4;
|
||||
|
||||
DROP TABLE t1;
|
||||
|
||||
#
|
||||
# Bug 16822: OPTIMIZE TABLE hangs test
|
||||
#
|
||||
CREATE TABLE t1 (a int primary key)
|
||||
ENGINE=NDB
|
||||
PARTITION BY KEY(a);
|
||||
--error 1031
|
||||
ALTER TABLE t1 OPTIMIZE PARTITION p0;
|
||||
--error 1031
|
||||
ALTER TABLE t1 CHECK PARTITION p0;
|
||||
--error 1031
|
||||
ALTER TABLE t1 REPAIR PARTITION p0;
|
||||
--error 1031
|
||||
ALTER TABLE t1 ANALYZE PARTITION p0;
|
||||
--error 1031
|
||||
ALTER TABLE t1 REBUILD PARTITION p0;
|
||||
DROP TABLE t1;
|
||||
|
||||
|
@ -1387,7 +1387,7 @@ public:
|
||||
ulonglong *deleted,
|
||||
const void *pack_frm_data,
|
||||
uint pack_frm_len)
|
||||
{ return HA_ERR_WRONG_COMMAND; }
|
||||
{ print_error(HA_ERR_WRONG_COMMAND, MYF(0)); return TRUE; }
|
||||
virtual int drop_partitions(const char *path)
|
||||
{ return HA_ERR_WRONG_COMMAND; }
|
||||
virtual int rename_partitions(const char *path)
|
||||
|
@ -4499,6 +4499,11 @@ that are reorganised.
|
||||
my_error(ER_DROP_PARTITION_NON_EXISTENT, MYF(0), ptr);
|
||||
DBUG_RETURN(TRUE);
|
||||
}
|
||||
if (!(*fast_alter_partition))
|
||||
{
|
||||
table->file->print_error(HA_ERR_WRONG_COMMAND, MYF(0));
|
||||
DBUG_RETURN(TRUE);
|
||||
}
|
||||
}
|
||||
else if (alter_info->flags & ALTER_COALESCE_PARTITION)
|
||||
{
|
||||
|
Reference in New Issue
Block a user