1
0
mirror of https://github.com/MariaDB/server.git synced 2025-08-08 11:22:35 +03:00

Merge 10.11 into 11.0

This commit is contained in:
Marko Mäkelä
2023-02-16 13:34:45 +02:00
493 changed files with 7008 additions and 2592 deletions

View File

@@ -57,7 +57,7 @@ ALTER TABLE t ADD INDEX(b,c,d,a),ADD INDEX(b,c,a,d),ADD INDEX(b,a,c,d),ADD INDEX
connection default;
SET DEBUG_SYNC='now WAIT_FOR hung';
let $shutdown_timeout=0;
--let $restart_parameters= --innodb-force-recovery=3
--let $restart_parameters= --innodb-force-recovery=3 --debug_dbug="+d,recv_ran_out_of_buffer"
--source include/restart_mysqld.inc
disconnect hang;
let $shutdown_timeout=;

View File

@@ -38,7 +38,7 @@ let $wait_condition =
# depending on platform.
#
connection con1;
-- error 1317, 2006, 2013, ER_CONNECTION_KILLED
-- error 1317, 2006, 2013, ER_CONNECTION_KILLED, 2026
reap;
connection default;
DROP TABLE bug51920;

View File

@@ -27,3 +27,19 @@ FLUSH TABLE t1 FOR EXPORT;
UNLOCK TABLES;
-- source include/search_pattern_in_file.inc
DROP TABLE t1;
--echo #
--echo # MDEV-30527 Assertion !m_freed_pages in mtr_t::start()
--echo # on DROP TEMPORARY TABLE
--echo #
SET @scrub= @@GLOBAL.innodb_immediate_scrub_data_uncompressed;
SET GLOBAL innodb_immediate_scrub_data_uncompressed= 1;
SET @fpt=@@GLOBAL.innodb_file_per_table;
SET GLOBAL innodb_file_per_table=0;
CREATE TABLE t ENGINE=InnoDB AS SELECT 1;
DROP TABLE t;
SET GLOBAL innodb_file_per_table=@fpt;
CREATE TEMPORARY TABLE tmp ENGINE=InnoDB AS SELECT 1;
DROP TABLE tmp;
SET GLOBAL INNODB_IMMEDIATE_SCRUB_DATA_UNCOMPRESSED= @scrub;
--echo # End of 10.6 tests

View File

@@ -0,0 +1 @@
--innodb_sort_buffer_size=65536

View File

@@ -424,3 +424,22 @@ SELECT COUNT(*) AS nb_corrupted_rows FROM t1 WHERE data != REPEAT('X', @@innodb_
DROP TABLE t1;
--echo # End of 10.7 tests
--echo #
--echo # MDEV-30426 Assertion !rec_offs_nth_extern(offsets2, n)
--echo # during bulk insert
--echo #
CREATE TABLE t1(f1 TEXT NOT NULL, f2 TEXT NOT NULL,
f3 TEXT NOT NULL, f4 TEXT NOT NULL,
f5 TEXT NOT NULL, f6 TEXT NOT NULL,
PRIMARY KEY(f6(10)))ENGINE=InnoDB;
BEGIN;
--error ER_ERROR_DURING_COMMIT
INSERT INTO t1 VALUES
(repeat('a', 200), repeat('b', 200), repeat('c', 200),
repeat('d', 200), repeat('e', 200), repeat('f', 200)),
(repeat('b', 20000), repeat('c', 16000), repeat('d', 12000),
repeat('e', 12000), repeat('f', 12000), repeat('f', 12000));
COMMIT;
DROP TABLE t1;
--echo # End of 10.8 tests

View File

@@ -35,6 +35,7 @@ SET DEBUG_SYNC='now WAIT_FOR con1_dml';
begin;
SELECT * FROM t1 for update; # Holds x lock of all records in the table t1
SET DEBUG_SYNC='now SIGNAL default_dml';
SET DEBUG_SYNC='now SIGNAL con2_dml';
--connection default
SET DEBUG_SYNC='now WAIT_FOR default_dml';
@@ -44,7 +45,7 @@ explain UPDATE t3 AS alias1 LEFT JOIN t3 AS alias2 ON ( alias1.f1 <> alias1.f2 )
# It holds the lock of all record in t3 and tries to acquire record lock for the table t1.
--connect (con2,localhost,root,,test)
set debug_sync='now WAIT_FOR default_dml';
set debug_sync='now WAIT_FOR con2_dml';
let $wait_condition=
select count(*) > 0 from information_schema.innodb_lock_waits;
--source include/wait_condition.inc

View File

@@ -36,7 +36,7 @@ set global innodb_fast_shutdown=0;
# the error code
let $me=`select concat(' ', connection_id())`;
replace_result $me ID;
error ER_CONNECTION_KILLED;
error ER_CONNECTION_KILLED, 2026;
eval kill $me;
source include/start_mysqld.inc;

View File

@@ -1,5 +1,11 @@
--source include/have_innodb.inc
--source include/big_test.inc
--source include/have_sequence.inc
--source include/maybe_debug.inc
call mtr.add_suppression("InnoDB: The change buffer is corrupted");
call mtr.add_suppression("InnoDB: Plugin initialization aborted at srv0start.cc");
call mtr.add_suppression("Plugin 'InnoDB' init function returned error");
call mtr.add_suppression("Plugin 'InnoDB' registration as a STORAGE ENGINE failed.");
CREATE TABLE t1(c TEXT, KEY(c(3072)))ENGINE=InnoDB;
DELIMITER |;
@@ -19,3 +25,27 @@ let $shutdown_timeout=0;
let $restart_parameters=--innodb_buffer_pool_size=5242880;
--source include/restart_mysqld.inc
DROP TABLE t1;
DROP PROCEDURE dorepeat;
--echo #
--echo # MDEV-30552 InnoDB recovery crashes when error
--echo # handling scenario
--echo #
if ($have_debug) {
SET DEBUG_DBUG="+d,ib_log_checkpoint_avoid_hard";
let $restart_parameters=--innodb_buffer_pool_size=5242880 --debug_dbug="+d,ibuf_init_corrupt";
}
if (!$have_debug) {
--echo SET DEBUG_DBUG="+d,ib_log_checkpoint_avoid_hard";
let $restart_parameters=--innodb_buffer_pool_size=5242880;
}
CREATE TABLE t1(f1 INT NOT NULL)ENGINE=InnoDB;
INSERT INTO t1 SELECT * FROM seq_1_to_65536;
let $restart_noprint=1;
let $shutdown_timeout=0;
--source include/restart_mysqld.inc
let $restart_noprint=0;
let $restart_parameters=;
--source include/restart_mysqld.inc
SHOW CREATE TABLE t1;
DROP TABLE t1;

View File

@@ -143,7 +143,7 @@ let $counter= 5000;
let $mysql_errno= 9999;
while ($mysql_errno)
{
--error 0,ER_SERVER_SHUTDOWN,ER_CONNECTION_KILLED,2002,2006,2013
--error 0,ER_SERVER_SHUTDOWN,ER_CONNECTION_KILLED,2002,2006,2013,2026
select 1;
dec $counter;