mirror of
https://github.com/MariaDB/server.git
synced 2025-11-10 23:02:54 +03:00
- InnoDB fails to update the autoinc persistently after bulk insert operation. row_merge_bulk_t::write_to_index(): Update the autoinc value persistently
58 lines
1.8 KiB
Plaintext
58 lines
1.8 KiB
Plaintext
--source include/not_embedded.inc
|
|
--source include/have_innodb.inc
|
|
--source include/innodb_page_size.inc
|
|
--source include/maybe_debug.inc
|
|
|
|
--echo #
|
|
--echo # Start of 10.6 tests
|
|
--echo #
|
|
|
|
--echo #
|
|
--echo # MDEV-27214 Import with disabled keys corrupts meta-data like rows, indexes, ...
|
|
--echo #
|
|
|
|
CREATE DATABASE db1;
|
|
CREATE TABLE db1.t1 (id int, a int,PRIMARY KEY (id)) ENGINE=InnoDB
|
|
STATS_PERSISTENT=1 STATS_AUTO_RECALC=1;
|
|
INSERT INTO db1.t1 VALUES (1,2),(2,3),(3,4);
|
|
--let $file = $MYSQLTEST_VARDIR/tmp/dump.sql
|
|
--exec $MYSQL_DUMP db1 t1 >$file
|
|
DROP DATABASE IF EXISTS db1;
|
|
|
|
CREATE DATABASE db1;
|
|
--exec $MYSQL db1 < $file
|
|
--remove_file $file
|
|
--echo # Wait till statistics update after bulk insert operation
|
|
let $wait_condition= select n_rows > 0 from mysql.innodb_table_stats
|
|
where database_name='db1' and table_name='t1';
|
|
source include/wait_condition.inc;
|
|
SELECT TABLE_ROWS, AVG_ROW_LENGTH>0 FROM INFORMATION_SCHEMA.TABLES
|
|
WHERE TABLE_NAME='t1' AND TABLE_SCHEMA='db1';
|
|
|
|
OPTIMIZE TABLE db1.t1;
|
|
--echo # Wait till statistics update after bulk insert operation
|
|
let $wait_condition= select n_rows > 0 from mysql.innodb_table_stats
|
|
where database_name='db1' and table_name='t1';
|
|
source include/wait_condition.inc;
|
|
SELECT TABLE_ROWS, AVG_ROW_LENGTH>0 FROM INFORMATION_SCHEMA.TABLES
|
|
WHERE TABLE_NAME='t1' AND TABLE_SCHEMA='db1';
|
|
DROP DATABASE db1;
|
|
|
|
--echo #
|
|
--echo # End of 10.6 tests
|
|
--echo #
|
|
|
|
--echo #
|
|
--echo # MDEV-30796 Auto_increment values not updated after bulk
|
|
--echo # insert operation
|
|
--echo #
|
|
CREATE TABLE t1(f1 INT NOT NULL AUTO_INCREMENT,
|
|
f2 INT NOT NULL, PRIMARY KEY(f1))ENGINE=InnoDB;
|
|
INSERT INTO t1 VALUES(1, 2), (25, 3), (2, 4);
|
|
--source include/restart_mysqld.inc
|
|
INSERT INTO t1(f2) VALUES(5);
|
|
SELECT max(f1) FROM t1;
|
|
DROP TABLE t1;
|
|
|
|
--echo # End of 10.9 tests
|