mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
MDEV-27683 EXCHANGE PARTITION allows different index direction, but causes further errors
This commit is contained in:
@ -1239,3 +1239,14 @@ DROP TABLE t1, t2;
|
||||
#
|
||||
# End of 10.3 tests
|
||||
#
|
||||
#
|
||||
# MDEV-27683 EXCHANGE PARTITION allows different index direction, but causes further errors
|
||||
#
|
||||
CREATE TABLE t1 (a INT, KEY(a DESC)) PARTITION BY KEY(a) PARTITIONS 4;
|
||||
CREATE TABLE t2 (a INT, KEY(a));
|
||||
ALTER TABLE t1 EXCHANGE PARTITION p0 WITH TABLE t2;
|
||||
ERROR HY000: Tables have different definitions
|
||||
DROP TABLE t1, t2;
|
||||
#
|
||||
# End of 10.8 tests
|
||||
#
|
||||
|
@ -535,3 +535,16 @@ DROP TABLE t1, t2;
|
||||
--echo #
|
||||
--echo # End of 10.3 tests
|
||||
--echo #
|
||||
|
||||
--echo #
|
||||
--echo # MDEV-27683 EXCHANGE PARTITION allows different index direction, but causes further errors
|
||||
--echo #
|
||||
CREATE TABLE t1 (a INT, KEY(a DESC)) PARTITION BY KEY(a) PARTITIONS 4;
|
||||
CREATE TABLE t2 (a INT, KEY(a));
|
||||
--error ER_TABLES_DIFFERENT_METADATA
|
||||
ALTER TABLE t1 EXCHANGE PARTITION p0 WITH TABLE t2;
|
||||
DROP TABLE t1, t2;
|
||||
|
||||
--echo #
|
||||
--echo # End of 10.8 tests
|
||||
--echo #
|
||||
|
@ -7147,7 +7147,8 @@ bool mysql_compare_tables(TABLE *table, Alter_info *alter_info,
|
||||
are equal. Comparing field numbers is sufficient.
|
||||
*/
|
||||
if ((table_part->length != new_part->length) ||
|
||||
(table_part->fieldnr - 1 != new_part->fieldnr))
|
||||
(table_part->fieldnr - 1 != new_part->fieldnr) ||
|
||||
((table_part->key_part_flag ^ new_part->key_part_flag) & HA_REVERSE_SORT))
|
||||
DBUG_RETURN(false);
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user