Details
-
Bug
-
Status: Open (View Workflow)
-
Minor
-
Resolution: Unresolved
-
10.6, 10.11, 11.4, 11.8, 12.3, 13.0
-
None
Description
Aria allows to alter table to MAX_ROWS below already existing rows. In a dump the rows are converted into INSERT(s) and loading the dump fails as the INSERT(s) cannot be executed.
CREATE TABLE t1 (a INT PRIMARY KEY) ENGINE=Aria; |
INSERT INTO t1 VALUES (1),(2); |
ALTER TABLE t1 MIN_ROWS=1 MAX_ROWS=1; |
--echo #
|
--echo # Alter succeded, and 2 rows are still there
|
--echo #
|
SELECT * FROM t1; |
|
|
--exec $MYSQL_DUMP test --tables t1 > $MYSQL_TMP_DIR/t1.dump
|
|
|
DROP TABLE t1; |
--echo #
|
--echo # But restoring the dump fails
|
--echo #
|
--exec $MYSQL test < $MYSQL_TMP_DIR/t1.dump
|
|
|
DROP TABLE IF EXISTS t1; |
|
10.11 387e9af8462114215ee8499636e873522c3704c1 |
#
|
# Alter succeded, and 2 rows are still there |
#
|
SELECT * FROM t1; |
a
|
1
|
2
|
DROP TABLE t1; |
#
|
# But restoring the dump fails
|
#
|
bug.t [ fail ]
|
Test ended at 2026-08-12 11:47:07 |
|
|
CURRENT_TEST: bug.t
|
--------------
|
INSERT INTO `t1` VALUES |
(1),
|
(2)
|
--------------
|
|
|
ERROR 1114 (HY000) at line 38: The table 't1' is full |
MyISAM behaves more consistently in this regard, it rejects ALTER right away.