mirror of
https://github.com/MariaDB/server.git
synced 2025-01-31 02:51:44 +01:00
311b7f94e6
This also fixes some issues with MDEV-23730 s3.replication_partition 'innodb,mix' segv The problem was that mysql_change_partitions() closes all handler files in case of error, which was not properly reflected in fast_alter_partition_table(). This caused handle_alter_part_error() to try to close already closed tables, which caused the crash. Fixed fast_alter_partion_table() to reflect when tables are opened. I also fixed that ha_partition::change_partitions() resets m_new_file in case of errors. Either of the above changes fixes the issue, but both are needed to ensure that the code works as expected.
20 lines
770 B
Text
20 lines
770 B
Text
--source include/have_sequence.inc
|
|
--source include/have_partition.inc
|
|
--source include/have_debug.inc
|
|
|
|
--echo #
|
|
--echo # MDEV-23248 Server crashes in mi_extra /
|
|
--echo # ha_partition::loop_extra_alter upon REORGANIZE
|
|
--echo #
|
|
|
|
CREATE TABLE t1 (a INT, b INT) ENGINE=MyISAM PARTITION BY RANGE (a) SUBPARTITION BY HASH (a) SUBPARTITIONS 70 (PARTITION p1 VALUES LESS THAN (100), PARTITION p2 VALUES LESS THAN MAXVALUE);
|
|
INSERT INTO t1 SELECT 4, 6 FROM seq_1_to_131072;
|
|
UPDATE t1 SET a = 7;
|
|
|
|
set @org_debug=@@debug_dbug;
|
|
set @@debug_dbug="+d,debug_abort_copy_partitions";
|
|
--error ER_UNSUPPORTED_EXTENSION
|
|
ALTER TABLE t1 REORGANIZE PARTITION p1,p2 INTO (PARTITION p1 VALUES LESS THAN (5), PARTITION p2 VALUES LESS THAN MAXVALUE);
|
|
set @@debug_dbug=@org_debug;
|
|
|
|
DROP TABLE t1;
|