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

Merge 10.4 into 10.5

This commit is contained in:
Marko Mäkelä
2020-01-28 14:17:09 +02:00
314 changed files with 3718 additions and 1185 deletions

View File

@@ -100,8 +100,11 @@ SET(ignored
"%ignore /etc"
"%ignore /etc/init.d"
"%ignore /etc/logrotate.d"
"%ignore /etc/security"
"%ignore /etc/systemd"
"%ignore /etc/systemd/system"
"%ignore /lib"
"%ignore /lib/security"
"%ignore ${CMAKE_INSTALL_PREFIX}"
"%ignore ${CMAKE_INSTALL_PREFIX}/bin"
"%ignore ${CMAKE_INSTALL_PREFIX}/include"

View File

@@ -139,11 +139,10 @@ SET(INSTALL_SYSCONF2DIR_RPM "/etc/my.cnf.d")
#
IF(CMAKE_SIZEOF_VOID_P EQUAL 8)
SET(INSTALL_LIBDIR_RPM "lib64")
SET(INSTALL_PLUGINDIR_RPM "lib64/mysql/plugin")
ELSE()
SET(INSTALL_LIBDIR_RPM "lib")
SET(INSTALL_PLUGINDIR_RPM "lib/mysql/plugin")
ENDIF()
SET(INSTALL_PLUGINDIR_RPM "${INSTALL_LIBDIR_RPM}/mysql/plugin")
#
SET(INSTALL_INCLUDEDIR_RPM "include/mysql")
#
@@ -164,6 +163,7 @@ SET(INSTALL_UNIX_ADDRDIR_RPM "${INSTALL_MYSQLDATADIR_RPM}/mysql.sock"
SET(INSTALL_SYSTEMD_UNITDIR_RPM "/usr/lib/systemd/system")
SET(INSTALL_SYSTEMD_SYSUSERSDIR_RPM "/usr/lib/sysusers.d")
SET(INSTALL_SYSTEMD_TMPFILESDIR_RPM "/usr/lib/tmpfiles.d")
SET(INSTALL_PAMDIR_RPM "/lib/security")
#
# DEB layout
@@ -196,6 +196,11 @@ SET(INSTALL_UNIX_ADDRDIR_DEB "/var/run/mysqld/mysqld.sock")
SET(INSTALL_SYSTEMD_UNITDIR_DEB "/lib/systemd/system")
SET(INSTALL_SYSTEMD_SYSUSERSDIR_DEB "/usr/lib/sysusers.d")
SET(INSTALL_SYSTEMD_TMPFILESDIR_DEB "/usr/lib/tmpfiles.d")
IF(CMAKE_SIZEOF_VOID_P EQUAL 8)
SET(INSTALL_PAMDIR_DEB "/lib/x86_64-linux-gnu/security")
ELSE()
SET(INSTALL_PAMDIR_DEB "/lib/i386-linux-gnu/security")
ENDIF()
#
# SVR4 layout
@@ -235,17 +240,18 @@ SET(OLD_INSTALL_LAYOUT ${INSTALL_LAYOUT} CACHE INTERNAL "")
# Set INSTALL_FOODIR variables for chosen layout (for example, INSTALL_BINDIR
# will be defined as ${INSTALL_BINDIR_STANDALONE} by default if STANDALONE
# layout is chosen)
FOREACH(var BIN SBIN LIB MYSQLSHARE SHARE PLUGIN INCLUDE SCRIPT DOC MAN SYSCONF SYSCONF2
INFO MYSQLTEST SQLBENCH DOCREADME SUPPORTFILES MYSQLDATA UNIX_ADDR
SYSTEMD_UNIT SYSTEMD_SYSUSERS SYSTEMD_TMPFILES)
SET(INSTALL_${var}DIR ${INSTALL_${var}DIR_${INSTALL_LAYOUT}}
CACHE STRING "${var} installation directory" ${FORCE})
MARK_AS_ADVANCED(INSTALL_${var}DIR)
GET_CMAKE_PROPERTY(ALL_VARS VARIABLES)
FOREACH (V ${ALL_VARS})
IF (V MATCHES "^(INSTALL_([A-Z_0-9]+)DIR)_${INSTALL_LAYOUT}$")
SET(var ${CMAKE_MATCH_1})
SET(${var} "${${V}}" CACHE STRING "${CMAKE_MATCH_2} installation directory" ${FORCE})
MARK_AS_ADVANCED(${var})
IF(IS_ABSOLUTE ${INSTALL_${var}DIR})
SET(INSTALL_${var}DIRABS ${INSTALL_${var}DIR})
IF(IS_ABSOLUTE "${${var}}")
SET(${var}ABS "${${var}}")
ELSE()
SET(INSTALL_${var}DIRABS "${CMAKE_INSTALL_PREFIX}/${INSTALL_${var}DIR}")
SET(${var}ABS "${CMAKE_INSTALL_PREFIX}/${${var}}")
ENDIF()
ENDIF()
ENDFOREACH()

View File

@@ -4,7 +4,9 @@ debian/additions/echo_stderr usr/share/mysql
debian/additions/mysql.init usr/share/mysql
debian/additions/mysqld_safe_syslog.cnf etc/mysql/conf.d
etc/apparmor.d/usr.sbin.mysqld
etc/security/user_map.conf
lib/systemd/system/mariadb@bootstrap.service.d/use_galera_new_cluster.conf
lib/*/security/pam_user_map.so
usr/bin/aria_chk
usr/bin/aria_dump_log
usr/bin/aria_ftdump

View File

@@ -97,7 +97,7 @@ ENDIF()
########################################################################
# xbstream binary
# mbstream binary
########################################################################
MYSQL_ADD_EXECUTABLE(mbstream
ds_buffer.cc

View File

@@ -586,8 +586,8 @@ static struct my_option ibx_long_options[] =
{"stream", OPT_STREAM, "This option specifies the format in which to "
"do the streamed backup. The option accepts a string argument. The "
"backup will be done to STDOUT in the specified format. Currently, "
"the only supported formats are tar and xbstream. This option is "
"passed directly to xtrabackup's --stream option.",
"the only supported formats are tar and mbstream/xbstream. This "
"option is passed directly to xtrabackup's --stream option.",
(uchar*) &ibx_xtrabackup_stream_str,
(uchar*) &ibx_xtrabackup_stream_str, 0, GET_STR,
REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
@@ -655,7 +655,7 @@ innobackupex [--compress] [--compress-threads=NUMBER-OF-THREADS] [--compress-chu
[--include=REGEXP] [--user=NAME]\n\
[--password=WORD] [--port=PORT] [--socket=SOCKET]\n\
[--no-timestamp] [--ibbackup=IBBACKUP-BINARY]\n\
[--slave-info] [--galera-info] [--stream=tar|xbstream]\n\
[--slave-info] [--galera-info] [--stream=tar|mbstream|xbstream]\n\
[--defaults-file=MY.CNF] [--defaults-group=GROUP-NAME]\n\
[--databases=LIST] [--no-lock] \n\
[--tmpdir=DIRECTORY] [--tables-file=FILE]\n\
@@ -750,7 +750,8 @@ ibx_get_one_option(const struct my_option *opt,
}
break;
case OPT_STREAM:
if (!strcasecmp(argument, "xbstream"))
if (!strcasecmp(argument, "mbstream") ||
!strcasecmp(argument, "xbstream"))
xtrabackup_stream_fmt = XB_STREAM_FMT_XBSTREAM;
else {
ibx_msg("Invalid --stream argument: %s\n", argument);

View File

@@ -906,7 +906,7 @@ struct my_option xb_client_options[] =
{"stream", OPT_XTRA_STREAM, "Stream all backup files to the standard output "
"in the specified format."
"Supported format is 'xbstream'."
"Supported format is 'mbstream' or 'xbstream'."
,
(G_PTR*) &xtrabackup_stream_str, (G_PTR*) &xtrabackup_stream_str, 0, GET_STR,
REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
@@ -1707,7 +1707,8 @@ xb_get_one_option(const struct my_option *opt,
xtrabackup_target_dir= xtrabackup_real_target_dir;
break;
case OPT_XTRA_STREAM:
if (!strcasecmp(argument, "xbstream"))
if (!strcasecmp(argument, "mbstream") ||
!strcasecmp(argument, "xbstream"))
xtrabackup_stream_fmt = XB_STREAM_FMT_XBSTREAM;
else
{

View File

@@ -39,7 +39,7 @@ ADD_DEFINITIONS(-DWOLFSSL_LIB -DBUILDING_WOLFSSL)
INCLUDE_DIRECTORIES(BEFORE ${CMAKE_CURRENT_SOURCE_DIR}/wolfssl)
IF(MSVC)
# size_t to long truncation warning
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -wd4267 -wd4334")
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -wd4267 -wd4334 -wd4028")
ENDIF()
ADD_CONVENIENCE_LIBRARY(wolfssl ${WOLFSSL_SOURCES})

View File

@@ -1,13 +1,20 @@
/* Copyright (c) 2008, 2012, Oracle and/or its affiliates. All rights reserved.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; version 2 of the License.
it under the terms of the GNU General Public License, version 2.0,
as published by the Free Software Foundation.
This program is also distributed with certain software (including
but not limited to OpenSSL) that is licensed under separate terms,
as designated in a particular file or component or in included license
documentation. The authors of MySQL hereby grant you an additional
permission to link the program and your derivative works with the
separately licensed software that they have included with MySQL.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
GNU General Public License, version 2.0, for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software Foundation,

View File

@@ -2,13 +2,20 @@
Copyright (c) 2017, MariaDB Corporation.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; version 2 of the License.
it under the terms of the GNU General Public License, version 2.0,
as published by the Free Software Foundation.
This program is also distributed with certain software (including
but not limited to OpenSSL) that is licensed under separate terms,
as designated in a particular file or component or in included license
documentation. The authors of MySQL hereby grant you an additional
permission to link the program and your derivative works with the
separately licensed software that they have included with MySQL.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
GNU General Public License, version 2.0, for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software Foundation,

View File

@@ -1,15 +1,21 @@
/* Copyright (c) 2010, 2012, Oracle and/or its affiliates. All rights reserved.
Copyright (c) 2017, MariaDB Corporation.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
published by the Free Software Foundation; version 2 of the
License.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License, version 2.0,
as published by the Free Software Foundation.
This program is also distributed with certain software (including
but not limited to OpenSSL) that is licensed under separate terms,
as designated in a particular file or component or in included license
documentation. The authors of MySQL hereby grant you an additional
permission to link the program and your derivative works with the
separately licensed software that they have included with MySQL.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
GNU General Public License, version 2.0, for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software

View File

@@ -1,13 +1,20 @@
/* Copyright (c) 2010, 2012, Oracle and/or its affiliates. All rights reserved.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; version 2 of the License.
it under the terms of the GNU General Public License, version 2.0,
as published by the Free Software Foundation.
This program is also distributed with certain software (including
but not limited to OpenSSL) that is licensed under separate terms,
as designated in a particular file or component or in included license
documentation. The authors of MySQL hereby grant you an additional
permission to link the program and your derivative works with the
separately licensed software that they have included with MySQL.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
GNU General Public License, version 2.0, for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software

View File

@@ -2,13 +2,20 @@
Copyright (c) 2017, MariaDB Corporation.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; version 2 of the License.
it under the terms of the GNU General Public License, version 2.0,
as published by the Free Software Foundation.
This program is also distributed with certain software (including
but not limited to OpenSSL) that is licensed under separate terms,
as designated in a particular file or component or in included license
documentation. The authors of MySQL hereby grant you an additional
permission to link the program and your derivative works with the
separately licensed software that they have included with MySQL.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
GNU General Public License, version 2.0, for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software

View File

@@ -2,13 +2,20 @@
Copyright (c) 2017, MariaDB Corporation.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; version 2 of the License.
it under the terms of the GNU General Public License, version 2.0,
as published by the Free Software Foundation.
This program is also distributed with certain software (including
but not limited to OpenSSL) that is licensed under separate terms,
as designated in a particular file or component or in included license
documentation. The authors of MySQL hereby grant you an additional
permission to link the program and your derivative works with the
separately licensed software that they have included with MySQL.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
GNU General Public License, version 2.0, for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software Foundation,

View File

@@ -1,13 +1,20 @@
/* Copyright (c) 2008, 2013, Oracle and/or its affiliates.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; version 2 of the License.
it under the terms of the GNU General Public License, version 2.0,
as published by the Free Software Foundation.
This program is also distributed with certain software (including
but not limited to OpenSSL) that is licensed under separate terms,
as designated in a particular file or component or in included license
documentation. The authors of MySQL hereby grant you an additional
permission to link the program and your derivative works with the
separately licensed software that they have included with MySQL.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
GNU General Public License, version 2.0, for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software Foundation,

View File

@@ -1,13 +1,20 @@
/* Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; version 2 of the License.
it under the terms of the GNU General Public License, version 2.0,
as published by the Free Software Foundation.
This program is also distributed with certain software (including
but not limited to OpenSSL) that is licensed under separate terms,
as designated in a particular file or component or in included license
documentation. The authors of MySQL hereby grant you an additional
permission to link the program and your derivative works with the
separately licensed software that they have included with MySQL.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
GNU General Public License, version 2.0, for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software Foundation,

View File

@@ -1,13 +1,20 @@
/* Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; version 2 of the License.
it under the terms of the GNU General Public License, version 2.0,
as published by the Free Software Foundation.
This program is also distributed with certain software (including
but not limited to OpenSSL) that is licensed under separate terms,
as designated in a particular file or component or in included license
documentation. The authors of MySQL hereby grant you an additional
permission to link the program and your derivative works with the
separately licensed software that they have included with MySQL.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
GNU General Public License, version 2.0, for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software Foundation,

View File

@@ -1,13 +1,20 @@
/* Copyright (c) 2008, 2011, Oracle and/or its affiliates. All rights reserved.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; version 2 of the License.
it under the terms of the GNU General Public License, version 2.0,
as published by the Free Software Foundation.
This program is also distributed with certain software (including
but not limited to OpenSSL) that is licensed under separate terms,
as designated in a particular file or component or in included license
documentation. The authors of MySQL hereby grant you an additional
permission to link the program and your derivative works with the
separately licensed software that they have included with MySQL.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
GNU General Public License, version 2.0, for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software Foundation,

View File

@@ -1,13 +1,20 @@
/* Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; version 2 of the License.
it under the terms of the GNU General Public License, version 2.0,
as published by the Free Software Foundation.
This program is also distributed with certain software (including
but not limited to OpenSSL) that is licensed under separate terms,
as designated in a particular file or component or in included license
documentation. The authors of MySQL hereby grant you an additional
permission to link the program and your derivative works with the
separately licensed software that they have included with MySQL.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
GNU General Public License, version 2.0, for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software Foundation,

View File

@@ -79,7 +79,9 @@
#define EVP_CIPHER_CTX_encrypting(ctx) ((ctx)->encrypt)
#define EVP_CIPHER_CTX_SIZE sizeof(EVP_CIPHER_CTX)
#ifndef HAVE_WOLFSSL
#define EVP_MD_CTX_reset(X) EVP_MD_CTX_cleanup(X)
#endif
#define EVP_CIPHER_CTX_reset(X) EVP_CIPHER_CTX_cleanup(X)
#define X509_get0_notBefore(X) X509_get_notBefore(X)
#define X509_get0_notAfter(X) X509_get_notAfter(X)

View File

@@ -146,7 +146,9 @@ int vio_getnameinfo(const struct sockaddr *sa,
/* Set yaSSL to use same type as MySQL do for socket handles */
typedef my_socket YASSL_SOCKET_T;
#define YASSL_SOCKET_T_DEFINED
#define Timeval WOLFSSL_Timeval
#include <openssl/ssl.h>
#undef Timeval
#include <openssl/err.h>
enum enum_ssl_init_error

View File

@@ -8,3 +8,13 @@ create user 'bad' identified by 'worse';
ERROR 1045 (28000): Plugin foo/bar could not be loaded: invalid plugin name
set global debug_dbug=@old_dbug;
drop user bad;
set global debug_dbug='+d,increase_srv_handshake_scramble_len';
connect(localhost,root,,test,MASTER_MYPORT,MYSQL_TMP_DIR/mysqld.1.sock);
connect con1,localhost,root;
ERROR HY000: received malformed packet
set global debug_dbug=@old_dbug;
set global debug_dbug='+d,poison_srv_handshake_scramble_len';
connect(localhost,root,,test,MASTER_MYPORT,MYSQL_TMP_DIR/mysqld.1.sock);
connect con2,localhost,root;
ERROR HY000: received malformed packet
set global debug_dbug=@old_dbug;

View File

@@ -22,3 +22,18 @@ create user 'bad' identified by 'worse';
--exec $MYSQL --default-auth=mysql_old_password --user=bad --password=worse 2>&1
set global debug_dbug=@old_dbug;
drop user bad;
#
# Bug#29630767 - USE OF UNINITIALIZED VALUE IN LIBMYSQL (CLIENT.CC FUNCTION RUN_PLUGIN_AUTH)
#
set global debug_dbug='+d,increase_srv_handshake_scramble_len';
--replace_result $MYSQL_TMP_DIR MYSQL_TMP_DIR $MASTER_MYPORT MASTER_MYPORT
--error 2027
connect con1,localhost,root;
set global debug_dbug=@old_dbug;
set global debug_dbug='+d,poison_srv_handshake_scramble_len';
--replace_result $MYSQL_TMP_DIR MYSQL_TMP_DIR $MASTER_MYPORT MASTER_MYPORT
--error 2027
connect con2,localhost,root;
set global debug_dbug=@old_dbug;

View File

@@ -92,3 +92,31 @@ a
STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
REAL_AS_FLOAT,PIPES_AS_CONCAT,ANSI_QUOTES,IGNORE_SPACE,ANSI
drop table t1;
set time_zone='+00:00';
create table t1 (a int, b datetime default from_unixtime(a), c datetime);
insert t1 (a, c) values (1569495327, from_unixtime(1569495327));
set time_zone='+01:00';
insert t1 (a, c) values (1569495327, from_unixtime(1569495327));
flush tables;
insert t1 (a, c) values (1569495327, from_unixtime(1569495327));
select * from t1;
a b c
1569495327 2019-09-26 10:55:27 2019-09-26 10:55:27
1569495327 2019-09-26 11:55:27 2019-09-26 11:55:27
1569495327 2019-09-26 11:55:27 2019-09-26 11:55:27
drop table t1;
set time_zone = "+00:00";
create table t1 (a int, b timestamp as (from_unixtime(a)) virtual);
insert into t1 (a) value (1569495327);
select a, b, from_unixtime(a) from t1;
a b from_unixtime(a)
1569495327 2019-09-26 10:55:27 2019-09-26 10:55:27
set time_zone = "+01:00";
select a, b, from_unixtime(a) from t1;
a b from_unixtime(a)
1569495327 2019-09-26 11:55:27 2019-09-26 11:55:27
flush tables;
select a, b, from_unixtime(a) from t1;
a b from_unixtime(a)
1569495327 2019-09-26 11:55:27 2019-09-26 11:55:27
drop table t1;

View File

@@ -80,3 +80,27 @@ insert t1 () values ();
set sql_mode=default;
select * from t1;
drop table t1;
#
# MDEV-21249 MariaDB 10.3.10 When referring to bigint to generate timestamp data in the virtual generated column, the value of the generated column does not change when the time zone changes
#
set time_zone='+00:00';
create table t1 (a int, b datetime default from_unixtime(a), c datetime);
insert t1 (a, c) values (1569495327, from_unixtime(1569495327));
set time_zone='+01:00';
insert t1 (a, c) values (1569495327, from_unixtime(1569495327));
flush tables;
insert t1 (a, c) values (1569495327, from_unixtime(1569495327));
select * from t1;
drop table t1;
# same with vcols
set time_zone = "+00:00";
create table t1 (a int, b timestamp as (from_unixtime(a)) virtual);
insert into t1 (a) value (1569495327);
select a, b, from_unixtime(a) from t1;
set time_zone = "+01:00";
select a, b, from_unixtime(a) from t1;
flush tables;
select a, b, from_unixtime(a) from t1;
drop table t1;

View File

@@ -0,0 +1 @@
--innodb_autoinc_lock_mode=2

View File

@@ -0,0 +1,29 @@
SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
connect con1, localhost, root,,;
SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
connection default;
CREATE TABLE t1(c1 VARCHAR(10) NOT NULL, c2 VARCHAR(10) NOT NULL, c3 VARCHAR(10) NOT NULL);
INSERT INTO t1(c1, c2, c3) VALUES('A1','B1','IT1'), ('A2','B2','IT1'), ('A3','B3','IT1'), ('A4','B4','IT1'), ('A5','B5','IT1'), ('A6','B6','IT1'), ('A7','B7','IT1');
CREATE TABLE t2(c1 VARCHAR(10) NOT NULL, c2 VARCHAR(10) NOT NULL, c3 VARCHAR(10) NOT NULL);
INSERT INTO t2(c1, c2, c3) VALUES ('A3','B3','IT2'), ('A2','B2','IT2'), ('A4','B4','IT2'), ('A5','B5','II2');
CREATE TABLE result(id BIGINT UNSIGNED NOT NULL AUTO_INCREMENT, c1 VARCHAR(10) NOT NULL, c2 VARCHAR(10),
c3 VARCHAR(10), update_count INT DEFAULT 0, UNIQUE KEY uniq_idx (c1,c2), PRIMARY KEY (id)) ENGINE = innodb;
SET DEBUG_SYNC = "ha_write_row_end WAIT_FOR flushed EXECUTE 1";
INSERT INTO result(c1, c2, c3) SELECT * FROM t1 ON DUPLICATE KEY UPDATE c2=t1.c2, c3='UT1', update_count=update_count+1;
connection con1;
INSERT INTO result(c1, c2, c3) SELECT * FROM t2 ON DUPLICATE KEY UPDATE c2=t2.c2, c3='UT2', update_count=update_count+1;
SET DEBUG_SYNC = "now SIGNAL flushed";
connection default;
SELECT * FROM result;
id c1 c2 c3 update_count
1 A1 B1 IT1 0
2 A3 B3 UT1 1
3 A2 B2 UT1 1
4 A4 B4 UT1 1
5 A5 B5 UT1 1
9 A6 B6 IT1 0
10 A7 B7 IT1 0
DROP TABLE t1;
DROP TABLE t2;
DROP TABLE result;
SET DEBUG_SYNC = "RESET";

View File

@@ -0,0 +1,54 @@
source include/have_innodb.inc;
source include/have_debug.inc;
source include/have_debug_sync.inc;
SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
connect (con1, localhost, root,,);
SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
connection default;
let $conn0_id= `SELECT CONNECTION_ID()`;
CREATE TABLE t1(c1 VARCHAR(10) NOT NULL, c2 VARCHAR(10) NOT NULL, c3 VARCHAR(10) NOT NULL);
INSERT INTO t1(c1, c2, c3) VALUES('A1','B1','IT1'), ('A2','B2','IT1'), ('A3','B3','IT1'), ('A4','B4','IT1'), ('A5','B5','IT1'), ('A6','B6','IT1'), ('A7','B7','IT1');
CREATE TABLE t2(c1 VARCHAR(10) NOT NULL, c2 VARCHAR(10) NOT NULL, c3 VARCHAR(10) NOT NULL);
INSERT INTO t2(c1, c2, c3) VALUES ('A3','B3','IT2'), ('A2','B2','IT2'), ('A4','B4','IT2'), ('A5','B5','II2');
CREATE TABLE result(id BIGINT UNSIGNED NOT NULL AUTO_INCREMENT, c1 VARCHAR(10) NOT NULL, c2 VARCHAR(10),
c3 VARCHAR(10), update_count INT DEFAULT 0, UNIQUE KEY uniq_idx (c1,c2), PRIMARY KEY (id)) ENGINE = innodb;
# Insert one row from 't1' into the 'result' table and wait on a debug sync
# point. The next insert statement from an session 2 inserts values that would
# lead to unique key clash, when this insert resumes.
# The subsequent inserts of this statement(after resume) will fail because of a
# clash with the unique index, and are expected to update the row which clashes
# with the unique key.
# Without the fix for bug#30194841 a stale auto increment value, would cause a
# collision with existing auto increment column value and ends up updating that
# colliding row, instead of the row colliding with the unique index.
SET DEBUG_SYNC = "ha_write_row_end WAIT_FOR flushed EXECUTE 1";
send INSERT INTO result(c1, c2, c3) SELECT * FROM t1 ON DUPLICATE KEY UPDATE c2=t1.c2, c3='UT1', update_count=update_count+1;
# While session 1 is waiting (after one insert), insert rows that will cause a clash
# with the inserts of session 1 on the unique key.
connection con1;
# Wait for the session 1 to hit the debug sync point.
let $wait_condition=SELECT 1 FROM information_schema.processlist WHERE id = $conn0_id AND state LIKE '%ha_write_row_end%';
--source include/wait_condition.inc
INSERT INTO result(c1, c2, c3) SELECT * FROM t2 ON DUPLICATE KEY UPDATE c2=t2.c2, c3='UT2', update_count=update_count+1;
# Signal to resume the insert statement in session 1
SET DEBUG_SYNC = "now SIGNAL flushed";
connection default;
reap;
SELECT * FROM result;
DROP TABLE t1;
DROP TABLE t2;
DROP TABLE result;
SET DEBUG_SYNC = "RESET";

View File

@@ -3346,3 +3346,60 @@ id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t0 ALL NULL NULL NULL NULL 10 Using where
1 SIMPLE t1 ref a a 5 test.t0.a 1
drop table t0,t1;
#
# MDEV-21383: Possible range plan is not used under certain conditions
#
drop table if exists t10, t1000, t03;
create table t10(a int);
insert into t10 values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9);
create table t1000(a int);
insert into t1000 select A.a + B.a* 10 + C.a * 100 from t10 A, t10 B, t10 C;
create table t03(a int);
insert into t03 values (0),(1),(2);
create table t1 (
stationid int
);
insert into t1 select a from t10;
CREATE TABLE t2 (
stationId int,
startTime int,
filler char(100),
key1 int,
key2 int,
key(key1),
key(key2),
PRIMARY KEY (`stationId`,`startTime`)
);
insert into t2 select
A.a,
B.a,
repeat('filler=data-', 4),
B.a,
1
from
t03 A,
t1000 B;
analyze table t2;
Table Op Msg_type Msg_text
test.t2 analyze status Engine-independent statistics collected
test.t2 analyze status OK
create table t3(a int, filler char(100), key(a));
insert into t3 select A.a+1000*B.a, 'filler-data' from t1000 A, t10 B;
# This should produce a join order of t1,t2,t3
# t2 should have type=range, key=PRIMARY key_len=8 (not type=ALL or key_len<8)
explain
SELECT *
FROM
t1,t2,t3
WHERE
t2.startTime <= 100 and
t2.stationId = t1.stationId and
(t1.stationid = 1 or t1.stationid = 2 or t1.stationid = 3) and
key1 >0 and
t2.key2=t3.a;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL NULL NULL NULL NULL 10 Using where
1 SIMPLE t2 range PRIMARY,key1,key2 PRIMARY 8 NULL 219 Using index condition; Using where; Using join buffer (flat, BNL join)
1 SIMPLE t3 ref a a 5 test.t2.key2 1
drop table t1,t2,t3;
drop table t1000,t10,t03;

View File

@@ -1749,3 +1749,68 @@ show keys from t1;
explain select * from t0,t1 where t0.a=t1.a;
drop table t0,t1;
--echo #
--echo # MDEV-21383: Possible range plan is not used under certain conditions
--echo #
--disable_warnings
drop table if exists t10, t1000, t03;
--enable_warnings
create table t10(a int);
insert into t10 values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9);
create table t1000(a int);
insert into t1000 select A.a + B.a* 10 + C.a * 100 from t10 A, t10 B, t10 C;
create table t03(a int);
insert into t03 values (0),(1),(2);
create table t1 (
stationid int
);
insert into t1 select a from t10;
CREATE TABLE t2 (
stationId int,
startTime int,
filler char(100),
key1 int,
key2 int,
key(key1),
key(key2),
PRIMARY KEY (`stationId`,`startTime`)
);
insert into t2 select
A.a,
B.a,
repeat('filler=data-', 4),
B.a,
1
from
t03 A,
t1000 B;
analyze table t2;
create table t3(a int, filler char(100), key(a));
insert into t3 select A.a+1000*B.a, 'filler-data' from t1000 A, t10 B;
--echo # This should produce a join order of t1,t2,t3
--echo # t2 should have type=range, key=PRIMARY key_len=8 (not type=ALL or key_len<8)
explain
SELECT *
FROM
t1,t2,t3
WHERE
t2.startTime <= 100 and
t2.stationId = t1.stationId and
(t1.stationid = 1 or t1.stationid = 2 or t1.stationid = 3) and
key1 >0 and
t2.key2=t3.a;
drop table t1,t2,t3;
drop table t1000,t10,t03;

View File

@@ -1636,7 +1636,7 @@ performance-schema-events-waits-history-long-size -1
performance-schema-events-waits-history-size -1
performance-schema-hosts-size -1
performance-schema-instrument
performance-schema-max-cond-classes 80
performance-schema-max-cond-classes 90
performance-schema-max-cond-instances -1
performance-schema-max-digest-length 1024
performance-schema-max-file-classes 50

View File

@@ -0,0 +1 @@
ERROR 2026 (HY000): SSL connection error: Validation of SSL server certificate failed

View File

@@ -0,0 +1,11 @@
[good]
#
# hostname on the certificate is localhost
#
[bad]
#
# hostname on the certificate is server8k
#
loose-ssl-key=$MYSQL_TEST_DIR/std_data/server8k-key.pem
loose-ssl-cert=$MYSQL_TEST_DIR/std_data/server8k-cert.pem

View File

@@ -0,0 +1,2 @@
*************************** 1. row ***************************
have_ssl: 1

View File

@@ -0,0 +1,22 @@
#
# Tests here don't use --ssl-ca but expect the certificate to be
# signed by a CA in a system CA store
#
# They only work for openssl, because the following line works only there:
let SSL_CERT_DIR=$MYSQL_TMP_DIR;
source include/not_embedded.inc;
if (`select @@version_ssl_library not like 'OpenSSL%'`) {
skip Needs OpenSSL;
}
# See `openssl x509 -in cacert.pem -noout -issuer_hash`
copy_file $MYSQL_TEST_DIR/std_data/cacert.pem $MYSQL_TMP_DIR/ed1f42db.0;
#
# test --ssl-verify-server-cert
#
disable_abort_on_error;
exec $MYSQL --ssl-verify-server-cert -Ee "select (variable_value <> '') as have_ssl from information_schema.session_status where variable_name='ssl_cipher'" 2>&1;

View File

@@ -1,11 +0,0 @@
call mtr.add_suppression("Out of memory");
set sql_mode="";
drop table if exists t1,t2;
create table `t1` (`a` datetime not null) engine=InnoDB;
create table `t2` (`a` int not null) engine=innodb;
replace into t1 values (),();
insert into t2 values(0);
set session sort_buffer_size = 1024*1024*1024*1024;
delete d2 from t2 as d1, t1 as d2 where d1.a <=> d2.a;
drop table t2;
drop table t1;

View File

@@ -1,26 +0,0 @@
#
# MDEV-7912
#
# multitable delete with wrongly set sort_buffer_size crashes in merge_buffers
--source include/have_innodb.inc
--source include/have_debug.inc
--source include/windows.inc
call mtr.add_suppression("Out of memory");
set sql_mode="";
--disable_warnings
drop table if exists t1,t2;
create table `t1` (`a` datetime not null) engine=InnoDB;
create table `t2` (`a` int not null) engine=innodb;
replace into t1 values (),();
insert into t2 values(0);
set session sort_buffer_size = 1024*1024*1024*1024;
#Either fail with EE_OUTOFMEMORY, or succeed
--error 0 , 5
delete d2 from t2 as d1, t1 as d2 where d1.a <=> d2.a;
--enable_warnings
drop table t2;
drop table t1;

View File

@@ -22,7 +22,7 @@ call mtr.add_suppression('Could not use .*');
call mtr.add_suppression('MYSQL_BIN_LOG::purge_logs failed to clean registers before purging logs.');
flush tables;
let $old=`select @@debug`;
SET @saved_dbug = @@SESSION.debug_dbug;
RESET MASTER;
@@ -273,6 +273,6 @@ SELECT @index;
-- replace_regex /\.[\\\/]master/master/
SELECT @index;
eval SET SESSION debug_dbug="$old";
SET @@SESSION.debug_dbug = @saved_dbug;
--echo End of tests

View File

@@ -5,6 +5,7 @@ call mtr.add_suppression('Turning logging off for the whole duration of the MySQ
call mtr.add_suppression('Could not use .*');
call mtr.add_suppression('MYSQL_BIN_LOG::purge_logs failed to clean registers before purging logs.');
flush tables;
SET @saved_dbug = @@SESSION.debug_dbug;
RESET MASTER;
flush logs;
flush logs;
@@ -185,5 +186,5 @@ master-bin.000011
master-bin.000012
master-bin.000013
SET SESSION debug_dbug="";
SET @@SESSION.debug_dbug = @saved_dbug;
End of tests

View File

@@ -5,6 +5,7 @@ call mtr.add_suppression('Turning logging off for the whole duration of the MySQ
call mtr.add_suppression('Could not use .*');
call mtr.add_suppression('MYSQL_BIN_LOG::purge_logs failed to clean registers before purging logs.');
flush tables;
SET @saved_dbug = @@SESSION.debug_dbug;
RESET MASTER;
flush logs;
flush logs;
@@ -185,5 +186,5 @@ master-bin.000011
master-bin.000012
master-bin.000013
SET SESSION debug_dbug="";
SET @@SESSION.debug_dbug = @saved_dbug;
End of tests

View File

@@ -34,10 +34,11 @@ START SLAVE IO_THREAD;
include/wait_for_slave_io_error.inc [errno=1595,1743]
connection master;
SET GLOBAL debug_dbug="-d,corrupt_read_log_event2_set";
SET GLOBAL debug_dbug= "";
SET GLOBAL debug_dbug=@saved_dbug;
SET GLOBAL master_verify_checksum=1;
# 5. Slave. Corruption in network
connection slave;
SET @saved_dbug_slave = @@GLOBAL.debug_dbug;
SET GLOBAL debug_dbug="+d,corrupt_queue_event";
START SLAVE IO_THREAD;
include/wait_for_slave_io_error.inc [errno=1595,1743]
@@ -47,7 +48,7 @@ SET GLOBAL debug_dbug="+d,corrupt_read_log_event_char";
START SLAVE SQL_THREAD;
include/wait_for_slave_sql_error.inc [errno=1593]
SET GLOBAL debug_dbug="-d,corrupt_read_log_event_char";
SET GLOBAL debug_dbug= "";
SET GLOBAL debug_dbug=@saved_dbug_slave;
# 7. Seek diff for tables on master and slave
connection slave;
include/start_slave.inc
@@ -60,5 +61,4 @@ set @@global.debug_dbug = @saved_dbug;
SET GLOBAL master_verify_checksum = @old_master_verify_checksum;
DROP TABLE t1;
connection slave;
set @@global.debug_dbug = @saved_dbug;
include/rpl_end.inc

View File

@@ -4,7 +4,7 @@ connection server_2;
include/stop_slave.inc
SET @old_parallel_threads=@@GLOBAL.slave_parallel_threads;
SET @old_parallel_mode=@@GLOBAL.slave_parallel_mode;
SET @old_dbug= @@GLOBAL.debug_dbug;
SET @old_debug= @@GLOBAL.debug_dbug;
SET GLOBAL slave_parallel_mode='optimistic';
SET GLOBAL slave_parallel_threads= 3;
CHANGE MASTER TO master_use_gtid=slave_pos;

View File

@@ -15,7 +15,9 @@ select name from mutex_instances where name like 'wait/synch/mutex/sql/LOCK_wsre
name wait/synch/mutex/sql/LOCK_wsrep_cluster_config
name wait/synch/mutex/sql/LOCK_wsrep_config_state
name wait/synch/mutex/sql/LOCK_wsrep_desync
name wait/synch/mutex/sql/LOCK_wsrep_donor_monitor
name wait/synch/mutex/sql/LOCK_wsrep_group_commit
name wait/synch/mutex/sql/LOCK_wsrep_joiner_monitor
name wait/synch/mutex/sql/LOCK_wsrep_ready
name wait/synch/mutex/sql/LOCK_wsrep_replaying
name wait/synch/mutex/sql/LOCK_wsrep_slave_threads
@@ -24,6 +26,8 @@ name wait/synch/mutex/sql/LOCK_wsrep_SR_store
name wait/synch/mutex/sql/LOCK_wsrep_sst
name wait/synch/mutex/sql/LOCK_wsrep_sst_init
select name from cond_instances where name like 'wait/synch/cond/sql/COND_wsrep%' order by name;
name wait/synch/cond/sql/COND_wsrep_donor_monitor
name wait/synch/cond/sql/COND_wsrep_joiner_monitor
name wait/synch/cond/sql/COND_wsrep_ready
name wait/synch/cond/sql/COND_wsrep_replaying
name wait/synch/cond/sql/COND_wsrep_sst

View File

@@ -1,7 +1,7 @@
connection node_2;
connection node_1;
connection node_1;
CREATE TABLE ten (f1 INTEGER);
CREATE TABLE ten (f1 INTEGER) Engine=InnoDB;
INSERT INTO ten VALUES (0),(1),(2),(3),(4),(5),(6),(7),(8),(9);
CREATE TABLE t1 (f1 INTEGER PRIMARY KEY) Engine=InnoDB;
INSERT INTO t1 (f1) SELECT 000000 + (10000 * a1.f1) + (1000 * a2.f1) + (100 * a3.f1) + (10 * a4.f1) + a5.f1 FROM ten AS a1, ten AS a2, ten AS a3, ten AS a4, ten AS a5;
@@ -11,19 +11,19 @@ SET SESSION wsrep_OSU_method = "RSU";
ALTER TABLE t1 DROP PRIMARY KEY;
SET SESSION wsrep_OSU_method = "TOI";
INSERT INTO t1 (f1) SELECT 200000 + (10000 * a1.f1) + (1000 * a2.f1) + (100 * a3.f1) + (10 * a4.f1) + a5.f1 FROM ten AS a1, ten AS a2, ten AS a3, ten AS a4, ten AS a5;
SELECT COUNT(*) = 300000 FROM t1;
COUNT(*) = 300000
1
SELECT MAX(f1) = 299999 FROM t1;
MAX(f1) = 299999
1
SELECT COUNT(*) as expect_300000 FROM t1;
expect_300000
300000
SELECT MAX(f1) as expect_299999 FROM t1;
expect_299999
299999
connection node_1;
SELECT COUNT(*) = 300000 FROM t1;
COUNT(*) = 300000
1
SELECT MAX(f1) = 299999 FROM t1;
MAX(f1) = 299999
1
SELECT COUNT(*) as expect_300000 FROM t1;
expect_300000
300000
SELECT MAX(f1) as expect_299999 FROM t1;
expect_299999
299999
SET SESSION wsrep_OSU_method = "RSU";
ALTER TABLE t1 DROP PRIMARY KEY;
SET SESSION wsrep_OSU_method = "TOI";
@@ -31,20 +31,20 @@ connection node_2;
INSERT INTO t1 (f1) VALUES (1);
INSERT INTO t1 (f1) VALUES (10);
connection node_1;
SELECT COUNT(*) = 2 FROM t1 WHERE f1 = 1;
COUNT(*) = 2
1
SELECT COUNT(*) = 2 FROM t1 WHERE f1 = 10;
COUNT(*) = 2
1
SELECT COUNT(*) as expect_2 FROM t1 WHERE f1 = 1;
expect_2
2
SELECT COUNT(*) as expect_2 FROM t1 WHERE f1 = 10;
expect_2
2
INSERT INTO t1 (f1) VALUES (100);
INSERT INTO t1 (f1) VALUES (1000);
connection node_2;
SELECT COUNT(*) = 2 FROM t1 WHERE f1 = 100;
COUNT(*) = 2
1
SELECT COUNT(*) = 2 FROM t1 WHERE f1 = 1000;
COUNT(*) = 2
1
SELECT COUNT(*) as expect_2 FROM t1 WHERE f1 = 100;
expect_2
2
SELECT COUNT(*) as expect_2 FROM t1 WHERE f1 = 1000;
expect_2
2
DROP TABLE t1;
DROP TABLE ten;

View File

@@ -4,10 +4,9 @@
--source include/big_test.inc
--source include/galera_cluster.inc
--source include/have_innodb.inc
--connection node_1
CREATE TABLE ten (f1 INTEGER);
CREATE TABLE ten (f1 INTEGER) Engine=InnoDB;
INSERT INTO ten VALUES (0),(1),(2),(3),(4),(5),(6),(7),(8),(9);
CREATE TABLE t1 (f1 INTEGER PRIMARY KEY) Engine=InnoDB;
@@ -26,13 +25,18 @@ SET SESSION wsrep_OSU_method = "TOI";
# Insert even more data after the ALTER has completed
INSERT INTO t1 (f1) SELECT 200000 + (10000 * a1.f1) + (1000 * a2.f1) + (100 * a3.f1) + (10 * a4.f1) + a5.f1 FROM ten AS a1, ten AS a2, ten AS a3, ten AS a4, ten AS a5;
SELECT COUNT(*) = 300000 FROM t1;
SELECT MAX(f1) = 299999 FROM t1;
--let $wait_condition = SELECT COUNT(*) = 300000 FROM t1;
--source include/wait_condition.inc
SELECT COUNT(*) as expect_300000 FROM t1;
SELECT MAX(f1) as expect_299999 FROM t1;
--connection node_1
--reap
SELECT COUNT(*) = 300000 FROM t1;
SELECT MAX(f1) = 299999 FROM t1;
--let $wait_condition = SELECT COUNT(*) = 300000 FROM t1;
--source include/wait_condition.inc
SELECT COUNT(*) as expect_300000 FROM t1;
SELECT MAX(f1) as expect_299999 FROM t1;
SET SESSION wsrep_OSU_method = "RSU";
ALTER TABLE t1 DROP PRIMARY KEY;
@@ -44,15 +48,19 @@ INSERT INTO t1 (f1) VALUES (1);
INSERT INTO t1 (f1) VALUES (10);
--connection node_1
SELECT COUNT(*) = 2 FROM t1 WHERE f1 = 1;
SELECT COUNT(*) = 2 FROM t1 WHERE f1 = 10;
--let $wait_condition = SELECT COUNT(*) = 2 FROM t1 where f1 = 10;
--source include/wait_condition.inc
SELECT COUNT(*) as expect_2 FROM t1 WHERE f1 = 1;
SELECT COUNT(*) as expect_2 FROM t1 WHERE f1 = 10;
INSERT INTO t1 (f1) VALUES (100);
INSERT INTO t1 (f1) VALUES (1000);
--connection node_2
SELECT COUNT(*) = 2 FROM t1 WHERE f1 = 100;
SELECT COUNT(*) = 2 FROM t1 WHERE f1 = 1000;
--let $wait_condition = SELECT COUNT(*) = 2 FROM t1 where f1 = 1000;
--source include/wait_condition.inc
SELECT COUNT(*) as expect_2 FROM t1 WHERE f1 = 100;
SELECT COUNT(*) as expect_2 FROM t1 WHERE f1 = 1000;
DROP TABLE t1;
DROP TABLE ten;

View File

@@ -74,5 +74,27 @@ c1 c2 c3
1 2 3
2 0 4
DROP TABLE t1;
disconnect con1;
SET DEBUG_SYNC='RESET';
#
# MDEV-21539 Assertion ...prtype... in row_log_table_apply_convert_mrec
#
CREATE TABLE t1 (f VARCHAR(8) CHARACTER SET latin1 COLLATE latin1_swedish_ci)
ENGINE=InnoDB;
connection con1;
SET DEBUG_SYNC = 'row_log_table_apply1_before SIGNAL scanned WAIT_FOR insert_done';
ALTER TABLE t1 MODIFY f VARCHAR(256) COLLATE latin1_german2_ci NOT NULL;
# session default
connection default;
SET DEBUG_SYNC = 'now WAIT_FOR scanned';
INSERT INTO t1 VALUES('one');
SET DEBUG_SYNC = 'now SIGNAL insert_done';
connection con1;
disconnect con1;
connection default;
SET DEBUG_SYNC=RESET;
ALTER TABLE t1 CHANGE f eins VARCHAR(257) COLLATE latin1_german1_ci NOT NULL,
ALGORITHM=INSTANT;
SELECT * FROM t1;
eins
one
DROP TABLE t1;

View File

@@ -64,11 +64,11 @@ SET DEBUG_SYNC = 'now WAIT_FOR roll1_wait';
COMMIT;
SET DEBUG_SYNC = 'now SIGNAL roll2';
connect con1,localhost,root,,;
SET DEBUG_SYNC = 'now WAIT_FOR rollback_waiting';
SET DEBUG_SYNC = 'now WAIT_FOR rollback_waiting TIMEOUT 1';
SET DEBUG_SYNC = 'rw_s_lock_waiting SIGNAL lockwait1';
SELECT a00 FROM t1 WHERE a00 = 'bii';
connection default;
SET DEBUG_SYNC = 'now WAIT_FOR lockwait1';
SET DEBUG_SYNC = 'now WAIT_FOR lockwait1 TIMEOUT 1';
SET DEBUG_SYNC = 'now SIGNAL resume';
connection con1;
a00

View File

@@ -68,5 +68,32 @@ reap;
--disable_info
SELECT * FROM t1;
DROP TABLE t1;
disconnect con1;
SET DEBUG_SYNC='RESET';
--echo #
--echo # MDEV-21539 Assertion ...prtype... in row_log_table_apply_convert_mrec
--echo #
CREATE TABLE t1 (f VARCHAR(8) CHARACTER SET latin1 COLLATE latin1_swedish_ci)
ENGINE=InnoDB;
connection con1;
SET DEBUG_SYNC = 'row_log_table_apply1_before SIGNAL scanned WAIT_FOR insert_done';
send ALTER TABLE t1 MODIFY f VARCHAR(256) COLLATE latin1_german2_ci NOT NULL;
--echo # session default
connection default;
SET DEBUG_SYNC = 'now WAIT_FOR scanned';
INSERT INTO t1 VALUES('one');
SET DEBUG_SYNC = 'now SIGNAL insert_done';
connection con1;
reap;
disconnect con1;
connection default;
SET DEBUG_SYNC=RESET;
ALTER TABLE t1 CHANGE f eins VARCHAR(257) COLLATE latin1_german1_ci NOT NULL,
ALGORITHM=INSTANT;
SELECT * FROM t1;
DROP TABLE t1;

View File

@@ -106,12 +106,18 @@ COMMIT;
SET DEBUG_SYNC = 'now SIGNAL roll2';
connect (con1,localhost,root,,);
SET DEBUG_SYNC = 'now WAIT_FOR rollback_waiting';
# FIXME: This occasionally times out!
--disable_warnings
SET DEBUG_SYNC = 'now WAIT_FOR rollback_waiting TIMEOUT 1';
--enable_warnings
SET DEBUG_SYNC = 'rw_s_lock_waiting SIGNAL lockwait1';
send SELECT a00 FROM t1 WHERE a00 = 'bii';
connection default;
SET DEBUG_SYNC = 'now WAIT_FOR lockwait1';
# FIXME: This occasionally times out!
--disable_warnings
SET DEBUG_SYNC = 'now WAIT_FOR lockwait1 TIMEOUT 1';
--enable_warnings
# bug#30113362 caused deadlock
SET DEBUG_SYNC = 'now SIGNAL resume';

View File

@@ -29,7 +29,7 @@ ALTER TABLE t2 drop index idx1;
connection default;
set DEBUG_SYNC= 'now SIGNAL fts_drop_index';
connection con1;
SET @@GLOBAL.debug_dbug = @saved_dbug;
drop table t1, t2;
connection default;
set DEBUG_SYNC=RESET;
SET @@GLOBAL.debug_dbug = @saved_dbug;

View File

@@ -39,7 +39,7 @@ SLEEP(2)
SELECT sql_text FROM mysql.slow_log WHERE query_time >= '00:00:02';
sql_text
INSERT INTO t1(title) VALUES('mysql database')
SET GLOBAL debug_dbug = @old_debug_dbug;
SET GLOBAL debug_dbug = @old_debug;
TRUNCATE TABLE mysql.slow_log;
DROP TABLE t1;
# Case 2: Sync blocks DML(insert) on other tables.
@@ -71,7 +71,7 @@ SLEEP(2)
# slow log results should be empty here.
SELECT sql_text FROM mysql.slow_log WHERE query_time >= '00:00:02';
sql_text
SET GLOBAL debug_dbug = @old_debug_dbug;
SET GLOBAL debug_dbug = @old_debug;
TRUNCATE TABLE mysql.slow_log;
DROP TABLE t1,t2;
disconnect con1;

View File

@@ -46,7 +46,7 @@ set DEBUG_SYNC= 'now SIGNAL fts_drop_index';
connection con1;
reap;
SET @@GLOBAL.debug_dbug = @saved_dbug;
drop table t1, t2;
connection default;
set DEBUG_SYNC=RESET;
SET @@GLOBAL.debug_dbug = @saved_dbug;

View File

@@ -61,7 +61,7 @@ SELECT SLEEP(2);
-- echo # slow log results should only contain INSERT INTO t1.
SELECT sql_text FROM mysql.slow_log WHERE query_time >= '00:00:02';
SET GLOBAL debug_dbug = @old_debug_dbug;
SET GLOBAL debug_dbug = @old_debug;
TRUNCATE TABLE mysql.slow_log;
DROP TABLE t1;
@@ -107,7 +107,7 @@ SELECT SLEEP(2);
-- echo # slow log results should be empty here.
SELECT sql_text FROM mysql.slow_log WHERE query_time >= '00:00:02';
SET GLOBAL debug_dbug = @old_debug_dbug;
SET GLOBAL debug_dbug = @old_debug;
TRUNCATE TABLE mysql.slow_log;
DROP TABLE t1,t2;

View File

@@ -0,0 +1,23 @@
CREATE TABLE `t` (
`col_1` varchar(255) NOT NULL DEFAULT '',
`col_2` varchar(255) NOT NULL,
`col_3` int(11) NOT NULL DEFAULT '0',
`col_4` int(11) NOT NULL DEFAULT '0'
) ENGINE=Aria TRANSACTIONAL=0 PAGE_CHECKSUM=0;
insert into t values
('foobar','qux',0,0),('abcdef','qux',0,0);
Compressing test/t.MAD: (2 records)
- Calculating statistics
normal: 0 empty-space: 0 empty-zero: 0 empty-fill: 0
pre-space: 0 end-space: 0 intervall-fields: 0 zero: 2
Original trees: 4 After join: 1
- Compressing file
Min record length: 5 Max length: 5 Mean total length: 35
99.57%
# restart
SELECT * FROM t;
col_1 col_2 col_3 col_4
foobar qux 0 0
abcdef qux 0 0
DROP TABLE t;

View File

@@ -0,0 +1,23 @@
--source include/have_aria.inc
--source include/have_debug.inc
--source include/not_embedded.inc
CREATE TABLE `t` (
`col_1` varchar(255) NOT NULL DEFAULT '',
`col_2` varchar(255) NOT NULL,
`col_3` int(11) NOT NULL DEFAULT '0',
`col_4` int(11) NOT NULL DEFAULT '0'
) ENGINE=Aria TRANSACTIONAL=0 PAGE_CHECKSUM=0;
insert into t values
('foobar','qux',0,0),('abcdef','qux',0,0);
--let $datadir= `SELECT @@datadir`
--source include/shutdown_mysqld.inc
# maria_pack crashes by assert() if the bug is not fixed
--exec cd $datadir && $MARIA_PACK -t test/t
--source include/start_mysqld.inc
SELECT * FROM t;
DROP TABLE t;

View File

@@ -111,7 +111,7 @@ performance_schema_events_statements_history_size 10
performance_schema_events_waits_history_long_size 10000
performance_schema_events_waits_history_size 10
performance_schema_hosts_size 100
performance_schema_max_cond_classes 80
performance_schema_max_cond_classes 90
performance_schema_max_cond_instances 1000
performance_schema_max_digest_length 1024
performance_schema_max_file_classes 50

View File

@@ -38,7 +38,7 @@ performance_schema_events_statements_history_size 10
performance_schema_events_waits_history_long_size 10000
performance_schema_events_waits_history_size 10
performance_schema_hosts_size 100
performance_schema_max_cond_classes 80
performance_schema_max_cond_classes 90
performance_schema_max_cond_instances 1000
performance_schema_max_digest_length 1024
performance_schema_max_file_classes 50

View File

@@ -21,7 +21,7 @@ show engine PERFORMANCE_SCHEMA status;
show status like "performance_schema%";
show variables like "performance_schema_max_cond_classes";
Variable_name Value
performance_schema_max_cond_classes 80
performance_schema_max_cond_classes 90
select count(*) > 0 from performance_schema.setup_instruments
where name like "wait/synch/cond/%";
count(*) > 0

View File

@@ -33,7 +33,7 @@ performance_schema_events_statements_history_size 10
performance_schema_events_waits_history_long_size 10000
performance_schema_events_waits_history_size 10
performance_schema_hosts_size 100
performance_schema_max_cond_classes 80
performance_schema_max_cond_classes 90
performance_schema_max_cond_instances 1000
performance_schema_max_digest_length 1024
performance_schema_max_file_classes 50

View File

@@ -1,13 +1,20 @@
# Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; version 2 of the License.
# it under the terms of the GNU General Public License, version 2.0,
# as published by the Free Software Foundation.
#
# This program is also distributed with certain software (including
# but not limited to OpenSSL) that is licensed under separate terms,
# as designated in a particular file or component or in included license
# documentation. The authors of MySQL hereby grant you an additional
# permission to link the program and your derivative works with the
# separately licensed software that they have included with MySQL.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# GNU General Public License, version 2.0, for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software Foundation,

View File

@@ -1,13 +1,20 @@
# Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; version 2 of the License.
# it under the terms of the GNU General Public License, version 2.0,
# as published by the Free Software Foundation.
#
# This program is also distributed with certain software (including
# but not limited to OpenSSL) that is licensed under separate terms,
# as designated in a particular file or component or in included license
# documentation. The authors of MySQL hereby grant you an additional
# permission to link the program and your derivative works with the
# separately licensed software that they have included with MySQL.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# GNU General Public License, version 2.0, for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software Foundation,

View File

@@ -131,12 +131,13 @@ let $slave_io_errno= 1595,1743; # ER_SLAVE_RELAY_LOG_WRITE_FAILURE, ER_NETWORK_R
--source include/wait_for_slave_io_error.inc
--connection master
SET GLOBAL debug_dbug="-d,corrupt_read_log_event2_set";
SET GLOBAL debug_dbug= "";
SET GLOBAL debug_dbug=@saved_dbug;
SET GLOBAL master_verify_checksum=1;
# Emulate corruption in network
--echo # 5. Slave. Corruption in network
--connection slave
SET @saved_dbug_slave = @@GLOBAL.debug_dbug;
SET GLOBAL debug_dbug="+d,corrupt_queue_event";
START SLAVE IO_THREAD;
let $slave_io_errno= 1595,1743; # ER_SLAVE_RELAY_LOG_WRITE_FAILURE, ER_NETWORK_READ_EVENT_CHECKSUM_FAILURE
@@ -153,7 +154,7 @@ let $slave_sql_errno= 1593;
--source include/wait_for_slave_sql_error.inc
SET GLOBAL debug_dbug="-d,corrupt_read_log_event_char";
SET GLOBAL debug_dbug= "";
SET GLOBAL debug_dbug=@saved_dbug_slave;
# Start normal replication and compare same table on master
# and slave
@@ -172,6 +173,5 @@ set @@global.debug_dbug = @saved_dbug;
SET GLOBAL master_verify_checksum = @old_master_verify_checksum;
DROP TABLE t1;
--sync_slave_with_master
set @@global.debug_dbug = @saved_dbug;
--source include/rpl_end.inc

View File

@@ -47,7 +47,7 @@
--source include/stop_slave.inc
SET @old_parallel_threads=@@GLOBAL.slave_parallel_threads;
SET @old_parallel_mode=@@GLOBAL.slave_parallel_mode;
SET @old_dbug= @@GLOBAL.debug_dbug;
SET @old_debug= @@GLOBAL.debug_dbug;
SET GLOBAL slave_parallel_mode='optimistic';
SET GLOBAL slave_parallel_threads= 3;
CHANGE MASTER TO master_use_gtid=slave_pos;

View File

@@ -13,6 +13,7 @@ create table tm (a int auto_increment primary key) engine=myisam;
create table ti (a int auto_increment primary key) engine=innodb;
sync_slave_with_master;
SET @saved_dbug = @@GLOBAL.debug_dbug;
set @@global.debug_dbug="+d,stop_slave_middle_group";
connection master;
@@ -135,8 +136,7 @@ eval SELECT "$error" AS Last_SQL_Error, @check as `true`;
select max(a) as two from tm;
select max(a) as one from ti;
set @@global.debug_dbug="-d";
SET @@GLOBAL.debug_dbug = @saved_dbug;
#
# clean-up
#

View File

@@ -1,9 +1,9 @@
include/rpl_init.inc [topology=1->2->1]
include/rpl_connect.inc [creating M4]
include/rpl_connect.inc [creating M2]
SET @old_debug= @@global.debug;
connection M2;
STOP SLAVE;
SET @old_debug= @@global.debug;
SET GLOBAL debug_dbug= "+d,dbug.rows_events_to_delay_relay_logging";
START SLAVE IO_THREAD;
include/wait_for_slave_io_to_start.inc

View File

@@ -34,10 +34,11 @@ START SLAVE IO_THREAD;
include/wait_for_slave_io_error.inc [errno=1595,1743]
connection master;
SET GLOBAL debug_dbug="-d,corrupt_read_log_event2_set";
SET GLOBAL debug_dbug= "";
SET GLOBAL debug_dbug=@saved_dbug;
SET GLOBAL master_verify_checksum=1;
# 5. Slave. Corruption in network
connection slave;
SET @saved_dbug_slave = @@GLOBAL.debug_dbug;
SET GLOBAL debug_dbug="+d,corrupt_queue_event";
START SLAVE IO_THREAD;
include/wait_for_slave_io_error.inc [errno=1595,1743]
@@ -47,7 +48,7 @@ SET GLOBAL debug_dbug="+d,corrupt_read_log_event_char";
START SLAVE SQL_THREAD;
include/wait_for_slave_sql_error.inc [errno=1593]
SET GLOBAL debug_dbug="-d,corrupt_read_log_event_char";
SET GLOBAL debug_dbug= "";
SET GLOBAL debug_dbug=@saved_dbug_slave;
# 7. Seek diff for tables on master and slave
connection slave;
include/start_slave.inc
@@ -60,5 +61,4 @@ set @@global.debug_dbug = @saved_dbug;
SET GLOBAL master_verify_checksum = @old_master_verify_checksum;
DROP TABLE t1;
connection slave;
set @@global.debug_dbug = @saved_dbug;
include/rpl_end.inc

View File

@@ -26,6 +26,7 @@ CHANGE MASTER TO IGNORE_DOMAIN_IDS=(), MASTER_USE_GTID=slave_pos;
include/start_slave.inc
DO_DOMAIN_IDS (AFTER) :
IGNORE_DOMAIN_IDS (AFTER) :
SET @saved_dbug = @@GLOBAL.debug_dbug;
SET @@global.debug_dbug="+d,kill_slave_io_before_commit";
connection master;
START TRANSACTION;
@@ -414,4 +415,5 @@ connection slave;
include/stop_slave.inc
CHANGE MASTER TO DO_DOMAIN_IDS=(), IGNORE_DOMAIN_IDS=();
include/start_slave.inc
SET @@GLOBAL.debug_dbug = @saved_dbug;
include/rpl_end.inc

View File

@@ -37,7 +37,6 @@ IGNORE_DOMAIN_IDS (AFTER) : 1
connection master;
include/rpl_start_server.inc [server_number=1]
# Master has restarted successfully
set @@global.debug_dbug="-d";
connection slave;
include/stop_slave.inc
include/start_slave.inc

View File

@@ -27,7 +27,7 @@ a
connection server_1;
include/kill_binlog_dump_threads.inc
INSERT INTO t1 VALUES (10);
SET @old_dbug= @@GLOBAL.debug_dbug;
SET @old_debug= @@GLOBAL.debug_dbug;
SET GLOBAL debug_dbug="+d,dummy_disable_default_dbug_output";
SET GLOBAL debug_dbug="+d,gtid_force_reconnect_at_10_1_100";
connection server_2;

View File

@@ -2,10 +2,10 @@ include/master-slave.inc
[connection master]
connection master;
set @old_master_binlog_checksum= @@global.binlog_checksum;
set @old_slave_dbug= @@global.debug_dbug;
connection slave;
include/stop_slave.inc
# Test slave with no capability gets dummy event, which is ignored.
set @old_dbug= @@global.debug_dbug;
SET @@global.debug_dbug='+d,simulate_slave_capability_none';
include/start_slave.inc
connection master;
@@ -50,7 +50,7 @@ slave-relay-bin.000005 # Annotate_rows # # INSERT INTO t1 /* A comment just to m
slave-relay-bin.000005 # Table_map # # table_id: # (test.t1)
slave-relay-bin.000005 # Write_rows_v1 # # table_id: # flags: STMT_END_F
slave-relay-bin.000005 # Query # # COMMIT
set @@global.debug_dbug= @old_slave_dbug;
set @@global.debug_dbug= @old_dbug;
# Test dummy event is checksummed correctly.
connection master;
set @@global.binlog_checksum = CRC32;
@@ -148,10 +148,10 @@ select @@global.log_slave_updates;
select @@global.replicate_annotate_row_events;
@@global.replicate_annotate_row_events
1
set @@global.debug_dbug= @old_slave_dbug;
Clean up.
connection master;
set @@global.binlog_checksum = @old_master_binlog_checksum;
DROP TABLE t1, t2;
connection slave;
set @@global.debug_dbug= @old_dbug;
include/rpl_end.inc

View File

@@ -4,7 +4,7 @@ connection server_2;
include/stop_slave.inc
SET @old_parallel_threads=@@GLOBAL.slave_parallel_threads;
SET @old_parallel_mode=@@GLOBAL.slave_parallel_mode;
SET @old_dbug= @@GLOBAL.debug_dbug;
SET @old_debug= @@GLOBAL.debug_dbug;
SET GLOBAL slave_parallel_mode='optimistic';
SET GLOBAL slave_parallel_threads= 3;
CHANGE MASTER TO master_use_gtid=slave_pos;

View File

@@ -359,7 +359,7 @@ include/save_master_gtid.inc
connection server_2;
include/sync_with_master_gtid.inc
include/stop_slave.inc
SET @old_dbug= @@GLOBAL.debug_dbug;
SET @old_debug= @@GLOBAL.debug_dbug;
SET GLOBAL debug_dbug= '+d,inject_analyze_table_sleep';
connection server_1;
ALTER TABLE t2 COMMENT "123abc";

View File

@@ -0,0 +1,79 @@
include/rpl_init.inc [topology=1->3]
connection server_3;
set default_master_connection = '';
include/start_slave.inc
Warnings:
Note 1254 Slave is already running
set default_master_connection = 'm2';
change master to master_host='127.0.0.1', master_port=SERVER_MYPORT_2, master_user='root', master_use_gtid=slave_pos;
include/start_slave.inc
select @@global.slave_parallel_workers as two;
two
2
connection server_3;
SHUTDOWN;
connection server_3;
connection server_3;
connection server_1;
create table t1 (i int primary key) engine=Innodb;
connection server_2;
create table t2 (i int primary key) engine=Innodb;
connection server_3;
set default_master_connection = '';
include/start_slave.inc
Warnings:
Note 1254 Slave is already running
set default_master_connection = 'm2';
include/start_slave.inc
Warnings:
Note 1254 Slave is already running
connection server_2;
insert into t2 values (1);
connection server_3;
connection server_1;
insert into t1 values (1);
connection server_3;
connection server_3;
SHUTDOWN;
connection server_3;
connection server_3;
connection server_3;
set default_master_connection = '';
include/start_slave.inc
Warnings:
Note 1254 Slave is already running
set default_master_connection = 'm2';
include/start_slave.inc
Warnings:
Note 1254 Slave is already running
connect conn_block_server3, 127.0.0.1, root,, test, $SERVER_MYPORT_3,;
begin;
insert into t1 values (2);
insert into t2 values (2);
connection server_1;
insert into t1 values (2);
connection server_2;
insert into t2 values (2);
connection server_3;
SHUTDOWN;
connection server_3;
connection server_3;
connection server_3;
set default_master_connection = '';
include/start_slave.inc
Warnings:
Note 1254 Slave is already running
set default_master_connection = 'm2';
include/start_slave.inc
Warnings:
Note 1254 Slave is already running
connection server_1;
drop table t1;
connection server_2;
drop table t2;
connection server_3;
set default_master_connection = 'm2';
include/stop_slave.inc
RESET SLAVE ALL;
set default_master_connection = '';
include/rpl_end.inc

View File

@@ -6,6 +6,7 @@ call mtr.add_suppression("Unsafe statement written to the binary log using state
create table tm (a int auto_increment primary key) engine=myisam;
create table ti (a int auto_increment primary key) engine=innodb;
connection slave;
SET @saved_dbug = @@GLOBAL.debug_dbug;
set @@global.debug_dbug="+d,stop_slave_middle_group";
connection master;
begin;
@@ -74,7 +75,7 @@ two
select max(a) as one from ti;
one
1
set @@global.debug_dbug="-d";
SET @@GLOBAL.debug_dbug = @saved_dbug;
include/rpl_reset.inc
connection master;
drop table tm, ti;

View File

@@ -22,10 +22,9 @@
# The parameter reflects binlog-row-event-max-size @cnf.
--let $row_size=1024
SET @old_debug= @@global.debug;
--connection M2
STOP SLAVE;
SET @old_debug= @@global.debug;
SET GLOBAL debug_dbug= "+d,dbug.rows_events_to_delay_relay_logging";
START SLAVE IO_THREAD;
--source include/wait_for_slave_io_to_start.inc

View File

@@ -35,6 +35,7 @@ let $ignore_domain_ids_after= query_get_value(SHOW SLAVE STATUS, Replicate_Ignor
--echo DO_DOMAIN_IDS (AFTER) : $do_domain_ids_after
--echo IGNORE_DOMAIN_IDS (AFTER) : $ignore_domain_ids_after
SET @saved_dbug = @@GLOBAL.debug_dbug;
SET @@global.debug_dbug="+d,kill_slave_io_before_commit";
connection master;
@@ -379,5 +380,5 @@ connection slave;
--source include/stop_slave.inc
CHANGE MASTER TO DO_DOMAIN_IDS=(), IGNORE_DOMAIN_IDS=();
--source include/start_slave.inc
SET @@GLOBAL.debug_dbug = @saved_dbug;
--source include/rpl_end.inc

View File

@@ -64,7 +64,6 @@ connection master;
#--exec echo "restart" > $MYSQLTEST_VARDIR/tmp/mysqld.1.expect
--source include/wait_until_connected_again.inc
--echo # Master has restarted successfully
set @@global.debug_dbug="-d";
save_master_pos;
--connection slave

View File

@@ -42,7 +42,7 @@ SELECT * FROM t1 ORDER BY a;
# interfere with our DBUG error injection.
--source include/kill_binlog_dump_threads.inc
INSERT INTO t1 VALUES (10);
SET @old_dbug= @@GLOBAL.debug_dbug;
SET @old_debug= @@GLOBAL.debug_dbug;
SET GLOBAL debug_dbug="+d,dummy_disable_default_dbug_output";
SET GLOBAL debug_dbug="+d,gtid_force_reconnect_at_10_1_100";
--save_master_pos

View File

@@ -5,9 +5,7 @@
--source include/master-slave.inc
connection master;
set @old_master_binlog_checksum= @@global.binlog_checksum;
set @old_slave_dbug= @@global.debug_dbug;
# MDEV-4475: Cannot replicate to old server when binlog contains
# empty Gtid_list event
@@ -16,6 +14,7 @@ set @old_slave_dbug= @@global.debug_dbug;
connection slave;
--source include/stop_slave.inc
--echo # Test slave with no capability gets dummy event, which is ignored.
set @old_dbug= @@global.debug_dbug;
SET @@global.debug_dbug='+d,simulate_slave_capability_none';
--source include/start_slave.inc
@@ -52,7 +51,7 @@ let $binlog_file= query_get_value(SHOW SLAVE STATUS, Relay_Log_File, 1);
let $binlog_start= $relaylog_start;
let $binlog_limit=0,10;
--source include/show_relaylog_events.inc
set @@global.debug_dbug= @old_slave_dbug;
set @@global.debug_dbug= @old_dbug;
--echo # Test dummy event is checksummed correctly.
@@ -150,11 +149,10 @@ let $binlog_limit=0,5;
select @@global.log_slave_updates;
select @@global.replicate_annotate_row_events;
set @@global.debug_dbug= @old_slave_dbug;
--echo Clean up.
connection master;
set @@global.binlog_checksum = @old_master_binlog_checksum;
DROP TABLE t1, t2;
sync_slave_with_master;
set @@global.debug_dbug= @old_dbug;
--source include/rpl_end.inc

View File

@@ -334,7 +334,7 @@ INSERT INTO t2 VALUES (1,1), (2,1), (3,1), (4,1), (5,1);
--connection server_2
--source include/sync_with_master_gtid.inc
--source include/stop_slave.inc
SET @old_dbug= @@GLOBAL.debug_dbug;
SET @old_debug= @@GLOBAL.debug_dbug;
SET GLOBAL debug_dbug= '+d,inject_analyze_table_sleep';
--connection server_1

View File

@@ -0,0 +1,19 @@
!include suite/rpl/rpl_1slave_base.cnf
!include include/default_client.cnf
[mysqld.1]
log-slave-updates
gtid-domain-id=1
[mysqld.2]
log-slave-updates
gtid-domain-id=2
[mysqld.3]
log-slave-updates
gtid-domain-id=3
slave_parallel_threads=2
[ENV]
SERVER_MYPORT_3= @mysqld.3.port
SERVER_MYSOCK_3= @mysqld.3.socket

View File

@@ -0,0 +1,165 @@
# MDEV-20821 parallel slave server shutdown hang
#
# Test the bug condition of a parallel slave server shutdown
# hang when the parallel workers were idle.
# The bug reported scenario is extented to cover the multi-sources case as well as
# checking is done for both the idle and busy workers cases.
--source include/have_innodb.inc
--source include/have_binlog_format_mixed.inc
--let $rpl_topology= 1->3
--source include/rpl_init.inc
#
# A. idle workers.
#
--connection server_3
set default_master_connection = '';
--source include/start_slave.inc
set default_master_connection = 'm2';
--replace_result $SERVER_MYPORT_2 SERVER_MYPORT_2
eval change master to master_host='127.0.0.1', master_port=$SERVER_MYPORT_2, master_user='root', master_use_gtid=slave_pos;
--source include/start_slave.inc
select @@global.slave_parallel_workers as two;
# At this point worker threads have no assignement.
# Shutdown must not hang.
--connection server_3
--write_file $MYSQLTEST_VARDIR/tmp/mysqld.3.expect
wait
EOF
--send SHUTDOWN
--reap
--source include/wait_until_disconnected.inc
--connection server_3
--append_file $MYSQLTEST_VARDIR/tmp/mysqld.3.expect
restart
EOF
# No hang is *proved* to occur when this point is reached.
--connection server_3
--enable_reconnect
--source include/wait_until_connected_again.inc
#
# B. resting workers after some busy time
#
--connection server_1
create table t1 (i int primary key) engine=Innodb;
--connection server_2
create table t2 (i int primary key) engine=Innodb;
--connection server_3
set default_master_connection = '';
--source include/start_slave.inc
set default_master_connection = 'm2';
--source include/start_slave.inc
--connection server_2
insert into t2 values (1);
--save_master_pos
--connection server_3
--sync_with_master 0,'m2'
--connection server_1
insert into t1 values (1);
--save_master_pos
--connection server_3
--sync_with_master 0,''
# At this point worker threads have no assignement.
# Shutdown must not hang.
--connection server_3
--write_file $MYSQLTEST_VARDIR/tmp/mysqld.3.expect
wait
EOF
--send SHUTDOWN
--reap
--source include/wait_until_disconnected.inc
--connection server_3
--append_file $MYSQLTEST_VARDIR/tmp/mysqld.3.expect
restart
EOF
# No hang is *proved* to occur when this point is reached.
--connection server_3
--enable_reconnect
--source include/wait_until_connected_again.inc
#
# C. busy workers
#
--connection server_3
set default_master_connection = '';
--source include/start_slave.inc
set default_master_connection = 'm2';
--source include/start_slave.inc
--connect (conn_block_server3, 127.0.0.1, root,, test, $SERVER_MYPORT_3,)
begin;
insert into t1 values (2);
insert into t2 values (2);
--connection server_1
insert into t1 values (2);
--connection server_2
insert into t2 values (2);
# At this point there's a good chance the worker threads are busy.
# SHUTDOWN must proceed without any delay as above.
--connection server_3
--write_file $MYSQLTEST_VARDIR/tmp/mysqld.3.expect
wait
EOF
--send SHUTDOWN
--reap
--source include/wait_until_disconnected.inc
--connection server_3
--append_file $MYSQLTEST_VARDIR/tmp/mysqld.3.expect
restart
EOF
# No hang is *proved* to occur when this point is reached.
--connection server_3
--enable_reconnect
--source include/wait_until_connected_again.inc
# Cleanup
--connection server_3
set default_master_connection = '';
--source include/start_slave.inc
set default_master_connection = 'm2';
--source include/start_slave.inc
--connection server_1
drop table t1;
--connection server_2
drop table t2;
--save_master_pos
# (!) The following block is critical to avoid check-mysqld_3.reject by mtr:
--connection server_3
--sync_with_master 0,'m2'
set default_master_connection = 'm2';
--source include/stop_slave.inc
RESET SLAVE ALL;
set default_master_connection = '';
--source include/rpl_end.inc

View File

@@ -3,10 +3,10 @@
# For details look into extra/rpl_tests/rpl_lower_case_table_names.test
#
-- source include/have_binlog_format_mixed_or_statement.inc
-- source include/master-slave.inc
-- source include/have_innodb.inc
-- source include/not_windows.inc
-- source include/have_binlog_format_mixed_or_statement.inc
-- let $engine=InnoDB
-- source include/rpl_lower_case_table_names.test

View File

@@ -1,55 +1,55 @@
SET @old_debug = @@GLOBAL.debug;
SET @old_debug = @@GLOBAL.debug_dbug;
SET debug_dbug= 'T';
select @@debug;
@@debug
select @@debug_dbug;
@@debug_dbug
T
SET debug_dbug= '+P';
select @@debug;
@@debug
select @@debug_dbug;
@@debug_dbug
P:T
SET debug_dbug= '-P';
select @@debug;
@@debug
select @@debug_dbug;
@@debug_dbug
T
SELECT @@session.debug, @@global.debug;
@@session.debug @@global.debug
SELECT @@session.debug_dbug, @@global.debug_dbug;
@@session.debug_dbug @@global.debug_dbug
T
SET SESSION debug_dbug= '';
SELECT @@session.debug, @@global.debug;
@@session.debug @@global.debug
SELECT @@session.debug_dbug, @@global.debug_dbug;
@@session.debug_dbug @@global.debug_dbug
#
# Bug #52629: memory leak from sys_var_thd_dbug in
# binlog.binlog_write_error
#
SET GLOBAL debug_dbug='d,injecting_fault_writing';
SELECT @@global.debug;
@@global.debug
SELECT @@global.debug_dbug;
@@global.debug_dbug
d,injecting_fault_writing
SET GLOBAL debug_dbug='';
SELECT @@global.debug;
@@global.debug
SELECT @@global.debug_dbug;
@@global.debug_dbug
SET GLOBAL debug_dbug=@old_debug;
#
# Bug #56709: Memory leaks at running the 5.1 test suite
#
SET @old_local_debug = @@debug;
SET @old_local_debug = @@debug_dbug;
SET @@debug_dbug='d,foo';
SELECT @@debug;
@@debug
SELECT @@debug_dbug;
@@debug_dbug
d,foo
SET @@debug_dbug='';
SELECT @@debug;
@@debug
SELECT @@debug_dbug;
@@debug_dbug
SET @@debug_dbug= @old_local_debug;
End of 5.1 tests
#
# Bug#46165 server crash in dbug
#
SET @old_globaldebug = @@global.debug;
SET @old_sessiondebug= @@session.debug;
SET @old_globaldebug = @@global.debug_dbug;
SET @old_sessiondebug= @@session.debug_dbug;
# Test 1 - Bug test case, single connection
SET GLOBAL debug_dbug= '+O,MYSQL_TMP_DIR/bug46165.1.trace';
SET SESSION debug_dbug= '-d:-t:-i';

View File

@@ -1,27 +1,27 @@
--source include/have_debug.inc
SET @old_debug = @@GLOBAL.debug;
SET @old_debug = @@GLOBAL.debug_dbug;
#
# Bug#34678 @@debug variable's incremental mode
# Bug#34678 @@debug_dbug variable's incremental mode
#
SET debug_dbug= 'T';
select @@debug;
select @@debug_dbug;
SET debug_dbug= '+P';
select @@debug;
select @@debug_dbug;
SET debug_dbug= '-P';
select @@debug;
select @@debug_dbug;
#
# Bug#38054: "SET SESSION debug" modifies @@global.debug variable
# Bug#38054: "SET SESSION debug" modifies @@global.debug_dbug variable
#
SELECT @@session.debug, @@global.debug;
SELECT @@session.debug_dbug, @@global.debug_dbug;
SET SESSION debug_dbug= '';
SELECT @@session.debug, @@global.debug;
SELECT @@session.debug_dbug, @@global.debug_dbug;
--echo #
--echo # Bug #52629: memory leak from sys_var_thd_dbug in
@@ -29,9 +29,9 @@ SELECT @@session.debug, @@global.debug;
--echo #
SET GLOBAL debug_dbug='d,injecting_fault_writing';
SELECT @@global.debug;
SELECT @@global.debug_dbug;
SET GLOBAL debug_dbug='';
SELECT @@global.debug;
SELECT @@global.debug_dbug;
SET GLOBAL debug_dbug=@old_debug;
@@ -39,12 +39,12 @@ SET GLOBAL debug_dbug=@old_debug;
--echo # Bug #56709: Memory leaks at running the 5.1 test suite
--echo #
SET @old_local_debug = @@debug;
SET @old_local_debug = @@debug_dbug;
SET @@debug_dbug='d,foo';
SELECT @@debug;
SELECT @@debug_dbug;
SET @@debug_dbug='';
SELECT @@debug;
SELECT @@debug_dbug;
SET @@debug_dbug= @old_local_debug;
@@ -55,8 +55,8 @@ SET @@debug_dbug= @old_local_debug;
--echo # Bug#46165 server crash in dbug
--echo #
SET @old_globaldebug = @@global.debug;
SET @old_sessiondebug= @@session.debug;
SET @old_globaldebug = @@global.debug_dbug;
SET @old_sessiondebug= @@session.debug_dbug;
--echo # Test 1 - Bug test case, single connection
--replace_result $MYSQL_TMP_DIR MYSQL_TMP_DIR

View File

@@ -23,93 +23,95 @@
#
##############################################################################
#
# Based on bb-10.4-release a15234bf4bf98d7833996284c033fc53a981f5d4
# Based on bb-10.4-release ee33c4a6946c4291f103437428e34a405193b270
main.alter_table_trans : MDEV-12084 - timeout
main.analyze_stmt_slow_query_log : MDEV-12237 - Wrong result
main.auth_named_pipe : MDEV-14724 - System error 2
main.auto_increment_ranges_innodb : Include file modified in 10.4.9
main.auto_increment_ranges_myisam : Include file modified in 10.4.9
main.backup_interaction : Modified in 10.4.9
main.binary_to_hex : MDEV-20211 - Wrong result
main.brackets : Modified in 10.4.9
main.compare : Modified in 10.4.9
main.cache_temporal_4265 : Modified in 10.4.12
main.connect : MDEV-17282 - Wrong result
main.connect-abstract : MDEV-20162 - Could not execute 'check-testcase'
main.connect2 : MDEV-13885 - Server crash
main.connect_debug : Modified in 10.4.12
main.count_distinct2 : MDEV-11768 - timeout
main.create : Modified in 10.4.11
main.create_delayed : MDEV-10605 - failed with timeout
main.create_drop_event : MDEV-16271 - Wrong result
main.cte_nonrecursive : Modified in 10.4.9
main.create_or_replace2 : Modified in 10.4.12
main.cte_nonrecursive : Modified in 10.4.12
main.ctype_cp932_binlog_stm : MDEV-20534 - Wrong result
main.ctype_many : Modified in 10.4.9
main.ctype_uca : Include file modified in 10.4.9
main.ctype_uca_innodb : Include file modified in 10.4.9
main.ctype_ucs : MDEV-17681 - Data too long for column
main.ctype_upgrade : MDEV-16945 - Error upon mysql_upgrade
main.ctype_utf16 : MDEV-10675: timeout or extra warnings
main.ctype_utf16le : MDEV-10675: timeout or extra warnings
main.ctype_utf8 : Include file modified in 10.4.9
main.ctype_utf8mb4_innodb : MDEV-17744 - Timeout; MDEV-18567 - ASAN use-after-poison
main.debug_sync : MDEV-10607 - internal error
main.default_session : Modified in 10.4.12
main.delayed : MDEV-20961 - Assertion failure
main.derived_cond_pushdown : MDEV-20532 - Floating point differences
main.delete_use_source : Modified in 10.4.12
main.derived_cond_pushdown : MDEV-20532 - Floating point differences; modified in 10.4.12
main.derived_opt : MDEV-11768 - timeout
main.dirty_close : MDEV-19368 - mysqltest failed but provided no output
main.distinct : MDEV-14194 - Crash
main.drop_bad_db_type : MDEV-15676 - Wrong result; modified in 10.4.9
main.drop_debug : Modified in 10.1.42
main.drop_bad_db_type : MDEV-15676 - Wrong result; modified in 10.4.12
main.dyncol : MDEV-19455 - Extra warning
main.engine_error_in_alter-8453 : Modified in 10.4.12
main.error_simulation : Modified in 10.4.12
main.events_2 : MDEV-13277 - Crash
main.events_bugs : MDEV-12892 - Crash
main.events_bugs : MDEV-12892 - Crash; modified in 10.4.12
main.events_restart : MDEV-12236 - Server shutdown problem
main.events_slowlog : MDEV-12821 - Wrong result
main.flush : MDEV-19368 - mysqltest failed but provided no output
main.flush_ssl : MDEV-21276 - Aria recovery failure
main.func_json : Modified in 10.4.9
main.func_math : MDEV-20966 - Wrong error code; modified in 10.4.9
main.func_misc : Modified in 10.4.9
main.foreign_key : Modified in 10.4.12
main.func_math : MDEV-20966 - Wrong error code; modified in 10.4.12
main.func_misc : Modified in 10.4.12
main.func_regexp_pcre : Modified in 10.4.12
main.func_regexp_pcre_debug : Modified in 10.4.12
main.func_time : Modified in 10.4.12
main.gis : MDEV-13411 - wrong result on P8
main.gis_notembedded : MDEV-21264 - Wrong result with non-default charset
main.group_by : Modified in 10.4.12
main.having_cond_pushdown : Modified in 10.4.12
main.host_cache_size_functionality : MDEV-10606 - sporadic failure on shutdown
main.index_intersect_innodb : MDEV-10643 - failed with timeout
main.index_merge_innodb : MDEV-7142 - Plan mismatch; modified in 10.4.9
main.index_merge_myisam : Modified in 10.4.9
main.information_schema_db : Modified in 10.4.9
main.index_merge_innodb : MDEV-7142 - Plan mismatch
main.innodb_icp : MDEV-20168 - Wrong execution plans
main.innodb_mysql_lock : MDEV-7861 - Wrong result
main.insert_debug : Added in 10.4.12
main.ipv4_and_ipv6 : MDEV-20964 - Wrong result
main.ipv6 : MDEV-20964 - Wrong result
main.join : Modified in 10.1.42
main.join_cache : MDEV-17743 - Bad address from storage engine MyISAM
main.kill : Modified in 10.2.28
main.join : Modified in 10.4.12
main.join_cache : MDEV-17743 - Bad address from storage engine MyISAM; modified in 10.4.12
main.kill-2 : MDEV-13257 - Wrong result
main.kill_processlist-6619 : MDEV-10793 - Wrong result
main.loaddata : MDEV-19368 - mysqltest failed but provided no output
main.locale : MDEV-20521 - Missing warning
main.log_slow : MDEV-13263 - Wrong result
main.log_slow_debug : Modified in 10.4.9
main.log_slow_debug : Modified in 10.4.12
main.log_tables-big : MDEV-13408 - wrong result
main.log_tables_upgrade : MDEV-20962 - Wrong result
main.mdev-504 : MDEV-15171 - warning
main.mdev375 : MDEV-10607 - sporadic "can't connect"
main.mdev6830 : Modified in 10.4.12
main.merge : MDEV-10607 - sporadic "can't connect"
main.merge-big : Modified in 10.4.12
main.merge_debug : Modified in 10.4.12
main.multi_update_debug : MDEV-20136 - Debug sync point wait timed out
main.myisam : Modified in 10.4.9
main.myisam_debug : Modified in 10.4.12
main.mysql : MDEV-20156 - Wrong result
main.mysql_client_test : MDEV-19369 - error: 5888, status: 23, errno: 2; MDEV-19511 - Big endian issue
main.mysql_client_test_comp : MDEV-16641 - Error in exec
main.mysql_client_test_nonblock : CONC-208 - Error on Power; MDEV-15096 - exec failed
main.mysql_cp932 : MDEV-21275 - Wrong result
main.mysql_upgrade : MDEV-20161 - Wrong result; MDEV-20166 - FATAL ERROR: Upgrade failed
main.mysql_upgrade-20228 : Added in 10.4.9
main.mysql_upgrade_no_innodb : MDEV-20537 - Wrong result
main.mysql_upgrade_noengine : MDEV-14355 - Wrong result
main.mysql_upgrade_view : MDEV-20161 - Wrong result
main.mysqladmin : MDEV-20535 - Wrong result
main.mysqlcheck : MDEV-20164 - Wrong result
main.mysqld_option_err : MDEV-21236 - Wrong error
main.mysqld_option_err : MDEV-21236 - Wrong error; MDEV-21571 - Crash on bootstrap
main.mysqldump : MDEV-14800 - Stack smashing detected
main.mysqldump-max : MDEV-21272 - Wrong result
main.mysqlhotcopy_myisam : MDEV-10995 - Hang on debug
@@ -118,74 +120,72 @@ main.mysqlslap : MDEV-11801 - timeout
main.mysqltest : MDEV-13887 - Wrong result
main.old-mode : MDEV-19373 - Wrong result
main.openssl_6975 : MDEV-17184 - Failures with OpenSSL 1.1.1
main.opt_tvc : Modified in 10.4.12
main.order_by : Modified in 10.4.11
main.order_by_innodb : Modified in 10.4.9
main.order_by_optimizer_innodb : MDEV-10683 - Wrong result
main.parser : Modified in 10.4.9
main.partition_debug_sync : MDEV-15669 - Deadlock found when trying to get lock; modified in 10.4.9
main.partition_innodb : MDEV-20169 - Wrong result; modified in 10.4.9
main.partition_debug_sync : MDEV-15669 - Deadlock found when trying to get lock
main.partition_innodb : MDEV-20169 - Wrong result
main.partition_innodb_plugin : MDEV-12901 - Valgrind warnings
main.partition_innodb_semi_consistent : MDEV-19411 - Failed to start mysqld.1
main.partition_mrr_aria : Added in 10.4.11
main.partition_mrr_innodb : Added in 10.4.11
main.partition_mrr_myisam : Added in 10.4.11
main.partition_pruning : Modified in 10.4.11
main.partition_ucs2 : Added in 10.4.9
main.partition_utf8 : Modified in 10.4.9
main.plugin : Include file modified in 10.4.9
main.plugin_auth : MDEV-20957 - Upgrade file was not properly created
main.plugin_auth_qa_2 : MDEV-20165 - Wrong result
main.pool_of_threads : MDEV-18135 - SSL error: key too small
main.processlist : Modified in 10.4.9
main.processlist_notembedded : Added in 10.4.9
main.ps : MDEV-11017 - sporadic wrong Prepared_stmt_count; modified in 10.4.9
main.ps : MDEV-11017 - sporadic wrong Prepared_stmt_count
main.query_cache : MDEV-16180 - Wrong result
main.query_cache_debug : MDEV-15281 - Query cache is disabled
main.range_innodb : Modified in 10.4.12
main.range_interrupted-13751 : Modified in 10.4.12
main.range_vs_index_merge_innodb : MDEV-15283 - Server has gone away
main.rowid_filter_innodb : MDEV-20538 - Wrong result; modified in 10.4.11
main.rowid_filter_innodb : MDEV-20538 - Wrong result; modified in 10.4.12
main.select : MDEV-20532 - Floating point differences
main.select_debug : Modified in 10.4.12
main.select_jcl6 : MDEV-20532 - Floating point differences
main.select_pkeycache : MDEV-20532 - Floating point differences
main.selectivity : Modified in 10.4.11
main.set_statement : MDEV-13183 - Wrong result
main.set_statement_notembedded : MDEV-19414 - Wrong result
main.shm : MDEV-12727 - Mismatch, ERROR 2013
main.show_explain : MDEV-10674 - Wrong result code
main.sp : MDEV-7866 - Mismatch; modified in 10.4.9
main.sp-code : Modified in 10.4.9
main.show_explain : MDEV-10674 - Wrong result code; modified in 10.4.12
main.show_explain_non_select : Modified in 10.4.12
main.show_explain_ps : Modified in 10.4.12
main.slowlog_enospace-10508 : Modified in 10.4.12
main.sp : MDEV-7866 - Mismatch
main.sp-security : MDEV-10607 - sporadic "can't connect"
main.sp_notembedded : MDEV-10607 - internal error
main.ssl : MDEV-17184 - Failures with OpenSSL 1.1.1
main.ssl_7937 : MDEV-20958 - Wrong result
main.ssl_7937 : MDEV-20958 - Wrong result; modified in 10.4.12
main.ssl_8k_key : Modified in 10.4.12
main.ssl_ca : MDEV-10895 - SSL connection error on Power
main.ssl_cipher : MDEV-17184 - Failures with OpenSSL 1.1.1
main.ssl_crl : MDEV-19119 - Wrong error code; modified in 10.4.11
main.ssl_crl_clients : Modified in 10.4.12
main.ssl_system_ca : Added in 10.4.12
main.ssl_timeout : MDEV-11244 - Crash
main.stat_tables : Modified in 10.4.9
main.stat_tables-enospc : Modified in 10.4.12
main.stat_tables_par : MDEV-13266 - Wrong result
main.stat_tables_par_innodb : MDEV-14155 - Wrong rounding
main.statement-expr : Modified in 10.4.9
main.status : MDEV-13255 - Wrong result
main.subselect : MDEV-20551 - Valgrind failure; modified in 10.4.9
main.subselect : MDEV-20551 - Valgrind failure
main.subselect_innodb : MDEV-10614 - Wrong result
main.subselect_notembedded : Modified in 10.4.9
main.subselect_sj : Modified in 10.4.9
main.sum_distinct-big : Modified in 10.4.9
main.table_value_constr : Modified in 10.4.9
main.tc_heuristic_recover : MDEV-14189 - Wrong result
main.tls_version : MDEV-20170 - Unknown SSL error
main.tls_version1 : MDEV-20170 - Unknown SSL error
main.timezone2 : Modified in 10.4.12
main.type_blob : MDEV-15195 - Wrong result
main.type_date : Modified in 10.1.42
main.type_datetime : Modified in 10.1.42
main.type_datetime : Modified in 10.4.12
main.type_datetime_hires : MDEV-10687 - Timeout
main.type_float : MDEV-20532 - Floating point differences
main.type_int : Modified in 10.1.42
main.type_newdecimal : MDEV-20532 - Floating point differences; modified in 10.4.9
main.type_int : Modified in 10.4.12
main.type_newdecimal : MDEV-20532 - Floating point differences
main.type_ranges : MDEV-20532 - Floating point differences
main.uniques_crash-7912 : MDEV-21210 - Excessive memory consumption
main.type_time : Modified in 10.4.12
main.union_crash-714 : Modified in 10.4.12
main.userstat : MDEV-12904 - SSL errors
main.wait_timeout : MDEV-19023 - Lost connection to MySQL server during query
main.warnings_debug : Modified in 10.4.12
main.win : Modified in 10.4.12
main.xa : MDEV-11769 - lock wait timeout
#-----------------------------------------------------------------------
@@ -202,44 +202,47 @@ archive-test_sql_discovery.discover : MDEV-16817 - Table marked as crashed
#-----------------------------------------------------------------------
binlog.backup : Added in 10.4.9
binlog.binlog_commit_wait : MDEV-10150 - Mismatch
binlog.binlog_index : Include file modified in 10.2.31
binlog.binlog_invalid_read_in_rotate : Added in 10.4.12
binlog.binlog_ioerr : MDEV-20159 - Assertion failure; include file modified in 10.2.31
binlog.binlog_killed : MDEV-12925 - Wrong result
binlog.binlog_max_extension : MDEV-19762 - Crash on shutdown
binlog.binlog_mysqlbinlog_row : Modified in 10.4.9
binlog.binlog_mysqlbinlog_row_innodb : MDEV-20530 - Binary files differ
binlog.binlog_mysqlbinlog_row_myisam : MDEV-20530 - Binary files differ
binlog.binlog_parallel_replication_marks_row : Include file modified in 10.4.12
binlog.binlog_parallel_replication_marks_stm_mix : Include file modified in 10.4.12
binlog.binlog_row_binlog : MDEV-20213 - Server crash
binlog.binlog_row_drop_tmp_tbl : Include file modified in 10.1.42
binlog.binlog_show_binlog_event_random_pos : Added in 10.4.12
binlog.binlog_stm_binlog : MDEV-20412 - Wrong result
binlog.binlog_stm_drop_tmp_tbl : Include file modified in 10.1.42
binlog.binlog_write_error : Include file Include file modified in 10.2.31
binlog.binlog_xa_recover : MDEV-8517 - Extra checkpoint
binlog.flashback-largebinlog : MDEV-19764 - Out of memory
binlog.load_data_stm_view : MDEV-16948 - Wrong result
binlog.read_only : Added in 10.4.9
binlog.read_only_statement : Added in 10.4.9
binlog.show_concurrent_rotate : MDEV-20215 - Wrong result
#-----------------------------------------------------------------------
binlog_encryption.binlog_incident : MDEV-20213 - Server crash
binlog_encryption.binlog_mdev_20574_old_binlog : Added in 10.4.9
binlog_encryption.binlog_index : Include file modified in 10.4.12
binlog_encryption.binlog_ioerr : Include file modified in 10.4.12
binlog_encryption.binlog_write_error : Include file Include file modified in 10.4.12
binlog_encryption.binlog_xa_recover : MDEV-12908 - Extra checkpoint
binlog_encryption.encrypted_master : MDEV-14201 - Extra warnings
binlog_encryption.encrypted_master_switch_to_unencrypted : MDEV-14190 - Can't init tc log
binlog_encryption.encrypted_slave : MDEV-18135 - SSL error: key too small
binlog_encryption.encryption_combo : MDEV-14199 - Table is marked as crashed
binlog_encryption.multisource : MDEV-20213 - Server crash
binlog_encryption.mysqlbinlog : Modified in 10.4.9
binlog_encryption.rpl_binlog_errors : MDEV-12742 - Crash; include file modified in 10.4.9
binlog_encryption.rpl_checksum : MDEV-16951 - Wrong result
binlog_encryption.rpl_corruption : MDEV-20159 - Assertion failure; MDEV-20953 - Wrong error code; include file modified in 10.4.11
binlog_encryption.multisource : MDEV-20213 - Server crash; MDEV-21289 - Wrong error code
binlog_encryption.rpl_binlog_errors : MDEV-12742 - Crash
binlog_encryption.rpl_checksum : MDEV-16951 - Wrong result; include file modified in 10.4.12
binlog_encryption.rpl_corruption : MDEV-20159 - Assertion failure; MDEV-20953 - Wrong error code; include file modified in 10.4.12
binlog_encryption.rpl_gtid_basic : MDEV-16947 - Server failed to start
binlog_encryption.rpl_init_slave_errors : MDEV-20213 - Server crash
binlog_encryption.rpl_incident : Include file modified in 10.4.12
binlog_encryption.rpl_init_slave_errors : MDEV-20213 - Server crash; include file modified in 10.4.12
binlog_encryption.rpl_loadfile : MDEV-16645 - Timeout in include
binlog_encryption.rpl_mixed_binlog_max_cache_size : MDEV-20956 - Incorrect checksum for freed object
binlog_encryption.rpl_parallel : MDEV-10653 - Timeout in include
binlog_encryption.rpl_parallel_ignored_errors : Added in 10.4.9
binlog_encryption.rpl_parallel : MDEV-10653 - Timeout in include; include file modified in 10.4.12
binlog_encryption.rpl_parallel_ignored_errors : Include file modified in 10.4.12
binlog_encryption.rpl_relayrotate : MDEV-15194 - Timeout
binlog_encryption.rpl_semi_sync : MDEV-11673 - Valgrind
binlog_encryption.rpl_skip_replication : MDEV-13571 - Unexpected warning; MDEV-20573 - Wrong result
@@ -252,39 +255,36 @@ binlog_encryption.rpl_typeconv : MDEV-14362 - Lost c
#-----------------------------------------------------------------------
compat/oracle.plugin : Include file modified in 10.4.9
compat/oracle.ps : Modified in 10.4.9
compat/oracle.statement-expr : Modified in 10.4.9
compat/oracle.sp-goto : Modified in 10.4.12
compat/oracle.sp-goto-debug : Added in 10.4.12
#-----------------------------------------------------------------------
connect.alter : MDEV-18135 - SSL error: key too small
connect.drop-open-error : MDEV-18135 - SSL error: key too small
connect.grant : Modified in 10.4.9
connect.grant2 : Modified in 10.4.9
connect.ini_grant : Modified in 10.4.9
connect.grant : Modified in 10.1.44
connect.grant2 : Modified in 10.1.44
connect.ini_grant : Modified in 10.1.44
connect.json : MDEV-18135 - SSL error: key too small
connect.mysql_grant : Modified in 10.4.9
connect.mysql_grant : Modified in 10.1.44
connect.part_file : MDEV-18135 - SSL error: key too small
connect.part_table : MDEV-18135 - SSL error: key too small
connect.pivot : MDEV-14803 - Failed to discover table
connect.secure_file_priv : MDEV-18135 - SSL error: key too small
connect.vcol : MDEV-12374 - Fails on Windows
connect.xml2_grant : Include file modified in 10.4.9
connect.xml_grant : Include file modified in 10.4.9
connect.xml2_grant : Include file modified in 10.1.44
connect.xml_grant : Include file modified in 10.1.44
connect.zip : MDEV-13884 - Wrong result
#-----------------------------------------------------------------------
encryption.corrupted_during_recovery : MDEV-20159 - Assertion failure
encryption.create_or_replace : MDEV-12694 - Timeout; MDEV-16115 - Trying to access tablespace
encryption.create_or_replace : MDEV-16115 - Trying to access tablespace
encryption.debug_key_management : MDEV-13841 - Timeout
encryption.encrypt_and_grep : MDEV-13765 - Wrong result
encryption.innochecksum : MDEV-13644 - Assertion failure
encryption.innodb-bad-key-change : Combinations added in 10.4.9
encryption.innodb-bad-key-change2 : MDEV-19118 - Can't connect to local MySQL server through socket; combinations added in 10.4.9
encryption.innodb-bad-key-change3 : Combinations added in 10.4.9
encryption.innodb-bad-key-change4 : Modified in 10.4.9
encryption.innodb-bad-key-change2 : MDEV-19118 - Can't connect to local MySQL server through socket
encryption.innodb-checksum-algorithm : MDEV-20213 - Server crash
encryption.innodb-compressed-blob : MDEV-14728 - Unable to get certificate
encryption.innodb-discard-import : MDEV-19113 - Timeout
encryption.innodb-encryption-alter : MDEV-13566 - Lock wait timeout
@@ -294,7 +294,7 @@ encryption.innodb-missing-key : MDEV-14728 - SSL error
encryption.innodb-page_encryption : MDEV-10641 - mutex problem
encryption.innodb-page_encryption_log_encryption : MDEV-17339 - Crash on restart
encryption.innodb-read-only : MDEV-16563 - Crash on startup
encryption.innodb-redo-badkey : MDEV-20839 - Extra warnings; re-enabled in 10.4.9; modified in 10.4.9
encryption.innodb-redo-badkey : Modified in 10.4.12
encryption.innodb-redo-nokeys : MDEV-20159 - Assertion failure
encryption.innodb-remove-encryption : MDEV-16493 - Timeout in wait condition
encryption.innodb-spatial-index : MDEV-13746 - Wrong result
@@ -306,6 +306,7 @@ encryption.innodb_encryption : MDEV-15675 - Timeout
encryption.innodb_encryption-page-compression : MDEV-12630 - crash or assertion failure
encryption.innodb_encryption_discard_import : MDEV-16116 - Wrong result
encryption.innodb_encryption_filekeys : MDEV-15673 - Timeout
encryption.innodb_encryption_is : MDEV-12898 - Server hang on startup
encryption.innodb_encryption_row_compressed : MDEV-16113 - Crash
encryption.innodb_encryption_tables : MDEV-17339 - Crash on restart
encryption.innodb_first_page : MDEV-10689 - Crash
@@ -334,11 +335,10 @@ federated.federated_innodb : MDEV-10617 - Wrong checksum
federated.federated_partition : MDEV-10417 - Fails on Mips
federated.federated_transactions : MDEV-10617 - Wrong checksum
federated.federatedx : MDEV-10617 - Wrong checksum; modified in 10.4.11
federated.federatedx_versioning : Modified in 10.4.9
#-----------------------------------------------------------------------
funcs_1.is_basics_mixed : Modified in 10.4.9
funcs_1.is_check_constraints : Modified in 10.4.12
funcs_1.memory_views : MDEV-11773 - timeout
funcs_1.processlist_val_no_prot : MDEV-11223 - Wrong result
funcs_1.processlist_val_ps : MDEV-12175 - Wrong plan
@@ -365,34 +365,33 @@ galera_3nodes.* : Suite is not stable yet
gcol.gcol_rollback : MDEV-16954 - Unknown storage engine 'InnoDB'
gcol.innodb_virtual_basic : MDEV-16950 - Failing assertion
gcol.innodb_virtual_debug : MDEV-19114 - Assertion failure
gcol.innodb_virtual_debug_purge : MDEV-16952 - Wrong result; modified in 10.4.9
gcol.innodb_virtual_debug_purge : MDEV-16952 - Wrong result; modified in 10.4.12
gcol.innodb_virtual_fk_restart : MDEV-17466 - Assertion failure
#-----------------------------------------------------------------------
innodb.101_compatibility : MDEV-13891 - Wrong result
innodb.alter_algorithm : Modified in 10.4.9
innodb.alter_copy : MDEV-16181 - Assertion failure
innodb.alter_crash : MDEV-16944 - The process cannot access the file
innodb.alter_large_dml : MDEV-20148 - Debug sync point wait timed out
innodb.alter_not_null_debug : Modified in 10.4.12
innodb.autoinc_persist : MDEV-15282 - Assertion failure
innodb.binlog_consistent : MDEV-10618 - Server fails to start
innodb.blob-crash : MDEV-19298 - Assertion failure
innodb.blob-update-debug : Modified in 10.4.12
innodb.doublewrite : MDEV-12905 - Server crash
innodb.full_crc32_import : Modified in 10.4.9
innodb.full_crc32_import : Modified in 10.4.12
innodb.group_commit_crash : MDEV-14191 - InnoDB registration failed
innodb.group_commit_crash_no_optimize_thread : MDEV-13830 - Assertion failure
innodb.ibuf_not_empty : MDEV-19021 - Wrong result; modified in 10.4.11
innodb.information_schema_grants : Added in 10.4.9
innodb.innodb-32k-crash : MDEV-20194 - Extra warnings; modified in 10.4.11
innodb.innodb-64k-crash : MDEV-13872 - Failure and crash on startup; modified in 10.4.11
innodb.innodb-alter-debug : MDEV-13182 - InnoDB: adjusting FSP_SPACE_FLAGS
innodb.innodb-alter-nullable : Modified in 10.4.9
innodb.innodb-alter-table : MDEV-10619 - Testcase timeout
innodb.innodb-autoinc : Modified in 10.4.9
innodb.innodb-bigblob : MDEV-18655 - ASAN unknown crash
innodb.innodb-blob : MDEV-12053 - Client crash
innodb.innodb-change-buffer-recovery : MDEV-19115 - Lost connection to MySQL server during query; modified in 10.4.9
innodb.innodb-change-buffer-recovery : MDEV-19115 - Lost connection to MySQL server during query
innodb.innodb-dict : MDEV-20159 - Assertion failure
innodb.innodb-fk : MDEV-13832 - Assertion failure on shutdown
innodb.innodb-get-fk : MDEV-13276 - Server crash
innodb.innodb-index-online : MDEV-14809 - Cannot save statistics
@@ -402,21 +401,26 @@ innodb.innodb-page_compression_lzma : MDEV-14353 - Wrong result
innodb.innodb-page_compression_snappy : MDEV-13644 - Assertion failure
innodb.innodb-page_compression_tables : MDEV-13644 - Assertion failure
innodb.innodb-page_compression_zip : MDEV-10641 - mutex problem
innodb.innodb-replace-debug : Modified in 10.4.12
innodb.innodb-stats-initialize-failure : Modified in 10.4.12
innodb.innodb-table-online : MDEV-13894 - Wrong result
innodb.innodb-virtual-columns-debug : Modified in 10.4.9
innodb.innodb-timeout : MDEV-20159 - Assertion failure
innodb.innodb-wl5522 : MDEV-13644 - Assertion failure
innodb.innodb-wl5522-debug : MDEV-14200 - Wrong errno
innodb.innodb_buffer_pool_dump_pct : MDEV-20139 - Timeout in wait_condition.inc
innodb.innodb_buffer_pool_resize : MDEV-16964 - Assertion failure
innodb.innodb_buffer_pool_resize_with_chunks : MDEV-16964 - Assertion failure
innodb.innodb_bug11754376 : Modified in 10.4.12
innodb.innodb_bug14147491 : MDEV-11808 - Index is corrupt
innodb.innodb_bug30113362 : Added in 10.4.12
innodb.innodb_bug30423 : MDEV-7311 - Wrong result
innodb.innodb_bug47167 : MDEV-20524 - Table 'user' is marked as crashed and should be repaired
innodb.innodb_bug48024 : MDEV-14352 - Assertion failure
innodb.innodb_bug56947 : Modified in 10.4.12
innodb.innodb_bug59641 : MDEV-13830 - Assertion failure
innodb.innodb_bulk_create_index_replication : MDEV-15273 - Slave failed to start
innodb.innodb_corrupt_bit : Modified in 10.4.12
innodb.innodb_defrag_stats_many_tables : MDEV-14198 - Table is full
innodb.innodb_force_recovery : Modified in 10.4.9
innodb.innodb_information_schema : MDEV-8851 - Wrong result
innodb.innodb_max_recordsize_32k : MDEV-14801 - Operation failed; modified in 10.4.11
innodb.innodb_max_recordsize_64k : MDEV-15203 - Wrong result; modified in 10.4.11
@@ -425,35 +429,37 @@ innodb.innodb_mysql : MDEV-19873 - Wrong result
innodb.innodb_prefix_index_restart_server : MDEV-20213 - Server crash
innodb.innodb_simulate_comp_failures_small : MDEV-20526 - ASAN use-after-poison
innodb.innodb_stats : MDEV-10682 - wrong result
innodb.innodb_stats_persistent : MDEV-17745 - Wrong result; modified in 10.4.9
innodb.innodb_stats_persistent : MDEV-17745 - Wrong result; MDEV-21567 - Wrong result in execution plan
innodb.innodb_stats_persistent_debug : MDEV-14801 - Operation failed
innodb.innodb_sys_semaphore_waits : MDEV-10331 - Semaphore wait
innodb.innodb_sys_semaphore_waits : MDEV-10331 - Semaphore wait; modified in 10.4.12
innodb.innodb_wl6326 : Added in 10.4.12
innodb.innodb_wl6326_big : Added in 10.4.12
innodb.innodb_zip_innochecksum2 : MDEV-13882 - Warning: difficult to find free blocks
innodb.instant_alter : Modified in 10.4.11
innodb.instant_alter : Modified in 10.4.12
innodb.instant_alter_bugs : Modified in 10.4.11
innodb.instant_alter_debug : Modified in 10.4.11
innodb.instant_alter_extend : MDEV-20963 - Binary files differ
innodb.instant_alter_index_rename : Modified in 10.4.9
innodb.instant_alter_limit : Modified in 10.4.11
innodb.leaf_page_corrupted_during_recovery : MDEV-21572 - Server crash
innodb.log_corruption : MDEV-13251 - Wrong result
innodb.log_data_file_size : MDEV-14204 - Server failed to start; MDEV-20648 - Assertion failure
innodb.log_file : MDEV-20159 - Assertion failure
innodb.log_file_name : MDEV-14193 - Exception
innodb.log_file_size : MDEV-15668 - Not found pattern
innodb.monitor : MDEV-16179 - Wrong result
innodb.page_id_innochecksum : MDEV-20159 - Assertion failure
innodb.purge_secondary : MDEV-15681 - Wrong result
innodb.purge_secondary_mdev-16222 : MDEV-20528 - Debug sync point wait timed out
innodb.purge_thread_shutdown : MDEV-13792 - Wrong result
innodb.read_only_recovery : MDEV-13886 - Server crash
innodb.recovery_shutdown : MDEV-15671 - Checksum mismatch in datafile
innodb.redo_log_during_checkpoint : Modified in 10.4.12
innodb.row_format_redundant : MDEV-15192 - Trying to access missing tablespace
innodb.row_size_error_log_warnings_3 : Added in 10.4.11
innodb.stat_tables : Added in 10.4.9
innodb.row_size_error_log_warnings_3 : Modified in 10.4.12
innodb.table_definition_cache_debug : MDEV-14206 - Extra warning
innodb.table_flags : MDEV-13572 - Wrong result; MDEV-19374 - Server failed to start
innodb.temporary_table : MDEV-13265 - Wrong result
innodb.temporary_table_optimization : Modified in 10.4.9
innodb.trx_id_future : Modified in 10.1.42
innodb.truncate_inject : Modified in 10.2.31
innodb.undo_log : Modified in 10.4.11
innodb.undo_truncate : MDEV-17340 - Server hung; MDEV-20840 - Sporadic timeout
innodb.undo_truncate_recover : MDEV-17679 - Server has gone away; MDEV-19200 - Shutdown fails
@@ -462,13 +468,13 @@ innodb.xa_recovery : MDEV-15279 - mysqld got exception
#-----------------------------------------------------------------------
innodb_fts.concurrent_insert : MDEV-21223 - Server crash; modified in 10.4.9
innodb_fts.crash_recovery : Modified in 10.4.9
innodb_fts.concurrent_insert : Modified in 10.4.12
innodb_fts.innodb_fts_misc : Modified in 10.4.11
innodb_fts.innodb_fts_misc_debug : MDEV-14156 - Unexpected warning
innodb_fts.innodb_fts_plugin : MDEV-13888 - Errors in server log
innodb_fts.innodb_fts_stopword_charset : MDEV-13259 - Table crashed
innodb_fts.sync : MDEV-14808 - Wrong result
innodb_fts.sync_block : Modified in 10.4.12
innodb_fts.sync_ddl : MDEV-18654 - Assertion failure
#-----------------------------------------------------------------------
@@ -477,8 +483,11 @@ innodb_gis.alter_spatial_index : MDEV-13745 - Server crash
innodb_gis.innodb_gis_rtree : MDEV-20213 - Server crash
innodb_gis.rtree_compress2 : MDEV-16269 - Wrong result
innodb_gis.rtree_concurrent_srch : MDEV-15284 - Wrong result with embedded
innodb_gis.rtree_debug : Modified in 10.4.12
innodb_gis.rtree_purge : MDEV-15275 - Timeout
innodb_gis.rtree_recovery : MDEV-15274 - Error on check
innodb_gis.rtree_rollback1 : Modified in 10.4.12
innodb_gis.rtree_rollback2 : Modified in 10.4.12
innodb_gis.rtree_split : MDEV-14208 - Too many arguments
innodb_gis.rtree_undo : MDEV-14456 - Timeout in include file
innodb_gis.types : MDEV-15679 - Table is marked as crashed
@@ -486,7 +495,7 @@ innodb_gis.types : MDEV-15679 - Table is marked as crashed
#-----------------------------------------------------------------------
innodb_zip.bug53591 : Modified in 10.4.11
innodb_zip.cmp_per_index : MDEV-14490 - Table is marked as crashed
innodb_zip.cmp_per_index : MDEV-14490 - Table is marked as crashed; modified in 10.4.12
innodb_zip.innochecksum : MDEV-14486 - Server failed to shut down
innodb_zip.innochecksum_3 : MDEV-13279 - Extra warnings
innodb_zip.prefix_index_liftedlimit : Modified in 10.4.11
@@ -498,9 +507,9 @@ innodb_zip.wl6501_scale_1 : MDEV-13254 - Timeout, MDEV-14104 - Error 1
#-----------------------------------------------------------------------
maria.aria_pack_mdev14183 : Added in 10.4.12
maria.insert_select : MDEV-12757 - Timeout
maria.insert_select-7314 : MDEV-16492 - Timeout
maria.lock : Modified in 10.4.9
maria.maria : MDEV-14430 - Extra warning
maria.maria-no-logging : MDEV-20196 - Crash on shutdown or server can't start
@@ -509,17 +518,15 @@ maria.maria-no-logging : MDEV-20196 - Crash on shutdown or server can't start
mariabackup.absolute_ibdata_paths : MDEV-16571 - Wrong result
mariabackup.apply-log-only : MDEV-20135 - Timeout
mariabackup.data_directory : MDEV-15270 - Error on exec
mariabackup.encrypted_page_corruption : Modified in 10.4.9
mariabackup.extra_lsndir_stream : Added in 10.4.9
mariabackup.full_backup : MDEV-16571 - Wrong result
mariabackup.huge_lsn : MDEV-15662 - Sequence number is in the future; MDEV-18569 - Table doesn't exist
mariabackup.incremental_backup : MDEV-21222 - Memory allocation failure; modified in 10.4.11
mariabackup.incremental_encrypted : MDEV-15667 - timeout
mariabackup.incremental_rocksdb : MDEV-20954 - Cannot access the file
mariabackup.innodb_redo_log_overwrite : Added in 10.4.12
mariabackup.log_checksum_mismatch : MDEV-16571 - Wrong result
mariabackup.mdev-14447 : MDEV-15201 - Timeout
mariabackup.mdev-18438 : Added in 10.4.9
mariabackup.partial : MDEV-19298 - Assertion failure; modified in 10.4.9
mariabackup.partial : MDEV-19298 - Assertion failure
mariabackup.partial_exclude : MDEV-15270 - Error on exec
mariabackup.unencrypted_page_compressed : MDEV-18653 - Wrong error
mariabackup.xb_compressed_encrypted : MDEV-14812 - Segmentation fault
@@ -546,8 +553,9 @@ mroonga/wrapper.repair_table_no_index_file : MDEV-14807 - Wrong error message
#-----------------------------------------------------------------------
multi_source.gtid : MDEV-14202 - Crash
multi_source.info_logs : MDEV-12629 - Valgrind, MDEV-10042 - wrong result
multi_source.info_logs : MDEV-12629 - Valgrind, MDEV-10042 - wrong result; MDEV-21290 - Wrong result
multi_source.load_data : MDEV-21235 - Slave crash
multi_source.mdev-8874 : MDEV-19415 - AddressSanitizer: heap-use-after-free
multi_source.mdev-9544 : MDEV-19415 - AddressSanitizer: heap-use-after-free
multi_source.multisource : MDEV-10417 - Fails on Mips
multi_source.reset_slave : MDEV-10690 - Wrong result
@@ -556,6 +564,17 @@ multi_source.status_vars : MDEV-4632 - failed while waiting for Slave_received_h
#-----------------------------------------------------------------------
optimizer_unfixed_bugs.bug36981 : Modified in 10.4.12
optimizer_unfixed_bugs.bug40992 : Modified in 10.4.12
optimizer_unfixed_bugs.bug41996 : Modified in 10.4.12
optimizer_unfixed_bugs.bug42991 : Modified in 10.4.12
optimizer_unfixed_bugs.bug43249 : Modified in 10.4.12
optimizer_unfixed_bugs.bug43360 : Modified in 10.4.12
optimizer_unfixed_bugs.bug43448 : Modified in 10.4.12
optimizer_unfixed_bugs.bug43617 : Modified in 10.4.12
#-----------------------------------------------------------------------
parts.partition_alter1_1_2_innodb : MDEV-18655 - ASAN unknown crash
parts.partition_alter1_1_innodb : MDEV-18655 - ASAN unknown crash
parts.partition_alter1_2_innodb : MDEV-18655 - ASAN unknown crash
@@ -563,13 +582,11 @@ parts.partition_alter2_2_maria : MDEV-14364 - Lost connection to MySQL s
parts.partition_auto_increment_archive : MDEV-16491 - Marked as crashed and should be repaired
parts.partition_auto_increment_maria : MDEV-14430 - Extra warning
parts.partition_basic_innodb : MDEV-20214 - ASAN error
parts.partition_debug : Modified in 10.4.9
parts.partition_debug_innodb : MDEV-10891 - Can't create UNIX socket; MDEV-15095 - Table doesn't exist; modified in 10.4.9
parts.partition_debug_myisam : Modified in 10.4.9
parts.partition_debug : Modified in 10.4.12
parts.partition_debug_innodb : MDEV-10891 - Can't create UNIX socket; MDEV-15095 - Table doesn't exist; modified in 10.4.12
parts.partition_exch_qa_10 : MDEV-11765 - wrong result
parts.partition_innodb_status_file : MDEV-12901 - Valgrind
parts.partition_special_innodb : MDEV-16942 - Timeout
parts.reorganize_partition_innodb : Added in 10.4.9
#-----------------------------------------------------------------------
@@ -582,14 +599,47 @@ perfschema.dml_file_instances : MDEV-15179 - Wrong result
perfschema.dml_threads : MDEV-17746 - Wrong errno
perfschema.func_file_io : MDEV-5708 - fails for s390x
perfschema.func_mutex : MDEV-5708 - fails for s390x
perfschema.hostcache_ipv4_addrinfo_again_allow : MDEV-12759 - Crash
perfschema.hostcache_ipv6_addrinfo_again_allow : MDEV-12752 - Crash
perfschema.hostcache_ipv6_addrinfo_bad_allow : MDEV-13260 - Crash
perfschema.hostcache_ipv6_ssl : MDEV-10696 - Crash
perfschema.hostcache_ipv4_addrinfo_again_allow : MDEV-12759 - Crash; modified in 10.4.12
perfschema.hostcache_ipv4_addrinfo_again_deny : Modified in 10.4.12
perfschema.hostcache_ipv4_addrinfo_bad_allow : Modified in 10.4.12
perfschema.hostcache_ipv4_addrinfo_bad_deny : Modified in 10.4.12
perfschema.hostcache_ipv4_addrinfo_good_allow : Modified in 10.4.12
perfschema.hostcache_ipv4_addrinfo_good_deny : Modified in 10.4.12
perfschema.hostcache_ipv4_addrinfo_noname_allow : Modified in 10.4.12
perfschema.hostcache_ipv4_addrinfo_noname_deny : Modified in 10.4.12
perfschema.hostcache_ipv4_auth_plugin : Modified in 10.4.12
perfschema.hostcache_ipv4_blocked : Modified in 10.4.12
perfschema.hostcache_ipv4_format : Modified in 10.4.12
perfschema.hostcache_ipv4_max_con : Modified in 10.4.12
perfschema.hostcache_ipv4_nameinfo_again_allow : Modified in 10.4.12
perfschema.hostcache_ipv4_nameinfo_again_deny : Modified in 10.4.12
perfschema.hostcache_ipv4_nameinfo_noname_allow : Modified in 10.4.12
perfschema.hostcache_ipv4_nameinfo_noname_deny : Modified in 10.4.12
perfschema.hostcache_ipv4_passwd : Modified in 10.4.12
perfschema.hostcache_ipv4_ssl : Modified in 10.4.12
perfschema.hostcache_ipv6_addrinfo_again_allow : MDEV-12752 - Crash; modified in 10.4.12
perfschema.hostcache_ipv6_addrinfo_again_deny : Modified in 10.4.12
perfschema.hostcache_ipv6_addrinfo_bad_allow : MDEV-13260 - Crash; modified in 10.4.12
perfschema.hostcache_ipv6_addrinfo_bad_deny : Modified in 10.4.12
perfschema.hostcache_ipv6_addrinfo_good_allow : Modified in 10.4.12
perfschema.hostcache_ipv6_addrinfo_good_deny : Modified in 10.4.12
perfschema.hostcache_ipv6_addrinfo_noname_allow : Modified in 10.4.12
perfschema.hostcache_ipv6_addrinfo_noname_deny : Modified in 10.4.12
perfschema.hostcache_ipv6_auth_plugin : Modified in 10.4.12
perfschema.hostcache_ipv6_blocked : Modified in 10.4.12
perfschema.hostcache_ipv6_max_con : Modified in 10.4.12
perfschema.hostcache_ipv6_nameinfo_again_allow : Modified in 10.4.12
perfschema.hostcache_ipv6_nameinfo_again_deny : Modified in 10.4.12
perfschema.hostcache_ipv6_nameinfo_noname_allow : Modified in 10.4.12
perfschema.hostcache_ipv6_nameinfo_noname_deny : Modified in 10.4.12
perfschema.hostcache_ipv6_passwd : Modified in 10.4.12
perfschema.hostcache_ipv6_ssl : MDEV-10696 - Crash; modified in 10.4.12
perfschema.hostcache_peer_addr : MDEV-21462 - Test condition timeout; modified in 10.4.12
perfschema.misc : Modified in 10.4.11
perfschema.pfs_upgrade_event : MDEV-20957 - Wrong result
perfschema.pfs_upgrade_func : MDEV-20957 - Upgrade file was not properly created
perfschema.pfs_upgrade_proc : MDEV-20533 - Upgrade file was not properly created
perfschema.pfs_upgrade_table : MDEV-20533 - Exec failed
perfschema.pfs_upgrade_view : MDEV-20533 - Upgrade file was not properly created
perfschema.privilege_table_io : MDEV-13184 - Extra lines
perfschema.relaylog : MDEV-18134 - Wrong result
@@ -601,6 +651,7 @@ perfschema.stage_mdl_function : MDEV-20157 - Wrong result
perfschema.stage_mdl_global : MDEV-11803 - wrong result on slow builders
perfschema.stage_mdl_procedure : MDEV-11545 - Missing row
perfschema.stage_mdl_table : MDEV-12638 - Wrong result
perfschema.start_server_innodb : MDEV-21573 - Wrong result
perfschema.start_server_low_digest : MDEV-21221 - Wrong result
perfschema.threads_mysql : MDEV-10677 - Wrong result
@@ -611,11 +662,10 @@ perfschema_stress.* : MDEV-10996 - Not maintained
#-----------------------------------------------------------------------
period.delete : Modified in 10.4.11
period.versioning : MDEV-20159 - Assertion failure; include file modified in 10.4.9
period.versioning : MDEV-20159 - Assertion failure
#-----------------------------------------------------------------------
plugins.feedback_plugin_load : Modified in 10.4.9
plugins.feedback_plugin_send : MDEV-7932, MDEV-11118 - Connection problems and such
plugins.multiauth : MDEV-20163 - Plugin could not be loaded
plugins.processlist : MDEV-16574 - Wrong result
@@ -635,7 +685,6 @@ rocksdb.drop_index_inplace : MDEV-14162 - Crash on shutdown
rocksdb.drop_table : MDEV-14308 - Timeout
rocksdb.drop_table3 : MDEV-16949 - Server crash
rocksdb.dup_key_update : MDEV-17284 - Wrong result
rocksdb.index_merge_rocksdb2 : Include file modified in 10.4.9
rocksdb.locking_issues : MDEV-14464 - Wrong result
rocksdb.mariadb_ignore_dirs : MDEV-16639 - Server crash
rocksdb.mariadb_port_fixes : MDEV-16387 - Wrong plan
@@ -664,47 +713,55 @@ roles.create_and_grant_role : MDEV-11772 - wrong result
#-----------------------------------------------------------------------
rpl.circular_serverid0 : MDEV-19372 - ASAN heap-use-after-free
rpl.circular_serverid0 : MDEV-19372 - ASAN heap-use-after-free; modified in 10.4.12
rpl.create_or_replace2 : MDEV-19412 - Lost connection to MySQL server
rpl.create_or_replace_mix : MDEV-20523 - Wrong result
rpl.create_or_replace_statement : MDEV-20523 - Wrong result
rpl.create_select : MDEV-14121 - Assertion failure
rpl.kill_race_condition : Modified in 10.4.12
rpl.last_insert_id : MDEV-10625 - warnings in error log
rpl.mdev_17588 : Modified in 10.1.42
rpl.rpl_000011 : Modified in 10.4.9
rpl.rpl_auto_increment : MDEV-10417 - Fails on Mips
rpl.rpl_auto_increment_bug45679 : MDEV-10417 - Fails on Mips
rpl.rpl_auto_increment_update_failure : MDEV-10625 - warnings in error log
rpl.rpl_binlog_errors : MDEV-12742 - Crash
rpl.rpl_binlog_grant : MDEV-21274 - Lost connection at handshake
rpl.rpl_binlog_index : MDEV-9501 - Failed registering on master
rpl.rpl_binlog_rollback_cleanup : Added in 10.4.12
rpl.rpl_bug33931 : Modified in 10.4.12
rpl.rpl_bug41902 : Modified in 10.4.12
rpl.rpl_cant_read_event_incident : MDEV-20960 - Abort on shutdown
rpl.rpl_checksum : Include file modified in 10.2.31
rpl.rpl_circular_for_4_hosts : MDEV-20536 - Server crash
rpl.rpl_colSize : MDEV-16112 - Server crash
rpl.rpl_corruption : MDEV-20527 - Slave stopped with wrong error code
rpl.rpl_create_or_replace_fail : Added in 10.1.42
rpl.rpl_ctype_latin1 : MDEV-14813 - Wrong result on Mac
rpl.rpl_ddl : MDEV-10417 - Fails on Mips
rpl.rpl_domain_id_filter : MDEV-20213 - Server crash
rpl.rpl_domain_id_filter_io_crash : MDEV-12729 - Timeout in include file, MDEV-13677 - Server crash
rpl.rpl_domain_id_filter_master_crash : MDEV-19043 - Table marked as crashed
rpl.rpl_domain_id_filter_io_crash : MDEV-12729 - Timeout in include file, MDEV-13677 - Server crash; modified in 10.4.12
rpl.rpl_domain_id_filter_master_crash : MDEV-19043 - Table marked as crashed; modified in 10.4.12
rpl.rpl_domain_id_filter_restart : MDEV-10684 - Wrong result; MDEV-19043 - Table marked as crashed
rpl.rpl_drop_db_fail : MDEV-16898 - Slave fails to start
rpl.rpl_dual_pos_advance : MDEV-20213 - Server crash
rpl.rpl_extra_col_master_innodb : MDEV-16570 - Extra warning
rpl.rpl_extra_col_master_myisam : MDEV-14203 - Extra warning
rpl.rpl_flushlog_loop : MDEV-21570 - Server crash
rpl.rpl_get_lock : MDEV-19368 - mysqltest failed but provided no output
rpl.rpl_get_master_version_and_clock : Modified in 10.4.12
rpl.rpl_gtid_basic : MDEV-10681 - server startup problem
rpl.rpl_gtid_crash : MDEV-9501 - Failed registering on master, MDEV-13643 - Lost connection
rpl.rpl_gtid_delete_domain : MDEV-14463 - Timeout
rpl.rpl_gtid_errorhandling : MDEV-13261 - Crash
rpl.rpl_gtid_mdev9033 : MDEV-10680 - warnings
rpl.rpl_gtid_reconnect : MDEV-14497 - Crash
rpl.rpl_gtid_reconnect : MDEV-14497 - Crash; modified in 10.4.12
rpl.rpl_gtid_startpos : MDEV-20141 - mysqltest failed but provided no output
rpl.rpl_gtid_stop_start : MDEV-10629 - Crash on shutdown, MDEV-12629 - Valgrind warnings
rpl.rpl_gtid_until : MDEV-10625 - warnings in error log
rpl.rpl_heartbeat : MDEV-20213 - Server crash
rpl.rpl_heartbeat_debug : Modified in 10.4.12
rpl.rpl_ignore_grant : MDEV-20159 - Assertion failure
rpl.rpl_ignore_table_update : MDEV-20159 - Assertion failure
rpl.rpl_incident : Include file modified in 10.2.31
rpl.rpl_init_slave_errors : Include file modified in 10.2.31
rpl.rpl_innodb_bug30888 : MDEV-10417 - Fails on Mips
rpl.rpl_insert : MDEV-9329 - Fails on Ubuntu/s390x
rpl.rpl_insert_delayed : MDEV-9329 - Fails on Ubuntu/s390x
@@ -712,44 +769,40 @@ rpl.rpl_insert_id : MDEV-15197 - Wrong result
rpl.rpl_insert_id_pk : MDEV-16567 - Assertion failure
rpl.rpl_insert_ignore : MDEV-14365 - Lost connection to MySQL server during query
rpl.rpl_invoked_features : MDEV-10417 - Fails on Mips
rpl.rpl_ip_mix : Modified in 10.4.9
rpl.rpl_ip_mix2 : Modified in 10.4.9
rpl.rpl_ipv4_as_ipv6 : MDEV-20147 - Incorrect checksum for freed object
rpl.rpl_known_bugs_detection : Modified in 10.1.42
rpl.rpl_lcase_tblnames_rewrite_db : MDEV-20213 - Server crash
rpl.rpl_mariadb_slave_capability : MDEV-11018 - Extra lines in binlog
rpl.rpl_mariadb_slave_capability : MDEV-11018 - Extra lines in binlog; modified in 10.4.12
rpl.rpl_mdev-11092 : Modified in 10.4.11
rpl.rpl_mdev12179 : MDEV-19043 - Table marked as crashed
rpl.rpl_mdev6020 : MDEV-15272 - Server crash
rpl.rpl_mdev_17614 : Added in 10.1.42
rpl.rpl_mixed_mixing_engines : MDEV-21266 - Timeout
rpl.rpl_non_direct_row_mixing_engines : MDEV-16561 - Timeout in master_pos_wait
rpl.rpl_parallel : MDEV-10653 - Timeouts
rpl.rpl_parallel2 : MDEV-17390 - Operation cannot be performed
rpl.rpl_parallel_conflicts : MDEV-15272 - Server crash
rpl.rpl_parallel_ignored_errors : Added in 10.4.9
rpl.rpl_parallel_mdev6589 : MDEV-12979 - Assertion failure
rpl.rpl_parallel_multilevel : MDEV-20160 - Server crash
rpl.rpl_parallel_multilevel2 : MDEV-14723 - Timeout
rpl.rpl_parallel_optimistic : MDEV-15278 - Failed to sync with master
rpl.rpl_parallel_optimistic : MDEV-15278 - Failed to sync with master; modified in 10.4.12
rpl.rpl_parallel_optimistic_nobinlog : MDEV-15278 - Failed to sync with master
rpl.rpl_parallel_retry : MDEV-11119 - Crash; MDEV-17109 - Timeout
rpl.rpl_parallel_temptable : MDEV-10356 - Crash; MDEV-19076 - Wrong result
rpl.rpl_partition_innodb : MDEV-10417 - Fails on Mips
rpl.rpl_password_boundaries : MDEV-11534 - Slave IO warnings
rpl.rpl_read_only : MDEV-20159 - Assertion failure
rpl.rpl_read_only2 : Added in 10.4.9
rpl.rpl_relayrotate : MDEV-20213 - Server crash
rpl.rpl_rotate_logs : Modified in 10.4.9
rpl.rpl_row_001 : MDEV-16653 - MTR's internal check fails
rpl.rpl_row_basic_11bugs : MDEV-12171 - Server failed to start
rpl.rpl_row_basic_2myisam : MDEV-13875 - command "diff_files" failed
rpl.rpl_row_big_table_id : Modified in 10.4.12
rpl.rpl_row_corruption : MDEV-21569 - mutex: LOCK_global_system_variables unlocking
rpl.rpl_row_drop_create_temp_table : MDEV-14487 - Wrong result
rpl.rpl_row_end_of_statement_loss : MDEV-21237 - Server crash
rpl.rpl_row_find_row_debug : Modified in 10.4.9
rpl.rpl_row_find_row_debug : Modified in 10.4.12
rpl.rpl_row_img_blobs : MDEV-13875 - command "diff_files" failed
rpl.rpl_row_img_eng_min : MDEV-13875 - diff_files failed
rpl.rpl_row_img_eng_noblob : MDEV-13875 - command "diff_files" failed
rpl.rpl_row_index_choice : MDEV-15196 - Slave crash
rpl.rpl_row_index_choice : MDEV-15196 - Slave crash; modified in 10.4.12
rpl.rpl_row_sp001 : MDEV-9329 - Fails on Ubuntu/s390x
rpl.rpl_row_until : MDEV-14052 - Master will not send events with checksum
rpl.rpl_semi_sync : MDEV-11220 - Wrong result
@@ -757,8 +810,7 @@ rpl.rpl_semi_sync_after_sync : MDEV-14366 - Wrong result
rpl.rpl_semi_sync_after_sync_row : MDEV-14366 - Wrong result
rpl.rpl_semi_sync_event_after_sync : MDEV-11806 - warnings
rpl.rpl_semi_sync_gtid_reconnect : Added in 10.4.11
rpl.rpl_semi_sync_skip_repl : MDEV-21223 - Server crash
rpl.rpl_semi_sync_slave_reply_fail : Added in 10.4.9
rpl.rpl_semi_sync_skip_repl : Modified in 10.4.12
rpl.rpl_semi_sync_uninstall_plugin : MDEV-7140 - Assorted failures
rpl.rpl_semi_sync_wait_no_slave : MDEV-20159 - Assertion failure
rpl.rpl_semi_sync_wait_point : MDEV-11807 - timeout in wait condition
@@ -766,28 +818,31 @@ rpl.rpl_semisync_ali_issues : MDEV-16272 - Wrong result
rpl.rpl_set_null_myisam : MDEV-20213 - Server crash
rpl.rpl_set_statement_default_master : MDEV-13258 - Extra warning
rpl.rpl_show_slave_hosts : MDEV-10681 - Crash
rpl.rpl_show_slave_running : Modified in 10.4.12
rpl.rpl_shutdown_wait_semisync_slaves : MDEV-20213 - Server crash
rpl.rpl_skip_error : Modified in 10.4.9
rpl.rpl_skip_replication : MDEV-13258 - Extra warning
rpl.rpl_slave_grp_exec : MDEV-10514 - Deadlock
rpl.rpl_slave_load_in : MDEV-20159 - Assertion failure
rpl.rpl_slave_load_remove_tmpfile : Modified in 10.4.12
rpl.rpl_slave_load_tmpdir_not_exist : MDEV-14203 - Extra warning
rpl.rpl_slave_shutdown_mdev20821 : Added in 10.4.12
rpl.rpl_slow_query_log : MDEV-13250 - Test abort
rpl.rpl_sp_effects : MDEV-13249 - Crash
rpl.rpl_start_stop_slave : MDEV-13567 - Sync slave timeout
rpl.rpl_stm_lcase_tblnames : Modified in 10.4.12
rpl.rpl_stm_multi_query : MDEV-9501 - Failed registering on master
rpl.rpl_stm_relay_ign_space : MDEV-14360 - Test assertion
rpl.rpl_stm_stop_middle_group : MDEV-13791 - Server crash
rpl.rpl_stm_stop_middle_group : MDEV-13791 - Server crash; include file modified in 10.4.12
rpl.rpl_stop_slave : Modified in 10.4.12
rpl.rpl_sync : MDEV-13830 - Assertion failure
rpl.rpl_sync_with_innodb_thd_conc : Added in 10.1.42
rpl.rpl_temporal_mysql56_to_mariadb53 : MDEV-9501 - Failed registering on master
rpl.rpl_temporary_error2 : MDEV-10634 - Wrong number of retries
rpl.rpl_test_framework : MDEV-19368 - mysqltest failed but provided no output
rpl.rpl_trigger : MDEV-18055 - Wrong result
rpl.rpl_truncate_3innodb : MDEV-19454 - Syntax error
rpl.rpl_unsafe_statements : Modified in 10.1.42
rpl.rpl_user_variables : MDEV-20522 - Wrong result
rpl.rpl_variables : MDEV-20150 - Server crash
rpl.rpl_view_debug : Modified in 10.4.12
rpl.sec_behind_master-5114 : MDEV-13878 - Wrong result
rpl.show_status_stop_slave_race-7126 : MDEV-17438 - Timeout
@@ -804,12 +859,8 @@ rpl/extra/rpl_tests.* : MDEV-10994 - Not maintained
#-----------------------------------------------------------------------
sequence.group_by : Modified in 10.4.9
#-----------------------------------------------------------------------
sphinx.* : MDEV-10986 - Tests have not been maintained; suite.pm modified in 10.4.9
sphinx.sphinx : MDEV-10986 - Sporadic failures; modified in 10.4.9
sphinx.* : MDEV-10986 - Tests have not been maintained
sphinx.sphinx : MDEV-10986 - Sporadic failures
sphinx.union-5539 : MDEV-10986 - Sporadic failures
#-----------------------------------------------------------------------
@@ -834,7 +885,6 @@ spider/bg.vp_fixes : MDEV-9329 - Fails on Ubuntu/s390x
spider/bugfix.return_found_rows_insert : Added in 10.4.11
spider/bugfix.return_found_rows_update : Added in 10.4.11
spider/bugfix.select_by_null : Added in 10.4.9
#-----------------------------------------------------------------------
@@ -873,7 +923,6 @@ spider/regression/e112122.load_data_part_replace_ddi1 : Added in 10.4.11
#-----------------------------------------------------------------------
sql_sequence.concurrent_create : MDEV-16635 - Server crash
sql_sequence.other : Modified in 10.4.9
sql_sequence.rebuild : Added in 10.4.11
sql_sequence.view : Modified in 10.4.11
@@ -888,18 +937,17 @@ stress.ddl_innodb : MDEV-10635 - Testcase timeout
#-----------------------------------------------------------------------
sys_vars.autocommit_func2 : MDEV-9329 - Fails on Ubuntu/s390x
sys_vars.delayed_insert_limit_func : Modified in 10.4.9
sys_vars.debug_dbug_func : Modified in 10.4.12
sys_vars.host_cache_size_auto : MDEV-20112 - Wrong result
sys_vars.innodb_buffer_pool_dump_at_shutdown_basic : MDEV-14280 - Unexpected error
sys_vars.innodb_change_buffering_debug_basic : Modified in 10.4.9
sys_vars.innodb_buffer_pool_size_basic : Modified in 10.4.12
sys_vars.innodb_checksum_algorithm_basic : MDEV-21568 - Errno: 2000
sys_vars.keep_files_on_create_basic : MDEV-10676 - timeout
sys_vars.log_slow_admin_statements_func : MDEV-12235 - Server crash
sys_vars.rpl_init_slave_func : MDEV-10149 - Test assertion
sys_vars.slow_query_log_func : MDEV-14273 - Wrong result
sys_vars.sysvars_innodb : Modified in 10.2.28
sys_vars.thread_cache_size_func : MDEV-11775 - Wrong result
sys_vars.wait_timeout_func : MDEV-12896 - Wrong result
sys_vars.wsrep_provider_basic : MDEV-19457 - Assertion failure
#-----------------------------------------------------------------------
@@ -945,7 +993,6 @@ tokudb_bugs.xa : MDEV-11804 - Lock wait timeout
#-----------------------------------------------------------------------
tokudb_parts.partition_alter4_tokudb : MDEV-12640 - Lost connection
tokudb_parts.partition_debug_tokudb : Include file modified in 10.4.9
#-----------------------------------------------------------------------
@@ -970,43 +1017,33 @@ unit.mf_iocache : MDEV-20952 - ASAN stack-buffer-overflow
#-----------------------------------------------------------------------
vcol.not_supported : MDEV-10639 - Testcase timeout
vcol.vcol_keys_innodb : MDEV-10639 - Testcase timeout; modified in 10.4.9
vcol.vcol_keys_innodb : MDEV-10639 - Testcase timeout
vcol.vcol_misc : MDEV-16651 - Wrong error message
vcol.vcol_sql_mode_datetime : Added in 10.4.9
vcol.vcol_sql_mode_time : Added in 10.4.9
vcol.vcol_sql_mode_timestamp : Added in 10.4.9
#-----------------------------------------------------------------------
versioning.alter : Modified in 10.4.9
versioning.auto_increment : Include file modified in 10.4.9
versioning.commit_id : Include file modified in 10.4.9
versioning.create : Modified in 10.4.9
versioning.delete : Modified in 10.4.11
versioning.delete_history : Modified in 10.4.9
versioning.engines : Combinations added in 10.4.9
versioning.foreign : Modified in 10.4.9
versioning.insert : Include file modified in 10.4.9
versioning.key_type : Combinations added in 10.4.9
versioning.online : Modified in 10.4.9
versioning.partition : Modified in 10.4.11
versioning.partition_innodb : Modified in 10.4.9
versioning.replace : Modified in 10.4.9
versioning.select : Modified in 10.4.11
versioning.select2 : Include file modified in 10.4.9
versioning.trx_id : Modified in 10.4.9
versioning.trx_id : Modified in 10.4.12
versioning.update : MDEV-20955 - Wrong result code; modified in 10.4.11
versioning.update-big : Modified in 10.4.9
versioning.view : Modified in 10.4.11
#-----------------------------------------------------------------------
wsrep.* : Config file modified in 10.4.12
wsrep.alter_table_innodb : Configuration deleted in 10.4.12
wsrep.binlog_format : Configuration added in 10.4.12
wsrep.foreign_key : MDEV-14725 - WSREP has not yet prepared node
wsrep.mdev_6832 : MDEV-14195 - Check testcase failed; modified in 10.4.9
wsrep.mysql_tzinfo_to_sql_symlink_skip : Added in 10.1.42
wsrep.pool_of_threads : MDEV-17345 - WSREP has not yet prepared node for application use; configuration added in 10.4.11
wsrep.variables : MDEV-14311 - Wrong result; MDEV-17585 - Deadlock; modified in 10.4.9
wsrep.mdev_10186 : Configuration modified in 10.4.12
wsrep.mdev_6832 : MDEV-14195 - Check testcase failed
wsrep.mysql_tzinfo_to_sql_symlink : Modified in 10.4.12
wsrep.mysql_tzinfo_to_sql_symlink_skip : Modified in 10.4.12
wsrep.plugin : Modified in 10.4.12
wsrep.pool_of_threads : MDEV-17345 - WSREP has not yet prepared node for application use; re-enabled in 10.4.12
wsrep.trans : Configuration added in 10.4.12
wsrep.variables : MDEV-17585 - Deadlock; modified in 10.4.12
#-----------------------------------------------------------------------
wsrep_info.plugin : MDEV-13569 - No nodes coming from prim view
wsrep_info.* : Config file modified in 10.3.22

View File

@@ -23,5 +23,12 @@ IF(HAVE_PAM_APPL_H)
ENDIF()
IF(TARGET auth_pam OR TARGET auth_pam_v1)
ADD_SUBDIRECTORY(testing)
ADD_LIBRARY(pam_user_map MODULE mapper/pam_user_map.c)
TARGET_LINK_LIBRARIES(pam_user_map pam)
SET_TARGET_PROPERTIES (pam_user_map PROPERTIES PREFIX "")
IF(INSTALL_PAMDIR)
INSTALL(TARGETS pam_user_map DESTINATION ${INSTALL_PAMDIR} COMPONENT Server)
INSTALL(FILES mapper/user_map.conf DESTINATION /etc/security COMPONENT Server)
ENDIF()
ENDIF()
ENDIF(HAVE_PAM_APPL_H)

View File

@@ -0,0 +1,13 @@
#
# Configuration file for pam_user_map.so
#
# defines mapping in the form
#
# orig_user_name: mapped_user_name
#
# or (to map all users in a specific group)
#
# @group_name: mapped_user_name
#
# comments and empty lines are ignored
#

View File

@@ -385,8 +385,8 @@ read_cnf()
get_stream()
{
if [[ $sfmt == 'xbstream' ]];then
wsrep_log_info "Streaming with xbstream"
if [[ $sfmt == 'mbstream' || $sfmt == 'xbstream' ]];then
wsrep_log_info "Streaming with ${sfmt}"
if [[ "$WSREP_SST_OPT_ROLE" == "joiner" ]];then
strmcmd="${XBSTREAM_BIN} -x"
else

View File

@@ -3032,7 +3032,10 @@ CLI_MYSQL_REAL_CONNECT(MYSQL *mysql,const char *host, const char *user,
scramble_data_len= pkt_scramble_len;
scramble_plugin= scramble_data + scramble_data_len;
if (scramble_data + scramble_data_len > pkt_end)
scramble_data_len= (int)(pkt_end - scramble_data);
{
set_mysql_error(mysql, CR_MALFORMED_PACKET, unknown_sqlstate);
goto error;
}
}
else
{

View File

@@ -857,6 +857,10 @@ class Item_func_from_unixtime :public Item_datetimefunc
const char *func_name() const { return "from_unixtime"; }
bool fix_length_and_dec();
bool get_date(THD *thd, MYSQL_TIME *res, date_mode_t fuzzydate);
bool check_vcol_func_processor(void *arg)
{
return mark_unsupported_function(func_name(), "()", arg, VCOL_SESSION_FUNC);
}
Item *get_copy(THD *thd)
{ return get_item_copy<Item_func_from_unixtime>(thd, this); }
};

View File

@@ -1,6 +1,6 @@
/*
Copyright (c) 2000, 2018, Oracle and/or its affiliates.
Copyright (c) 2009, 2019, MariaDB
Copyright (c) 2009, 2020, MariaDB
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -2446,7 +2446,7 @@ int Load_log_event::copy_log_event(const char *buf, ulong event_len,
{
DBUG_ENTER("Load_log_event::copy_log_event");
uint data_len;
if ((int) event_len < body_offset)
if ((int) event_len <= body_offset)
DBUG_RETURN(1);
char* buf_end = (char*)buf + event_len;
/* this is the beginning of the post-header */
@@ -3125,6 +3125,12 @@ Rows_log_event::Rows_log_event(const char *buf, uint event_len,
uint8 const post_header_len= description_event->post_header_len[event_type-1];
if (event_len < (uint)(common_header_len + post_header_len))
{
m_cols.bitmap= 0;
DBUG_VOID_RETURN;
}
DBUG_PRINT("enter",("event_len: %u common_header_len: %d "
"post_header_len: %d",
event_len, common_header_len,
@@ -3486,6 +3492,7 @@ Table_map_log_event::Table_map_log_event(const char *buf, uint event_len,
const char *post_start= buf + common_header_len;
post_start+= TM_MAPID_OFFSET;
VALIDATE_BYTES_READ(post_start, buf, event_len);
if (post_header_len == 6)
{
/* Master is of an intermediate source tree before 5.1.4. Id is 4 bytes */

View File

@@ -1,5 +1,5 @@
/* Copyright (c) 2000, 2014, Oracle and/or its affiliates.
Copyright (c) 2009, 2017, MariaDB Corporation.
Copyright (c) 2009, 2020, MariaDB Corporation.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -2228,16 +2228,16 @@ public:
****************************************************************************/
struct sql_ex_info
{
sql_ex_info() {} /* Remove gcc warning */
const char* field_term;
const char* enclosed;
const char* line_term;
const char* line_start;
const char* escaped;
int cached_new_format;
uint8 field_term_len,enclosed_len,line_term_len,line_start_len, escaped_len;
int cached_new_format= -1;
uint8 field_term_len= 0, enclosed_len= 0, line_term_len= 0,
line_start_len= 0, escaped_len= 0;
char opt_flags;
char empty_flags;
char empty_flags= 0;
// store in new format even if old is possible
void force_new_format() { cached_new_format = 1;}

View File

@@ -9647,6 +9647,8 @@ and_all_keys(RANGE_OPT_PARAM *param, SEL_ARG *key1, SEL_ARG *key2,
}
if (key1->type == SEL_ARG::MAYBE_KEY)
{
if (key2->type == SEL_ARG::KEY_RANGE)
return key2;
key1->right= key1->left= &null_element;
key1->next= key1->prev= 0;
}

View File

@@ -1443,6 +1443,9 @@ void slave_prepare_for_shutdown()
mysql_mutex_lock(&LOCK_active_mi);
master_info_index->free_connections();
mysql_mutex_unlock(&LOCK_active_mi);
// It's safe to destruct worker pool now when
// all driver threads are gone.
global_rpl_thread_pool.destroy();
stop_slave_background_thread();
}
@@ -6577,7 +6580,7 @@ static int queue_event(Master_info* mi,const char* buf, ulong event_len)
error= ER_SLAVE_HEARTBEAT_FAILURE;
error_msg.append(STRING_WITH_LEN("inconsistent heartbeat event content;"));
error_msg.append(STRING_WITH_LEN("the event's data: log_file_name "));
error_msg.append(hb.get_log_ident(), (uint) strlen(hb.get_log_ident()));
error_msg.append(hb.get_log_ident(), (uint) hb.get_ident_len());
error_msg.append(STRING_WITH_LEN(" log_pos "));
error_msg.append_ulonglong(hb.log_pos);
goto err;
@@ -6603,7 +6606,7 @@ static int queue_event(Master_info* mi,const char* buf, ulong event_len)
error= ER_SLAVE_HEARTBEAT_FAILURE;
error_msg.append(STRING_WITH_LEN("heartbeat is not compatible with local info;"));
error_msg.append(STRING_WITH_LEN("the event's data: log_file_name "));
error_msg.append(hb.get_log_ident(), (uint) strlen(hb.get_log_ident()));
error_msg.append(hb.get_log_ident(), (uint) hb.get_ident_len());
error_msg.append(STRING_WITH_LEN(" log_pos "));
error_msg.append_ulonglong(hb.log_pos);
goto err;

View File

@@ -12575,6 +12575,7 @@ static bool send_server_handshake_packet(MPVIO_EXT *mpvio,
int2store(end+5, thd->client_capabilities >> 16);
end[7]= data_len;
DBUG_EXECUTE_IF("poison_srv_handshake_scramble_len", end[7]= -100;);
DBUG_EXECUTE_IF("increase_srv_handshake_scramble_len", end[7]= 50;);
bzero(end + 8, 6);
int4store(end + 14, thd->client_capabilities >> 32);
end+= 18;

View File

@@ -11148,6 +11148,74 @@ make_outerjoin_info(JOIN *join)
}
/*
@brief
Build a temporary join prefix condition for JOIN_TABs up to the last tab
@param ret OUT the condition is returned here
@return
false OK
true Out of memory
@detail
Walk through the join prefix (from the first table to the last_tab) and
build a condition:
join_tab_1_cond AND join_tab_2_cond AND ... AND last_tab_conds
The condition is only intended to be used by the range optimizer, so:
- it is not normalized (can have Item_cond_and inside another
Item_cond_and)
- it does not include join->exec_const_cond and other similar conditions.
*/
bool build_tmp_join_prefix_cond(JOIN *join, JOIN_TAB *last_tab, Item **ret)
{
THD *const thd= join->thd;
Item_cond_and *all_conds= NULL;
Item *res= NULL;
// Pick the ON-expression. Use the same logic as in get_sargable_cond():
if (last_tab->on_expr_ref)
res= *last_tab->on_expr_ref;
else if (last_tab->table->pos_in_table_list &&
last_tab->table->pos_in_table_list->embedding &&
!last_tab->table->pos_in_table_list->embedding->sj_on_expr)
{
res= last_tab->table->pos_in_table_list->embedding->on_expr;
}
for (JOIN_TAB *tab= first_depth_first_tab(join);
tab;
tab= next_depth_first_tab(join, tab))
{
if (tab->select_cond)
{
if (!res)
res= tab->select_cond;
else
{
if (!all_conds)
{
if (!(all_conds= new (thd->mem_root)Item_cond_and(thd, res,
tab->select_cond)))
return true;
res= all_conds;
}
else
all_conds->add(tab->select_cond, thd->mem_root);
}
}
if (tab == last_tab)
break;
}
*ret= all_conds? all_conds: res;
return false;
}
static bool
make_join_select(JOIN *join,SQL_SELECT *select,COND *cond)
{
@@ -11525,7 +11593,9 @@ make_join_select(JOIN *join,SQL_SELECT *select,COND *cond)
{
/* Join with outer join condition */
COND *orig_cond=sel->cond;
sel->cond= and_conds(thd, sel->cond, *tab->on_expr_ref);
if (build_tmp_join_prefix_cond(join, tab, &sel->cond))
return true;
/*
We can't call sel->cond->fix_fields,

View File

@@ -29,14 +29,20 @@
class Unique :public Sql_alloc
{
DYNAMIC_ARRAY file_ptrs;
ulong max_elements;
ulong max_elements; /* Total number of elements that will be stored in-memory */
size_t max_in_memory_size;
IO_CACHE file;
TREE tree;
/* Number of elements filtered out due to min_dupl_count when storing results
to table. See Unique::get */
ulong filtered_out_elems;
uint size;
uint full_size;
uint min_dupl_count; /* always 0 for unions, > 0 for intersections */
uint full_size; /* Size of element + space needed to store the number of
duplicates found for the element. */
uint min_dupl_count; /* Minimum number of occurences of element required for
it to be written to record_pointers.
always 0 for unions, > 0 for intersections */
bool with_counters;
bool merge(TABLE *table, uchar *buff, size_t size, bool without_last_merge);

View File

@@ -150,6 +150,10 @@ mysql_mutex_t LOCK_wsrep_config_state;
mysql_mutex_t LOCK_wsrep_group_commit;
mysql_mutex_t LOCK_wsrep_SR_pool;
mysql_mutex_t LOCK_wsrep_SR_store;
mysql_mutex_t LOCK_wsrep_joiner_monitor;
mysql_mutex_t LOCK_wsrep_donor_monitor;
mysql_cond_t COND_wsrep_joiner_monitor;
mysql_cond_t COND_wsrep_donor_monitor;
int wsrep_replaying= 0;
ulong wsrep_running_threads = 0; // # of currently running wsrep
@@ -168,13 +172,15 @@ PSI_mutex_key
key_LOCK_wsrep_group_commit,
key_LOCK_wsrep_SR_pool,
key_LOCK_wsrep_SR_store,
key_LOCK_wsrep_thd_queue;
key_LOCK_wsrep_thd_queue,
key_LOCK_wsrep_joiner_monitor,
key_LOCK_wsrep_donor_monitor;
PSI_cond_key key_COND_wsrep_thd,
key_COND_wsrep_replaying, key_COND_wsrep_ready, key_COND_wsrep_sst,
key_COND_wsrep_sst_init, key_COND_wsrep_sst_thread,
key_COND_wsrep_thd_queue, key_COND_wsrep_slave_threads;
key_COND_wsrep_thd_queue, key_COND_wsrep_slave_threads,
key_COND_wsrep_joiner_monitor, key_COND_wsrep_donor_monitor;
PSI_file_key key_file_wsrep_gra_log;
@@ -192,7 +198,9 @@ static PSI_mutex_info wsrep_mutexes[]=
{ &key_LOCK_wsrep_config_state, "LOCK_wsrep_config_state", PSI_FLAG_GLOBAL},
{ &key_LOCK_wsrep_group_commit, "LOCK_wsrep_group_commit", PSI_FLAG_GLOBAL},
{ &key_LOCK_wsrep_SR_pool, "LOCK_wsrep_SR_pool", PSI_FLAG_GLOBAL},
{ &key_LOCK_wsrep_SR_store, "LOCK_wsrep_SR_store", PSI_FLAG_GLOBAL}
{ &key_LOCK_wsrep_SR_store, "LOCK_wsrep_SR_store", PSI_FLAG_GLOBAL},
{ &key_LOCK_wsrep_joiner_monitor, "LOCK_wsrep_joiner_monitor", PSI_FLAG_GLOBAL},
{ &key_LOCK_wsrep_donor_monitor, "LOCK_wsrep_donor_monitor", PSI_FLAG_GLOBAL}
};
static PSI_cond_info wsrep_conds[]=
@@ -203,7 +211,9 @@ static PSI_cond_info wsrep_conds[]=
{ &key_COND_wsrep_sst_thread, "wsrep_sst_thread", 0},
{ &key_COND_wsrep_thd, "THD::COND_wsrep_thd", 0},
{ &key_COND_wsrep_replaying, "COND_wsrep_replaying", PSI_FLAG_GLOBAL},
{ &key_COND_wsrep_slave_threads, "COND_wsrep_wsrep_slave_threads", PSI_FLAG_GLOBAL}
{ &key_COND_wsrep_slave_threads, "COND_wsrep_wsrep_slave_threads", PSI_FLAG_GLOBAL},
{ &key_COND_wsrep_joiner_monitor, "COND_wsrep_joiner_monitor", PSI_FLAG_GLOBAL},
{ &key_COND_wsrep_donor_monitor, "COND_wsrep_donor_monitor", PSI_FLAG_GLOBAL}
};
static PSI_file_info wsrep_files[]=
@@ -212,14 +222,17 @@ static PSI_file_info wsrep_files[]=
};
PSI_thread_key key_wsrep_sst_joiner, key_wsrep_sst_donor,
key_wsrep_rollbacker, key_wsrep_applier;
key_wsrep_rollbacker, key_wsrep_applier,
key_wsrep_sst_joiner_monitor, key_wsrep_sst_donor_monitor;
static PSI_thread_info wsrep_threads[]=
{
{&key_wsrep_sst_joiner, "wsrep_sst_joiner_thread", PSI_FLAG_GLOBAL},
{&key_wsrep_sst_donor, "wsrep_sst_donor_thread", PSI_FLAG_GLOBAL},
{&key_wsrep_rollbacker, "wsrep_rollbacker_thread", PSI_FLAG_GLOBAL},
{&key_wsrep_applier, "wsrep_applier_thread", PSI_FLAG_GLOBAL}
{&key_wsrep_applier, "wsrep_applier_thread", PSI_FLAG_GLOBAL},
{&key_wsrep_sst_joiner_monitor, "wsrep_sst_joiner_monitor", PSI_FLAG_GLOBAL},
{&key_wsrep_sst_donor_monitor, "wsrep_sst_donor_monitor", PSI_FLAG_GLOBAL}
};
#endif /* HAVE_PSI_INTERFACE */
@@ -788,6 +801,13 @@ void wsrep_thr_init()
&LOCK_wsrep_SR_pool, MY_MUTEX_INIT_FAST);
mysql_mutex_init(key_LOCK_wsrep_SR_store,
&LOCK_wsrep_SR_store, MY_MUTEX_INIT_FAST);
mysql_mutex_init(key_LOCK_wsrep_joiner_monitor,
&LOCK_wsrep_joiner_monitor, MY_MUTEX_INIT_FAST);
mysql_mutex_init(key_LOCK_wsrep_donor_monitor,
&LOCK_wsrep_donor_monitor, MY_MUTEX_INIT_FAST);
mysql_cond_init(key_COND_wsrep_joiner_monitor, &COND_wsrep_joiner_monitor, NULL);
mysql_cond_init(key_COND_wsrep_donor_monitor, &COND_wsrep_donor_monitor, NULL);
DBUG_VOID_RETURN;
}
@@ -891,6 +911,10 @@ void wsrep_thr_deinit()
mysql_mutex_destroy(&LOCK_wsrep_group_commit);
mysql_mutex_destroy(&LOCK_wsrep_SR_pool);
mysql_mutex_destroy(&LOCK_wsrep_SR_store);
mysql_mutex_destroy(&LOCK_wsrep_joiner_monitor);
mysql_mutex_destroy(&LOCK_wsrep_donor_monitor);
mysql_cond_destroy(&COND_wsrep_joiner_monitor);
mysql_cond_destroy(&COND_wsrep_donor_monitor);
delete wsrep_config_state;
wsrep_config_state= 0; // Safety

Some files were not shown because too many files have changed in this diff Show More