mariadb/mysql-test/main/mysqldump-timing.test
Mike Griffin 53c4e4d054 MDEV-18702 mysqldump: add variable 'max-statement-time'
With a global non-default max-statement-time of a time interval that exceed
the query time mysqldump queries when doing a backup.

To solve both, add a max-statement-time option, defaulting to 0 (unlimited time).

Also like mariabackup, set the session wait_timeout=DEFAULT (28800). The
time/processing between mysqldump times isn't expected to get that
close ever, but let's adopt the standard of mariabackup as no-one has
challenged it has having a detrimental effect.

Reviewer and test case author Daniel Black
2022-08-02 20:31:08 +10:00

26 lines
754 B
Text

--echo #
--echo # MDEV-18702 mysqldump should use max_statement_time=0 and/or allow setting one
--echo #
CREATE DATABASE test1;
USE test1;
CREATE TABLE t1 (i INT);
INSERT INTO t1 VALUES (0);
LOCK TABLE t1 WRITE;
--echo timeout without t1 contents expected
--error 2
--exec $MYSQL_DUMP --max-statement-time=1 --skip-lock-tables --skip-comments test1 t1
SET @save_max_statement_time=@@max_statement_time;
SET GLOBAL max_statement_time=0.1;
--send UNLOCK TABLES;
--echo This would be a race condition otherwise, but default max_statement_time=0 makes it succeed
--exec $MYSQL_DUMP --skip-lock-tables --skip-comments test1 t1
--reap
SET GLOBAL max_statement_time=@save_max_statement_time;
DROP DATABASE test1;
--echo #
--echo # End of 10.3 test
--echo #