mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
Merge branch '10.5' into 10.6
This commit is contained in:
@ -1534,7 +1534,6 @@ void free_used_memory()
|
||||
void ha_pre_shutdown();
|
||||
#endif
|
||||
|
||||
|
||||
ATTRIBUTE_NORETURN static void cleanup_and_exit(int exit_code,
|
||||
bool called_from_die)
|
||||
{
|
||||
@ -5236,7 +5235,11 @@ void do_shutdown_server(struct st_command *command)
|
||||
*/
|
||||
|
||||
if (timeout && mysql_shutdown(mysql, SHUTDOWN_DEFAULT))
|
||||
die("mysql_shutdown failed");
|
||||
{
|
||||
handle_error(command, mysql_errno(mysql), mysql_error(mysql),
|
||||
mysql_sqlstate(mysql), &ds_res);
|
||||
DBUG_VOID_RETURN;
|
||||
}
|
||||
|
||||
if (!timeout || wait_until_dead(pid, timeout))
|
||||
{
|
||||
@ -8227,7 +8230,7 @@ static int match_expected_error(struct st_command *command,
|
||||
|
||||
SYNOPSIS
|
||||
handle_error()
|
||||
q - query context
|
||||
command - command
|
||||
err_errno - error number
|
||||
err_error - error message
|
||||
err_sqlstate - sql state
|
||||
|
@ -984,3 +984,8 @@ IF(have_C__Werror)
|
||||
)
|
||||
SET(CMAKE_REQUIRED_FLAGS ${SAVE_CMAKE_REQUIRED_FLAGS})
|
||||
ENDIF()
|
||||
|
||||
IF(CMAKE_C_COMPILER_ID MATCHES "Intel")
|
||||
MY_CHECK_AND_SET_COMPILER_FLAG("-no-ansi-alias")
|
||||
MY_CHECK_AND_SET_COMPILER_FLAG("-fp-model precise")
|
||||
ENDIF()
|
||||
|
@ -91,7 +91,7 @@ loose-performance-schema-events-statements-history-size=10
|
||||
loose-performance-schema-events-statements-history-long-size=1000
|
||||
loose-performance-schema-events-transactions-history-size=10
|
||||
loose-performance-schema-events-transactions-history-long-size=1000
|
||||
loose-performance-schema-max-thread-instances=200
|
||||
loose-performance-schema-max-thread-instances=400
|
||||
loose-performance-schema-session-connect-attrs-size=2048
|
||||
loose-performance-schema-max-metadata-locks=10000
|
||||
|
||||
|
@ -96,10 +96,11 @@
|
||||
# Remove whitespace from $rpl_topology
|
||||
--let $rpl_topology= `SELECT REPLACE('$rpl_topology', ' ', '')`
|
||||
|
||||
--source include/slow_environ.inc
|
||||
|
||||
--let $include_filename= rpl_change_topology.inc [new topology=$rpl_topology]
|
||||
--source include/begin_include_file.inc
|
||||
|
||||
|
||||
if ($rpl_debug)
|
||||
{
|
||||
--echo ---- Check input ----
|
||||
@ -233,7 +234,7 @@ if (!$rpl_skip_change_master)
|
||||
--echo "\$rpl_master_log_pos parameter not set for the master: $_rpl_master. Set log position to empty."
|
||||
}
|
||||
}
|
||||
eval CHANGE MASTER TO MASTER_HOST = '127.0.0.1', MASTER_PORT = $_rpl_port, MASTER_USER = 'root', MASTER_LOG_FILE = '$_rpl_master_log_file'$_rpl_master_log_pos, MASTER_CONNECT_RETRY = 1;
|
||||
eval CHANGE MASTER TO MASTER_HOST = '127.0.0.1', MASTER_PORT = $_rpl_port, MASTER_USER = 'root', MASTER_LOG_FILE = '$_rpl_master_log_file'$_rpl_master_log_pos, MASTER_CONNECT_RETRY = 1$_timeout_adjustment;
|
||||
}
|
||||
if ($_rpl_master == '')
|
||||
{
|
||||
|
@ -31,11 +31,8 @@ if ($rpl_inited)
|
||||
set @@global.log_warnings=0;
|
||||
--enable_query_log
|
||||
|
||||
--let $server_shutdown_timeout= 60
|
||||
if ($VALGRIND_TEST)
|
||||
{
|
||||
--let $server_shutdown_timeout= 300
|
||||
}
|
||||
--source include/slow_environ.inc
|
||||
--let $server_shutdown_timeout= 60$_timeout_adjustment
|
||||
|
||||
if ($shutdown_timeout)
|
||||
{
|
||||
|
9
mysql-test/include/slow_environ.inc
Normal file
9
mysql-test/include/slow_environ.inc
Normal file
@ -0,0 +1,9 @@
|
||||
if (!$slow_environ_check)
|
||||
{
|
||||
let $_timeout_adjustment=;
|
||||
if (`select $VALGRIND_TEST + count(*) from information_schema.system_variables where variable_name='have_sanitizer' and global_value like '%SAN%'`)
|
||||
{
|
||||
let $_timeout_adjustment=0;
|
||||
}
|
||||
let $slow_environ_check=1;
|
||||
}
|
@ -34,8 +34,17 @@ if (!$rpl_debug)
|
||||
--disable_query_log
|
||||
}
|
||||
|
||||
|
||||
let $_enable_warnings=0;
|
||||
if ($rpl_allow_error) {
|
||||
if ($ENABLED_WARNINGS) {
|
||||
let $_enable_warnings=1;
|
||||
disable_warnings;
|
||||
}
|
||||
}
|
||||
STOP SLAVE IO_THREAD;
|
||||
if ($_enable_warnings) {
|
||||
enable_warnings;
|
||||
}
|
||||
--source include/wait_for_slave_io_to_stop.inc
|
||||
|
||||
|
||||
|
@ -25,11 +25,8 @@
|
||||
let $_slave_timeout= $slave_timeout;
|
||||
if (!$_slave_timeout)
|
||||
{
|
||||
let $_slave_timeout= 300;
|
||||
if ($VALGRIND_TEST)
|
||||
{
|
||||
let $_slave_timeout= 1500;
|
||||
}
|
||||
source include/slow_environ.inc;
|
||||
let $_slave_timeout= 300$_timeout_adjustment;
|
||||
}
|
||||
|
||||
--let $_master_log_file= query_get_value(SHOW SLAVE STATUS, Master_Log_File, 1)
|
||||
|
@ -33,11 +33,8 @@
|
||||
let $_slave_timeout= $slave_timeout;
|
||||
if (!$_slave_timeout)
|
||||
{
|
||||
let $_slave_timeout= 120;
|
||||
if ($VALGRIND_TEST)
|
||||
{
|
||||
let $_slave_timeout= 1200;
|
||||
}
|
||||
source include/slow_environ.inc;
|
||||
let $_slave_timeout= 120$_timeout_adjustment;
|
||||
}
|
||||
|
||||
--let $_result= `SELECT master_gtid_wait('$master_pos', $_slave_timeout)`
|
||||
|
@ -49,11 +49,8 @@
|
||||
let $_slave_timeout= $slave_timeout;
|
||||
if (!$_slave_timeout)
|
||||
{
|
||||
let $_slave_timeout= 300;
|
||||
if ($VALGRIND_TEST)
|
||||
{
|
||||
let $_slave_timeout= 1500;
|
||||
}
|
||||
source include/slow_environ.inc;
|
||||
let $_slave_timeout= 300$_timeout_adjustment;
|
||||
}
|
||||
|
||||
let $_slave_param_comparison= $slave_param_comparison;
|
||||
|
@ -263,6 +263,7 @@ sub pre_setup() {
|
||||
$::opt_suite_timeout= 24 * 60; # in minutes
|
||||
$::opt_shutdown_timeout= ($interactive ? 24 * 60 : 3) * 60; # in seconds
|
||||
$::opt_start_timeout= $::opt_shutdown_timeout; # in seconds
|
||||
$::opt_debug_sync_timeout= 3000; # in seconds
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -235,3 +235,16 @@ t1 CREATE TABLE `t1` (
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci
|
||||
drop procedure sp;
|
||||
drop table t1;
|
||||
#
|
||||
# MDEV-33768: Memory leak found in the test main.constraints run with --ps-protocol against a server built with the option -DWITH_PROTECT_STATEMENT_MEMROOT
|
||||
# This test case was added by reviewer's request.
|
||||
#
|
||||
PREPARE stmt FROM 'CREATE TABLE t1 (a INT)';
|
||||
EXECUTE stmt;
|
||||
DROP TABLE t1;
|
||||
EXECUTE stmt;
|
||||
EXECUTE stmt;
|
||||
ERROR 42S01: Table 't1' already exists
|
||||
# Clean up
|
||||
DROP TABLE t1;
|
||||
DEALLOCATE PREPARE stmt;
|
||||
|
@ -189,3 +189,18 @@ call sp;
|
||||
show create table t1;
|
||||
drop procedure sp;
|
||||
drop table t1;
|
||||
|
||||
--echo #
|
||||
--echo # MDEV-33768: Memory leak found in the test main.constraints run with --ps-protocol against a server built with the option -DWITH_PROTECT_STATEMENT_MEMROOT
|
||||
--echo # This test case was added by reviewer's request.
|
||||
--echo #
|
||||
PREPARE stmt FROM 'CREATE TABLE t1 (a INT)';
|
||||
EXECUTE stmt;
|
||||
DROP TABLE t1;
|
||||
EXECUTE stmt;
|
||||
--error ER_TABLE_EXISTS_ERROR
|
||||
EXECUTE stmt;
|
||||
|
||||
--echo # Clean up
|
||||
DROP TABLE t1;
|
||||
DEALLOCATE PREPARE stmt;
|
||||
|
@ -1806,7 +1806,7 @@ show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`color` char(32) GENERATED ALWAYS AS (column_get(`dynamic_cols`,1 as char charset latin1)) STORED,
|
||||
`cl` char(32) GENERATED ALWAYS AS (column_get(column_add(column_create(1,'blue' AS char charset latin1 ),2,'ttt'),`i` as char charset latin1)) STORED,
|
||||
`cl` char(32) GENERATED ALWAYS AS (column_get(column_add(column_create(1,'blue' AS char charset latin1 collate latin1_swedish_ci ),2,'ttt'),`i` as char charset latin1)) STORED,
|
||||
`item_name` varchar(32) NOT NULL,
|
||||
`i` int(11) DEFAULT NULL,
|
||||
`dynamic_cols` blob DEFAULT NULL,
|
||||
|
@ -150,7 +150,7 @@ select hex(COLUMN_CREATE(1, "afaf" AS char character set utf8,
|
||||
id select_type table type possible_keys key key_len ref rows filtered Extra
|
||||
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
|
||||
Warnings:
|
||||
Note 1003 select hex(column_create(1,'afaf' AS char charset utf8mb3 ,2,1212 AS unsigned int,3,1212 AS int,4,12.12 AS double,4 + 1,12.12 AS decimal,6,'2011-04-05' AS date,7,'- 0:45:49.000001' AS time,8,'2011-04-05 0:45:49.000001' AS datetime)) AS `ex`
|
||||
Note 1003 select hex(column_create(1,'afaf' AS char charset utf8mb3 collate utf8mb3_general_ci ,2,1212 AS unsigned int,3,1212 AS int,4,12.12 AS double,4 + 1,12.12 AS decimal,6,'2011-04-05' AS date,7,'- 0:45:49.000001' AS time,8,'2011-04-05 0:45:49.000001' AS datetime)) AS `ex`
|
||||
select hex(column_create(1, 0.0 AS decimal));
|
||||
hex(column_create(1, 0.0 AS decimal))
|
||||
000100010004
|
||||
@ -354,7 +354,7 @@ select column_get(column_create(1, "1212" AS char charset utf8), 1 as char chars
|
||||
id select_type table type possible_keys key key_len ref rows filtered Extra
|
||||
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
|
||||
Warnings:
|
||||
Note 1003 select column_get(column_create(1,'1212' AS char charset utf8mb3 ),1 as char charset utf8mb3) AS `ex`
|
||||
Note 1003 select column_get(column_create(1,'1212' AS char charset utf8mb3 collate utf8mb3_general_ci ),1 as char charset utf8mb3) AS `ex`
|
||||
select column_get(column_create(1, 1212 AS unsigned int), 1 as char charset utf8) as ex;
|
||||
ex
|
||||
1212
|
||||
@ -414,7 +414,7 @@ select column_get(column_create(1, "1212" AS char charset utf8), 1 as char chars
|
||||
id select_type table type possible_keys key key_len ref rows filtered Extra
|
||||
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
|
||||
Warnings:
|
||||
Note 1003 select column_get(column_create(1,'1212' AS char charset utf8mb3 ),1 as char charset binary) AS `ex`
|
||||
Note 1003 select column_get(column_create(1,'1212' AS char charset utf8mb3 collate utf8mb3_general_ci ),1 as char charset binary) AS `ex`
|
||||
#
|
||||
# column get real
|
||||
#
|
||||
@ -1882,7 +1882,7 @@ drop table t1;
|
||||
create view v1 as select column_get(column_add(column_create(1 , 'blue' as char), 2, 'ttt'), 1 as char);
|
||||
show create view v1;
|
||||
View Create View character_set_client collation_connection
|
||||
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select column_get(column_add(column_create(1,'blue' AS char charset utf8mb3 ),2,'ttt'),1 as char charset utf8mb3) AS `Name_exp_1` utf8mb3 utf8mb3_general_ci
|
||||
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select column_get(column_add(column_create(1,'blue' AS char charset utf8mb3 collate utf8mb3_general_ci ),2,'ttt'),1 as char charset utf8mb3) AS `Name_exp_1` utf8mb3 utf8mb3_general_ci
|
||||
select * from v1;
|
||||
Name_exp_1
|
||||
blue
|
||||
@ -1949,3 +1949,23 @@ ex
|
||||
#
|
||||
# End of 10.4 tests
|
||||
#
|
||||
#
|
||||
# Start of 10.5 tests
|
||||
#
|
||||
#
|
||||
# Start of 10.5 tests
|
||||
#
|
||||
#
|
||||
# MDEV-33788 HEX(COLUMN_CREATE(.. AS CHAR ...)) fails with --view-protocol
|
||||
#
|
||||
SELECT hex(column_create(1,'a' AS CHAR CHARACTER SET utf8mb3 COLLATE utf8mb3_bin)) AS ex;
|
||||
ex
|
||||
0001000100035361
|
||||
SELECT hex(column_add(column_create(
|
||||
1, 'a' AS CHAR CHARACTER SET utf8mb3 COLLATE utf8mb3_bin),
|
||||
2, 'b' AS CHAR CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci)) AS ex;
|
||||
ex
|
||||
00020001000302001353612162
|
||||
#
|
||||
# Start of 10.5 tests
|
||||
#
|
||||
|
@ -1000,3 +1000,24 @@ SELECT HEX(COLUMN_ADD(COLUMN_CREATE(1,10),2,NULL,1,NULL)) as ex;
|
||||
--echo #
|
||||
--echo # End of 10.4 tests
|
||||
--echo #
|
||||
|
||||
--echo #
|
||||
--echo # Start of 10.5 tests
|
||||
--echo #
|
||||
|
||||
--echo #
|
||||
--echo # Start of 10.5 tests
|
||||
--echo #
|
||||
|
||||
--echo #
|
||||
--echo # MDEV-33788 HEX(COLUMN_CREATE(.. AS CHAR ...)) fails with --view-protocol
|
||||
--echo #
|
||||
|
||||
SELECT hex(column_create(1,'a' AS CHAR CHARACTER SET utf8mb3 COLLATE utf8mb3_bin)) AS ex;
|
||||
SELECT hex(column_add(column_create(
|
||||
1, 'a' AS CHAR CHARACTER SET utf8mb3 COLLATE utf8mb3_bin),
|
||||
2, 'b' AS CHAR CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci)) AS ex;
|
||||
|
||||
--echo #
|
||||
--echo # Start of 10.5 tests
|
||||
--echo #
|
||||
|
@ -208,12 +208,13 @@ t1 CREATE TABLE `t1` (
|
||||
KEY `a` (`a`,`b`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci
|
||||
drop table t1;
|
||||
set sql_mode= default;
|
||||
#
|
||||
# MDEV-33460 select '123' 'x'; unexpected result
|
||||
#
|
||||
SELECT '';
|
||||
NULL
|
||||
NULL
|
||||
|
||||
|
||||
SELECT '' 'b' 'c';
|
||||
bc
|
||||
bc
|
||||
|
@ -25,12 +25,15 @@ flush tables;
|
||||
update t1 set a = 2;
|
||||
show create table t1;
|
||||
drop table t1;
|
||||
set sql_mode= default;
|
||||
|
||||
--echo #
|
||||
--echo # MDEV-33460 select '123' 'x'; unexpected result
|
||||
--echo #
|
||||
|
||||
--disable_view_protocol
|
||||
SELECT '';
|
||||
--enable_view_protocol
|
||||
SELECT '' 'b' 'c';
|
||||
SELECT '' '' 'c';
|
||||
SELECT 'a' '' 'c';
|
||||
|
@ -980,6 +980,84 @@ c1
|
||||
9223372036854775808
|
||||
drop table `a`;
|
||||
#
|
||||
# MDEV-18319 BIGINT UNSIGNED Performance issue
|
||||
#
|
||||
CREATE OR REPLACE TABLE t1 (
|
||||
id bigint(20) unsigned NOT NULL AUTO_INCREMENT PRIMARY KEY
|
||||
);
|
||||
FOR i IN 0..255
|
||||
DO
|
||||
INSERT INTO t1 VALUES ();
|
||||
END FOR
|
||||
$$
|
||||
SELECT MIN(id), MAX(id), COUNT(*) FROM t1;
|
||||
MIN(id) MAX(id) COUNT(*)
|
||||
1 256 256
|
||||
EXPLAIN SELECT id FROM t1 WHERE id IN (1,2);
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 range PRIMARY PRIMARY 8 NULL 2 Using where; Using index
|
||||
EXPLAIN SELECT id FROM t1 WHERE id IN (9223372036854775806, 9223372036854775807);
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 range PRIMARY PRIMARY 8 NULL 2 Using where; Using index
|
||||
EXPLAIN SELECT id FROM t1 WHERE id IN (9223372036854775807, 9223372036854775808);
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 range PRIMARY PRIMARY 8 NULL 2 Using where; Using index
|
||||
DROP TABLE t1;
|
||||
#
|
||||
# MDEV-18898 SELECT using wrong index when using operator IN with mixed types
|
||||
#
|
||||
CREATE TEMPORARY TABLE t1 (
|
||||
id int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||
name varchar(100) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `name` (`name`)
|
||||
);
|
||||
FOR i IN 1..255
|
||||
DO
|
||||
INSERT INTO t1 VALUES (i, MD5(i));
|
||||
END FOR
|
||||
$$
|
||||
#
|
||||
# Constants alone
|
||||
#
|
||||
ANALYZE SELECT id, name FROM t1 WHERE id = 1;
|
||||
id select_type table type possible_keys key key_len ref rows r_rows filtered r_filtered Extra
|
||||
1 SIMPLE t1 const PRIMARY PRIMARY 4 const 1 NULL 100.00 NULL
|
||||
ANALYZE SELECT id, name FROM t1 WHERE id = '2';
|
||||
id select_type table type possible_keys key key_len ref rows r_rows filtered r_filtered Extra
|
||||
1 SIMPLE t1 const PRIMARY PRIMARY 4 const 1 NULL 100.00 NULL
|
||||
#
|
||||
# Two constants using IN
|
||||
#
|
||||
ANALYZE SELECT id, name FROM t1 WHERE id IN (1, 2);
|
||||
id select_type table type possible_keys key key_len ref rows r_rows filtered r_filtered Extra
|
||||
1 SIMPLE t1 range PRIMARY PRIMARY 4 NULL 2 2.00 100.00 100.00 Using index condition
|
||||
ANALYZE SELECT id, name FROM t1 WHERE id IN ('1', 2) /* Used a wrong index */;
|
||||
id select_type table type possible_keys key key_len ref rows r_rows filtered r_filtered Extra
|
||||
1 SIMPLE t1 range PRIMARY PRIMARY 4 NULL 2 2.00 100.00 100.00 Using index condition
|
||||
ANALYZE SELECT id, name FROM t1 WHERE id IN (1, '2') /* Used a wrong index */;
|
||||
id select_type table type possible_keys key key_len ref rows r_rows filtered r_filtered Extra
|
||||
1 SIMPLE t1 range PRIMARY PRIMARY 4 NULL 2 2.00 100.00 100.00 Using index condition
|
||||
ANALYZE SELECT id, name FROM t1 WHERE id IN ('1', '2');
|
||||
id select_type table type possible_keys key key_len ref rows r_rows filtered r_filtered Extra
|
||||
1 SIMPLE t1 range PRIMARY PRIMARY 4 NULL 2 2.00 100.00 100.00 Using index condition
|
||||
#
|
||||
# Two constants using OR
|
||||
#
|
||||
ANALYZE SELECT id, name FROM t1 WHERE id = 1 OR id = 2;
|
||||
id select_type table type possible_keys key key_len ref rows r_rows filtered r_filtered Extra
|
||||
1 SIMPLE t1 range PRIMARY PRIMARY 4 NULL 2 2.00 100.00 100.00 Using index condition
|
||||
ANALYZE SELECT id, name FROM t1 WHERE id = '1' OR id = '2';
|
||||
id select_type table type possible_keys key key_len ref rows r_rows filtered r_filtered Extra
|
||||
1 SIMPLE t1 range PRIMARY PRIMARY 4 NULL 2 2.00 100.00 100.00 Using index condition
|
||||
ANALYZE SELECT id, name FROM t1 WHERE id = 1 OR id = '2';
|
||||
id select_type table type possible_keys key key_len ref rows r_rows filtered r_filtered Extra
|
||||
1 SIMPLE t1 range PRIMARY PRIMARY 4 NULL 2 2.00 100.00 100.00 Using index condition
|
||||
ANALYZE SELECT id, name FROM t1 WHERE id = '1' OR id = 2;
|
||||
id select_type table type possible_keys key key_len ref rows r_rows filtered r_filtered Extra
|
||||
1 SIMPLE t1 range PRIMARY PRIMARY 4 NULL 2 2.00 100.00 100.00 Using index condition
|
||||
DROP TABLE t1;
|
||||
#
|
||||
# End of 10.5 tests
|
||||
#
|
||||
#
|
||||
|
@ -751,6 +751,66 @@ SELECT c1 FROM a WHERE c1 IN ( 1, 9223372036854775807 );
|
||||
SELECT c1 FROM a WHERE c1 IN ( 1, 9223372036854775808 );
|
||||
drop table `a`;
|
||||
|
||||
--echo #
|
||||
--echo # MDEV-18319 BIGINT UNSIGNED Performance issue
|
||||
--echo #
|
||||
|
||||
CREATE OR REPLACE TABLE t1 (
|
||||
id bigint(20) unsigned NOT NULL AUTO_INCREMENT PRIMARY KEY
|
||||
);
|
||||
DELIMITER $$;
|
||||
FOR i IN 0..255
|
||||
DO
|
||||
INSERT INTO t1 VALUES ();
|
||||
END FOR
|
||||
$$
|
||||
DELIMITER ;$$
|
||||
SELECT MIN(id), MAX(id), COUNT(*) FROM t1;
|
||||
EXPLAIN SELECT id FROM t1 WHERE id IN (1,2);
|
||||
EXPLAIN SELECT id FROM t1 WHERE id IN (9223372036854775806, 9223372036854775807);
|
||||
EXPLAIN SELECT id FROM t1 WHERE id IN (9223372036854775807, 9223372036854775808);
|
||||
DROP TABLE t1;
|
||||
|
||||
|
||||
--echo #
|
||||
--echo # MDEV-18898 SELECT using wrong index when using operator IN with mixed types
|
||||
--echo #
|
||||
|
||||
CREATE TEMPORARY TABLE t1 (
|
||||
id int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||
name varchar(100) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `name` (`name`)
|
||||
);
|
||||
DELIMITER $$;
|
||||
FOR i IN 1..255
|
||||
DO
|
||||
INSERT INTO t1 VALUES (i, MD5(i));
|
||||
END FOR
|
||||
$$
|
||||
DELIMITER ;$$
|
||||
--echo #
|
||||
--echo # Constants alone
|
||||
--echo #
|
||||
ANALYZE SELECT id, name FROM t1 WHERE id = 1;
|
||||
ANALYZE SELECT id, name FROM t1 WHERE id = '2';
|
||||
--echo #
|
||||
--echo # Two constants using IN
|
||||
--echo #
|
||||
ANALYZE SELECT id, name FROM t1 WHERE id IN (1, 2);
|
||||
ANALYZE SELECT id, name FROM t1 WHERE id IN ('1', 2) /* Used a wrong index */;
|
||||
ANALYZE SELECT id, name FROM t1 WHERE id IN (1, '2') /* Used a wrong index */;
|
||||
ANALYZE SELECT id, name FROM t1 WHERE id IN ('1', '2');
|
||||
--echo #
|
||||
--echo # Two constants using OR
|
||||
--echo #
|
||||
ANALYZE SELECT id, name FROM t1 WHERE id = 1 OR id = 2;
|
||||
ANALYZE SELECT id, name FROM t1 WHERE id = '1' OR id = '2';
|
||||
ANALYZE SELECT id, name FROM t1 WHERE id = 1 OR id = '2';
|
||||
ANALYZE SELECT id, name FROM t1 WHERE id = '1' OR id = 2;
|
||||
DROP TABLE t1;
|
||||
|
||||
|
||||
--echo #
|
||||
--echo # End of 10.5 tests
|
||||
--echo #
|
||||
|
@ -1690,6 +1690,13 @@ select json_arrayagg('ä'), json_objectagg(1, 'ä');
|
||||
json_arrayagg('ä') json_objectagg(1, 'ä')
|
||||
["ä"] {"1":"ä"}
|
||||
#
|
||||
# MDEV-31402: SIGSEGV in json_get_path_next | Item_func_json_extract::read_json
|
||||
#
|
||||
CREATE TABLE t (id CHAR AS (JSON_COMPACT (JSON_EXTRACT(doc,"$._id"))) UNIQUE KEY,doc JSON,CONSTRAINT notnu CHECK (id IS NOT NULL));
|
||||
INSERT INTO t (doc) VALUES ('{ "_id" : { "$oid" : "0ca0b0f0" },"a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" :0} ] } ] } ] } ] } ] } ] } ] } ] } ] } ] } ] } ] } ] } ] } ] }');
|
||||
ERROR 22001: Data too long for column 'id' at row 1
|
||||
DROP TABLE t;
|
||||
#
|
||||
# End of 10.5 tests
|
||||
#
|
||||
#
|
||||
|
@ -1118,6 +1118,16 @@ set names latin1;
|
||||
select json_arrayagg('ä'), json_objectagg(1, 'ä');
|
||||
--enable_service_connection
|
||||
|
||||
--echo #
|
||||
--echo # MDEV-31402: SIGSEGV in json_get_path_next | Item_func_json_extract::read_json
|
||||
--echo #
|
||||
|
||||
CREATE TABLE t (id CHAR AS (JSON_COMPACT (JSON_EXTRACT(doc,"$._id"))) UNIQUE KEY,doc JSON,CONSTRAINT notnu CHECK (id IS NOT NULL));
|
||||
--error ER_DATA_TOO_LONG
|
||||
INSERT INTO t (doc) VALUES ('{ "_id" : { "$oid" : "0ca0b0f0" },"a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" :0} ] } ] } ] } ] } ] } ] } ] } ] } ] } ] } ] } ] } ] } ] } ] }');
|
||||
|
||||
DROP TABLE t;
|
||||
|
||||
--echo #
|
||||
--echo # End of 10.5 tests
|
||||
--echo #
|
||||
|
@ -6373,3 +6373,57 @@ NULL
|
||||
SELECT FROM_UNIXTIME(LEAST(3696610869, NULL));
|
||||
FROM_UNIXTIME(LEAST(3696610869, NULL))
|
||||
NULL
|
||||
#
|
||||
# Start of 10.5 tests
|
||||
#
|
||||
#
|
||||
# MDEV-29149 Assertion `!is_valid_datetime() || fraction_remainder(((item->decimals) < (6) ? (item->decimals) : (6))) == 0' failed in Datetime_truncation_not_needed::Datetime_truncation_not_needed
|
||||
#
|
||||
SET @@timestamp= UNIX_TIMESTAMP('2022-07-21 23:00:00');
|
||||
SELECT DATE_SUB('2022-07-21 00:00:00', INTERVAL 800 HOUR) AS expected_result;
|
||||
expected_result
|
||||
2022-06-17 16:00:00
|
||||
SELECT
|
||||
IF(1,TIMEDIFF('38:59:59','839:00:00'),CAST('2022-12-12' AS DATE)) AS c1,
|
||||
IF(1,TIMEDIFF('-839:00:00','-38:59:59'),CAST('2022-12-12' AS DATE)) AS c2;
|
||||
c1 c2
|
||||
2022-06-17 16:00:00 2022-06-17 16:00:00
|
||||
Warnings:
|
||||
Warning 1292 Truncated incorrect time value: '839:00:00'
|
||||
Warning 1292 Truncated incorrect time value: '-839:00:00'
|
||||
SELECT
|
||||
IF(1,TIMEDIFF(385959,8390000),CAST('2022-12-12' AS DATE)) AS c1,
|
||||
IF(1,TIMEDIFF(-8390000,-385959),CAST('2022-12-12' AS DATE)) AS c2;
|
||||
c1 c2
|
||||
2022-06-17 16:00:00 2022-06-17 16:00:00
|
||||
Warnings:
|
||||
Warning 1292 Truncated incorrect time value: '8390000'
|
||||
Warning 1292 Truncated incorrect time value: '-8390000'
|
||||
SELECT
|
||||
TIMEDIFF('38:59:59','839:00:00') AS c1,
|
||||
CAST(TIMEDIFF('38:59:59','839:00:00') AS TIME(6)) AS c2,
|
||||
TIMEDIFF('839:00:00','38:59:59') AS c3,
|
||||
CAST(TIMEDIFF('839:00:00','38:59:59') AS TIME(6)) AS c4;
|
||||
c1 c2 c3 c4
|
||||
-800:00:00 -800:00:00.000000 800:00:00 800:00:00.000000
|
||||
Warnings:
|
||||
Warning 1292 Truncated incorrect time value: '839:00:00'
|
||||
Warning 1292 Truncated incorrect time value: '839:00:00'
|
||||
Warning 1292 Truncated incorrect time value: '839:00:00'
|
||||
Warning 1292 Truncated incorrect time value: '839:00:00'
|
||||
SELECT
|
||||
TIMEDIFF(385959,8390000) AS c1,
|
||||
CAST(TIMEDIFF(385959,8390000) AS TIME(6)) AS c2,
|
||||
TIMEDIFF(8390000,385959) AS c3,
|
||||
CAST(TIMEDIFF(8390000,385959) AS TIME(6)) AS c4;
|
||||
c1 c2 c3 c4
|
||||
-800:00:00 -800:00:00.000000 800:00:00 800:00:00.000000
|
||||
Warnings:
|
||||
Warning 1292 Truncated incorrect time value: '8390000'
|
||||
Warning 1292 Truncated incorrect time value: '8390000'
|
||||
Warning 1292 Truncated incorrect time value: '8390000'
|
||||
Warning 1292 Truncated incorrect time value: '8390000'
|
||||
SET @@timestamp= DEFAULT;
|
||||
#
|
||||
# End of 10.5 tests
|
||||
#
|
||||
|
@ -3218,3 +3218,42 @@ SELECT CONCAT(MAKETIME('01', '01', LEAST( -100, NULL )));
|
||||
--echo #
|
||||
|
||||
SELECT FROM_UNIXTIME(LEAST(3696610869, NULL));
|
||||
|
||||
|
||||
--echo #
|
||||
--echo # Start of 10.5 tests
|
||||
--echo #
|
||||
|
||||
--echo #
|
||||
--echo # MDEV-29149 Assertion `!is_valid_datetime() || fraction_remainder(((item->decimals) < (6) ? (item->decimals) : (6))) == 0' failed in Datetime_truncation_not_needed::Datetime_truncation_not_needed
|
||||
--echo #
|
||||
|
||||
SET @@timestamp= UNIX_TIMESTAMP('2022-07-21 23:00:00');
|
||||
|
||||
SELECT DATE_SUB('2022-07-21 00:00:00', INTERVAL 800 HOUR) AS expected_result;
|
||||
|
||||
SELECT
|
||||
IF(1,TIMEDIFF('38:59:59','839:00:00'),CAST('2022-12-12' AS DATE)) AS c1,
|
||||
IF(1,TIMEDIFF('-839:00:00','-38:59:59'),CAST('2022-12-12' AS DATE)) AS c2;
|
||||
|
||||
SELECT
|
||||
IF(1,TIMEDIFF(385959,8390000),CAST('2022-12-12' AS DATE)) AS c1,
|
||||
IF(1,TIMEDIFF(-8390000,-385959),CAST('2022-12-12' AS DATE)) AS c2;
|
||||
|
||||
SELECT
|
||||
TIMEDIFF('38:59:59','839:00:00') AS c1,
|
||||
CAST(TIMEDIFF('38:59:59','839:00:00') AS TIME(6)) AS c2,
|
||||
TIMEDIFF('839:00:00','38:59:59') AS c3,
|
||||
CAST(TIMEDIFF('839:00:00','38:59:59') AS TIME(6)) AS c4;
|
||||
|
||||
SELECT
|
||||
TIMEDIFF(385959,8390000) AS c1,
|
||||
CAST(TIMEDIFF(385959,8390000) AS TIME(6)) AS c2,
|
||||
TIMEDIFF(8390000,385959) AS c3,
|
||||
CAST(TIMEDIFF(8390000,385959) AS TIME(6)) AS c4;
|
||||
|
||||
SET @@timestamp= DEFAULT;
|
||||
|
||||
--echo #
|
||||
--echo # End of 10.5 tests
|
||||
--echo #
|
||||
|
@ -5072,37 +5072,37 @@ ERROR 42000: Incorrect parameter count in the call to native function 'WITHIN(PO
|
||||
# MDEV-20009 Add CAST(expr AS pluggable_type)
|
||||
#
|
||||
SELECT CAST(1 AS GEOMETRY);
|
||||
ERROR HY000: Operator does not exists: 'CAST(expr AS geometry)'
|
||||
ERROR HY000: Operator does not exist: 'CAST(expr AS geometry)'
|
||||
SELECT CAST(1 AS GEOMETRYCOLLECTION);
|
||||
ERROR HY000: Operator does not exists: 'CAST(expr AS geometrycollection)'
|
||||
ERROR HY000: Operator does not exist: 'CAST(expr AS geometrycollection)'
|
||||
SELECT CAST(1 AS POINT);
|
||||
ERROR HY000: Operator does not exists: 'CAST(expr AS point)'
|
||||
ERROR HY000: Operator does not exist: 'CAST(expr AS point)'
|
||||
SELECT CAST(1 AS LINESTRING);
|
||||
ERROR HY000: Operator does not exists: 'CAST(expr AS linestring)'
|
||||
ERROR HY000: Operator does not exist: 'CAST(expr AS linestring)'
|
||||
SELECT CAST(1 AS POLYGON);
|
||||
ERROR HY000: Operator does not exists: 'CAST(expr AS polygon)'
|
||||
ERROR HY000: Operator does not exist: 'CAST(expr AS polygon)'
|
||||
SELECT CAST(1 AS MULTIPOINT);
|
||||
ERROR HY000: Operator does not exists: 'CAST(expr AS multipoint)'
|
||||
ERROR HY000: Operator does not exist: 'CAST(expr AS multipoint)'
|
||||
SELECT CAST(1 AS MULTILINESTRING);
|
||||
ERROR HY000: Operator does not exists: 'CAST(expr AS multilinestring)'
|
||||
ERROR HY000: Operator does not exist: 'CAST(expr AS multilinestring)'
|
||||
SELECT CAST(1 AS MULTIPOLYGON);
|
||||
ERROR HY000: Operator does not exists: 'CAST(expr AS multipolygon)'
|
||||
ERROR HY000: Operator does not exist: 'CAST(expr AS multipolygon)'
|
||||
SELECT CONVERT(1, GEOMETRY);
|
||||
ERROR HY000: Operator does not exists: 'CAST(expr AS geometry)'
|
||||
ERROR HY000: Operator does not exist: 'CAST(expr AS geometry)'
|
||||
SELECT CONVERT(1, GEOMETRYCOLLECTION);
|
||||
ERROR HY000: Operator does not exists: 'CAST(expr AS geometrycollection)'
|
||||
ERROR HY000: Operator does not exist: 'CAST(expr AS geometrycollection)'
|
||||
SELECT CONVERT(1, POINT);
|
||||
ERROR HY000: Operator does not exists: 'CAST(expr AS point)'
|
||||
ERROR HY000: Operator does not exist: 'CAST(expr AS point)'
|
||||
SELECT CONVERT(1, LINESTRING);
|
||||
ERROR HY000: Operator does not exists: 'CAST(expr AS linestring)'
|
||||
ERROR HY000: Operator does not exist: 'CAST(expr AS linestring)'
|
||||
SELECT CONVERT(1, POLYGON);
|
||||
ERROR HY000: Operator does not exists: 'CAST(expr AS polygon)'
|
||||
ERROR HY000: Operator does not exist: 'CAST(expr AS polygon)'
|
||||
SELECT CONVERT(1, MULTIPOINT);
|
||||
ERROR HY000: Operator does not exists: 'CAST(expr AS multipoint)'
|
||||
ERROR HY000: Operator does not exist: 'CAST(expr AS multipoint)'
|
||||
SELECT CONVERT(1, MULTILINESTRING);
|
||||
ERROR HY000: Operator does not exists: 'CAST(expr AS multilinestring)'
|
||||
ERROR HY000: Operator does not exist: 'CAST(expr AS multilinestring)'
|
||||
SELECT CONVERT(1, MULTIPOLYGON);
|
||||
ERROR HY000: Operator does not exists: 'CAST(expr AS multipolygon)'
|
||||
ERROR HY000: Operator does not exist: 'CAST(expr AS multipolygon)'
|
||||
#
|
||||
# MDEV-17832 Protocol: extensions for Pluggable types and JSON, GEOMETRY
|
||||
#
|
||||
|
@ -1,8 +1,4 @@
|
||||
SET DEBUG_SYNC='dispatch_command_end SIGNAL ready WAIT_FOR go';
|
||||
select 1;
|
||||
connect con1,localhost,root,,;
|
||||
SET DEBUG_SYNC='now wait_for ready';
|
||||
SET DEBUG_SYNC='now signal go';
|
||||
SHOW PROCESSLIST;
|
||||
Id User Host db Command Time State Info Progress
|
||||
# root # test Sleep # # NULL 0.000
|
||||
@ -10,8 +6,6 @@ Id User Host db Command Time State Info Progress
|
||||
SET DEBUG_SYNC='before_execute_sql_command SIGNAL ready WAIT_FOR go';
|
||||
SHOW PROCESSLIST;
|
||||
connection default;
|
||||
1
|
||||
1
|
||||
SET DEBUG_SYNC='now WAIT_FOR ready';
|
||||
KILL QUERY con_id;
|
||||
SET DEBUG_SYNC='now SIGNAL go';
|
||||
|
@ -4,23 +4,21 @@
|
||||
--source include/not_embedded.inc
|
||||
--source include/have_debug_sync.inc
|
||||
|
||||
# This is to ensure that the following SHOW PROCESSLIST does not show the query
|
||||
SET DEBUG_SYNC='dispatch_command_end SIGNAL ready WAIT_FOR go';
|
||||
--send select 1
|
||||
let $wait_condition=select count(*) = 1 from information_schema.processlist;
|
||||
source include/wait_condition.inc;
|
||||
|
||||
--connect (con1,localhost,root,,)
|
||||
SET DEBUG_SYNC='now wait_for ready';
|
||||
SET DEBUG_SYNC='now signal go';
|
||||
|
||||
--let $con_id = `SELECT CONNECTION_ID()`
|
||||
|
||||
let $wait_condition=select info is NULL from information_schema.processlist where id != $con_id;
|
||||
source include/wait_condition.inc;
|
||||
|
||||
--replace_result Execute Query
|
||||
--replace_column 1 # 3 # 6 # 7 #
|
||||
SHOW PROCESSLIST;
|
||||
SET DEBUG_SYNC='before_execute_sql_command SIGNAL ready WAIT_FOR go';
|
||||
send SHOW PROCESSLIST;
|
||||
--connection default
|
||||
--reap
|
||||
|
||||
# We must wait for the SHOW PROCESSLIST query to have started before sending
|
||||
# the kill. Otherwise, the KILL may be lost since it is reset at the start of
|
||||
# query execution.
|
||||
|
@ -0,0 +1,18 @@
|
||||
set global alter_algorithm=INPLACE;
|
||||
RENAME TABLE mysql.time_zone TO mysql.time_zone_BACKUP;
|
||||
RENAME TABLE mysql.time_zone_name TO mysql.time_zone_name_BACKUP;
|
||||
RENAME TABLE mysql.time_zone_transition TO mysql.time_zone_transition_BACKUP;
|
||||
RENAME TABLE mysql.time_zone_transition_type TO mysql.time_zone_transition_type_BACKUP;
|
||||
CREATE TABLE mysql.time_zone LIKE mysql.time_zone_BACKUP;
|
||||
CREATE TABLE mysql.time_zone_name LIKE mysql.time_zone_name_BACKUP;
|
||||
CREATE TABLE mysql.time_zone_transition LIKE mysql.time_zone_transition_BACKUP;
|
||||
CREATE TABLE mysql.time_zone_transition_type LIKE mysql.time_zone_transition_type_BACKUP;
|
||||
DROP TABLE mysql.time_zone;
|
||||
DROP TABLE mysql.time_zone_name;
|
||||
DROP TABLE mysql.time_zone_transition;
|
||||
DROP TABLE mysql.time_zone_transition_type;
|
||||
RENAME TABLE mysql.time_zone_BACKUP TO mysql.time_zone;
|
||||
RENAME TABLE mysql.time_zone_name_BACKUP TO mysql.time_zone_name;
|
||||
RENAME TABLE mysql.time_zone_transition_BACKUP TO mysql.time_zone_transition;
|
||||
RENAME TABLE mysql.time_zone_transition_type_BACKUP TO mysql.time_zone_transition_type;
|
||||
set global alter_algorithm=DEFAULT;
|
@ -0,0 +1,40 @@
|
||||
--source include/not_embedded.inc
|
||||
|
||||
# MDEV-33044 Loading time zones does not work with alter_algorithm INPLACE
|
||||
|
||||
set global alter_algorithm=INPLACE;
|
||||
|
||||
# Because loading timezones alters the mysql tables,
|
||||
# this test will leave mysql in a different state than when it started.
|
||||
# Furthermore, checksums on the various mysql.timezone_x tables will fail.
|
||||
|
||||
# Therefore we:
|
||||
# 1. Make "backups" of the existing tables by renaming them
|
||||
# 2. Make dummy clones of the tables we just backed up
|
||||
# 3. Load timezones with alterations made to the dummy clone tables
|
||||
# 4. Drop the newly made tables with changes made to them
|
||||
# 5. Restore the backed up tables so the checksums will pass
|
||||
|
||||
RENAME TABLE mysql.time_zone TO mysql.time_zone_BACKUP;
|
||||
RENAME TABLE mysql.time_zone_name TO mysql.time_zone_name_BACKUP;
|
||||
RENAME TABLE mysql.time_zone_transition TO mysql.time_zone_transition_BACKUP;
|
||||
RENAME TABLE mysql.time_zone_transition_type TO mysql.time_zone_transition_type_BACKUP;
|
||||
|
||||
CREATE TABLE mysql.time_zone LIKE mysql.time_zone_BACKUP;
|
||||
CREATE TABLE mysql.time_zone_name LIKE mysql.time_zone_name_BACKUP;
|
||||
CREATE TABLE mysql.time_zone_transition LIKE mysql.time_zone_transition_BACKUP;
|
||||
CREATE TABLE mysql.time_zone_transition_type LIKE mysql.time_zone_transition_type_BACKUP;
|
||||
|
||||
--exec $MYSQL_TZINFO_TO_SQL std_data/zoneinfo | $MYSQL mysql
|
||||
|
||||
DROP TABLE mysql.time_zone;
|
||||
DROP TABLE mysql.time_zone_name;
|
||||
DROP TABLE mysql.time_zone_transition;
|
||||
DROP TABLE mysql.time_zone_transition_type;
|
||||
|
||||
RENAME TABLE mysql.time_zone_BACKUP TO mysql.time_zone;
|
||||
RENAME TABLE mysql.time_zone_name_BACKUP TO mysql.time_zone_name;
|
||||
RENAME TABLE mysql.time_zone_transition_BACKUP TO mysql.time_zone_transition;
|
||||
RENAME TABLE mysql.time_zone_transition_type_BACKUP TO mysql.time_zone_transition_type;
|
||||
|
||||
set global alter_algorithm=DEFAULT;
|
@ -2431,6 +2431,9 @@ create table t1 (a int) engine=myisam;
|
||||
create table t2 (a int) stats_persistent=0, engine=innodb;
|
||||
insert into t1 values (1);
|
||||
insert into t2 values (1);
|
||||
connect con1, localhost, root;
|
||||
start transaction with consistent snapshot;
|
||||
connection default;
|
||||
SET DEBUG_SYNC= 'after_open_table_mdl_shared SIGNAL table_opened WAIT_FOR grlwait execute 2';
|
||||
update t1,t2 set t1.a=2,t2.a=3;
|
||||
connection con2;
|
||||
@ -2462,6 +2465,7 @@ connection default;
|
||||
SET DEBUG_SYNC= 'RESET';
|
||||
drop table t1,t2;
|
||||
disconnect con2;
|
||||
disconnect con1;
|
||||
#
|
||||
# Bug#50786 Assertion `thd->mdl_context.trans_sentinel() == __null'
|
||||
# failed in open_ltable()
|
||||
|
@ -3115,6 +3115,12 @@ create table t2 (a int) stats_persistent=0, engine=innodb;
|
||||
insert into t1 values (1);
|
||||
insert into t2 values (1);
|
||||
|
||||
connect (con1, localhost, root);
|
||||
# disable innodb purge thread, otherwise it might start purging t2,
|
||||
# and will take an mdl, affecting metadata_lock_info output.
|
||||
start transaction with consistent snapshot;
|
||||
connection default;
|
||||
|
||||
SET DEBUG_SYNC= 'after_open_table_mdl_shared SIGNAL table_opened WAIT_FOR grlwait execute 2';
|
||||
--send update t1,t2 set t1.a=2,t2.a=3
|
||||
|
||||
@ -3160,6 +3166,7 @@ connection default;
|
||||
SET DEBUG_SYNC= 'RESET';
|
||||
drop table t1,t2;
|
||||
disconnect con2;
|
||||
disconnect con1;
|
||||
|
||||
--echo #
|
||||
--echo # Bug#50786 Assertion `thd->mdl_context.trans_sentinel() == __null'
|
||||
|
@ -18,6 +18,8 @@ execute immediate if(@wsrep_cannot_replicate_tz, 'select ENGINE into @time_zone_
|
||||
execute immediate if(@wsrep_cannot_replicate_tz, 'ALTER TABLE time_zone_transition ENGINE=InnoDB', 'do 0');
|
||||
execute immediate if(@wsrep_cannot_replicate_tz, 'select ENGINE into @time_zone_transition_type_engine from information_schema.TABLES where TABLE_SCHEMA=DATABASE() and TABLE_NAME=''time_zone_transition_type''', 'do 0');
|
||||
execute immediate if(@wsrep_cannot_replicate_tz, 'ALTER TABLE time_zone_transition_type ENGINE=InnoDB', 'do 0');
|
||||
SET @old_alter_alg=@@SESSION.alter_algorithm;
|
||||
SET session alter_algorithm='COPY';
|
||||
TRUNCATE TABLE time_zone;
|
||||
TRUNCATE TABLE time_zone_name;
|
||||
TRUNCATE TABLE time_zone_transition;
|
||||
@ -52,6 +54,7 @@ execute immediate if(@wsrep_cannot_replicate_tz, concat('ALTER TABLE time_zone E
|
||||
execute immediate if(@wsrep_cannot_replicate_tz, concat('ALTER TABLE time_zone_name ENGINE=', @time_zone_name_engine), 'do 0');
|
||||
execute immediate if(@wsrep_cannot_replicate_tz, concat('ALTER TABLE time_zone_transition ENGINE=', @time_zone_transition_engine, ', ORDER BY Time_zone_id, Transition_time'), 'do 0');
|
||||
execute immediate if(@wsrep_cannot_replicate_tz, concat('ALTER TABLE time_zone_transition_type ENGINE=', @time_zone_transition_type_engine, ', ORDER BY Time_zone_id, Transition_type_id'), 'do 0');
|
||||
SET session alter_algorithm=@old_alter_alg;
|
||||
#
|
||||
# MDEV-28263: mariadb-tzinfo-to-sql improve wsrep and binlog cases
|
||||
#
|
||||
@ -67,6 +70,8 @@ execute immediate if(@wsrep_cannot_replicate_tz, 'select ENGINE into @time_zone_
|
||||
execute immediate if(@wsrep_cannot_replicate_tz, 'ALTER TABLE time_zone_transition ENGINE=InnoDB', 'do 0');
|
||||
execute immediate if(@wsrep_cannot_replicate_tz, 'select ENGINE into @time_zone_transition_type_engine from information_schema.TABLES where TABLE_SCHEMA=DATABASE() and TABLE_NAME=''time_zone_transition_type''', 'do 0');
|
||||
execute immediate if(@wsrep_cannot_replicate_tz, 'ALTER TABLE time_zone_transition_type ENGINE=InnoDB', 'do 0');
|
||||
SET @old_alter_alg=@@SESSION.alter_algorithm;
|
||||
SET session alter_algorithm='COPY';
|
||||
TRUNCATE TABLE time_zone;
|
||||
TRUNCATE TABLE time_zone_name;
|
||||
TRUNCATE TABLE time_zone_transition;
|
||||
@ -98,6 +103,7 @@ execute immediate if(@wsrep_cannot_replicate_tz, concat('ALTER TABLE time_zone E
|
||||
execute immediate if(@wsrep_cannot_replicate_tz, concat('ALTER TABLE time_zone_name ENGINE=', @time_zone_name_engine), 'do 0');
|
||||
execute immediate if(@wsrep_cannot_replicate_tz, concat('ALTER TABLE time_zone_transition ENGINE=', @time_zone_transition_engine, ', ORDER BY Time_zone_id, Transition_time'), 'do 0');
|
||||
execute immediate if(@wsrep_cannot_replicate_tz, concat('ALTER TABLE time_zone_transition_type ENGINE=', @time_zone_transition_type_engine, ', ORDER BY Time_zone_id, Transition_type_id'), 'do 0');
|
||||
SET session alter_algorithm=@old_alter_alg;
|
||||
SELECT COUNT(*) FROM time_zone;
|
||||
COUNT(*)
|
||||
2
|
||||
@ -123,6 +129,8 @@ execute immediate if(@wsrep_is_on, 'SET @save_wsrep_on=@@WSREP_ON, WSREP_ON=OFF'
|
||||
SET @save_sql_log_bin=@@SQL_LOG_BIN;
|
||||
SET SESSION SQL_LOG_BIN=0;
|
||||
SET @wsrep_cannot_replicate_tz=0;
|
||||
SET @old_alter_alg=@@SESSION.alter_algorithm;
|
||||
SET session alter_algorithm='COPY';
|
||||
TRUNCATE TABLE time_zone;
|
||||
TRUNCATE TABLE time_zone_name;
|
||||
TRUNCATE TABLE time_zone_transition;
|
||||
@ -152,6 +160,7 @@ execute immediate if(@wsrep_cannot_replicate_tz, 'do 0','ALTER TABLE time_zone_t
|
||||
execute immediate if(@wsrep_cannot_replicate_tz, 'do 0','ALTER TABLE time_zone_transition_type ORDER BY Time_zone_id, Transition_type_id');
|
||||
SET SESSION SQL_LOG_BIN=@save_sql_log_bin;
|
||||
execute immediate if(@wsrep_is_on, 'SET SESSION WSREP_ON=@save_wsrep_on', 'do 0');
|
||||
SET session alter_algorithm=@old_alter_alg;
|
||||
SELECT COUNT(*) FROM time_zone;
|
||||
COUNT(*)
|
||||
2
|
||||
@ -505,6 +514,8 @@ execute immediate if(@wsrep_cannot_replicate_tz, 'select ENGINE into @time_zone_
|
||||
execute immediate if(@wsrep_cannot_replicate_tz, 'ALTER TABLE time_zone_transition ENGINE=InnoDB', 'do 0');
|
||||
execute immediate if(@wsrep_cannot_replicate_tz, 'select ENGINE into @time_zone_transition_type_engine from information_schema.TABLES where TABLE_SCHEMA=DATABASE() and TABLE_NAME=''time_zone_transition_type''', 'do 0');
|
||||
execute immediate if(@wsrep_cannot_replicate_tz, 'ALTER TABLE time_zone_transition_type ENGINE=InnoDB', 'do 0');
|
||||
SET @old_alter_alg=@@SESSION.alter_algorithm;
|
||||
SET session alter_algorithm='COPY';
|
||||
TRUNCATE TABLE time_zone;
|
||||
TRUNCATE TABLE time_zone_name;
|
||||
TRUNCATE TABLE time_zone_transition;
|
||||
@ -522,6 +533,7 @@ execute immediate if(@wsrep_cannot_replicate_tz, concat('ALTER TABLE time_zone E
|
||||
execute immediate if(@wsrep_cannot_replicate_tz, concat('ALTER TABLE time_zone_name ENGINE=', @time_zone_name_engine), 'do 0');
|
||||
execute immediate if(@wsrep_cannot_replicate_tz, concat('ALTER TABLE time_zone_transition ENGINE=', @time_zone_transition_engine, ', ORDER BY Time_zone_id, Transition_time'), 'do 0');
|
||||
execute immediate if(@wsrep_cannot_replicate_tz, concat('ALTER TABLE time_zone_transition_type ENGINE=', @time_zone_transition_type_engine, ', ORDER BY Time_zone_id, Transition_type_id'), 'do 0');
|
||||
SET session alter_algorithm=@old_alter_alg;
|
||||
DROP TABLE baseline;
|
||||
DROP TABLE time_zone;
|
||||
DROP TABLE time_zone_name;
|
||||
|
@ -4557,6 +4557,9 @@ sub extract_warning_lines ($$) {
|
||||
qr/sql_type\.cc.* runtime error: member call.*object.* 'Type_collection'/,
|
||||
);
|
||||
|
||||
push @antipatterns, qr/though there are still open handles to table/
|
||||
if $mysql_version_id < 100600;
|
||||
|
||||
my $matched_lines= [];
|
||||
LINE: foreach my $line ( @lines )
|
||||
{
|
||||
@ -5711,6 +5714,8 @@ sub start_mysqltest ($) {
|
||||
mtr_add_arg($args, "--result-file=%s", $tinfo->{'result_file'});
|
||||
}
|
||||
|
||||
mtr_add_arg($args, "--wait-for-pos-timeout=%d", $opt_debug_sync_timeout);
|
||||
|
||||
client_debug_arg($args, "mysqltest");
|
||||
|
||||
if ( $opt_record )
|
||||
|
@ -33,37 +33,37 @@ ERROR 42000: Incorrect parameter count in the call to native function 'WITHIN(PO
|
||||
# MDEV-20009 Add CAST(expr AS pluggable_type)
|
||||
#
|
||||
SELECT CAST(1 AS GEOMETRY);
|
||||
ERROR HY000: Operator does not exists: 'CAST(expr AS geometry)'
|
||||
ERROR HY000: Operator does not exist: 'CAST(expr AS geometry)'
|
||||
SELECT CAST(1 AS GEOMETRYCOLLECTION);
|
||||
ERROR HY000: Operator does not exists: 'CAST(expr AS geometrycollection)'
|
||||
ERROR HY000: Operator does not exist: 'CAST(expr AS geometrycollection)'
|
||||
SELECT CAST(1 AS POINT);
|
||||
ERROR HY000: Operator does not exists: 'CAST(expr AS point)'
|
||||
ERROR HY000: Operator does not exist: 'CAST(expr AS point)'
|
||||
SELECT CAST(1 AS LINESTRING);
|
||||
ERROR HY000: Operator does not exists: 'CAST(expr AS linestring)'
|
||||
ERROR HY000: Operator does not exist: 'CAST(expr AS linestring)'
|
||||
SELECT CAST(1 AS POLYGON);
|
||||
ERROR HY000: Operator does not exists: 'CAST(expr AS polygon)'
|
||||
ERROR HY000: Operator does not exist: 'CAST(expr AS polygon)'
|
||||
SELECT CAST(1 AS MULTIPOINT);
|
||||
ERROR HY000: Operator does not exists: 'CAST(expr AS multipoint)'
|
||||
ERROR HY000: Operator does not exist: 'CAST(expr AS multipoint)'
|
||||
SELECT CAST(1 AS MULTILINESTRING);
|
||||
ERROR HY000: Operator does not exists: 'CAST(expr AS multilinestring)'
|
||||
ERROR HY000: Operator does not exist: 'CAST(expr AS multilinestring)'
|
||||
SELECT CAST(1 AS MULTIPOLYGON);
|
||||
ERROR HY000: Operator does not exists: 'CAST(expr AS multipolygon)'
|
||||
ERROR HY000: Operator does not exist: 'CAST(expr AS multipolygon)'
|
||||
SELECT CONVERT(1, GEOMETRY);
|
||||
ERROR HY000: Operator does not exists: 'CAST(expr AS geometry)'
|
||||
ERROR HY000: Operator does not exist: 'CAST(expr AS geometry)'
|
||||
SELECT CONVERT(1, GEOMETRYCOLLECTION);
|
||||
ERROR HY000: Operator does not exists: 'CAST(expr AS geometrycollection)'
|
||||
ERROR HY000: Operator does not exist: 'CAST(expr AS geometrycollection)'
|
||||
SELECT CONVERT(1, POINT);
|
||||
ERROR HY000: Operator does not exists: 'CAST(expr AS point)'
|
||||
ERROR HY000: Operator does not exist: 'CAST(expr AS point)'
|
||||
SELECT CONVERT(1, LINESTRING);
|
||||
ERROR HY000: Operator does not exists: 'CAST(expr AS linestring)'
|
||||
ERROR HY000: Operator does not exist: 'CAST(expr AS linestring)'
|
||||
SELECT CONVERT(1, POLYGON);
|
||||
ERROR HY000: Operator does not exists: 'CAST(expr AS polygon)'
|
||||
ERROR HY000: Operator does not exist: 'CAST(expr AS polygon)'
|
||||
SELECT CONVERT(1, MULTIPOINT);
|
||||
ERROR HY000: Operator does not exists: 'CAST(expr AS multipoint)'
|
||||
ERROR HY000: Operator does not exist: 'CAST(expr AS multipoint)'
|
||||
SELECT CONVERT(1, MULTILINESTRING);
|
||||
ERROR HY000: Operator does not exists: 'CAST(expr AS multilinestring)'
|
||||
ERROR HY000: Operator does not exist: 'CAST(expr AS multilinestring)'
|
||||
SELECT CONVERT(1, MULTIPOLYGON);
|
||||
ERROR HY000: Operator does not exists: 'CAST(expr AS multipolygon)'
|
||||
ERROR HY000: Operator does not exist: 'CAST(expr AS multipolygon)'
|
||||
#
|
||||
# End of 10.5 tests
|
||||
#
|
||||
|
@ -21,7 +21,6 @@ galera_concurrent_ctas : MDEV-32779 galera_concurrent_ctas: assertion in the gal
|
||||
galera_as_slave_replay : MDEV-32780 galera_as_slave_replay: assertion in the wsrep::transaction::before_rollback()
|
||||
galera_slave_replay : MDEV-32780 galera_as_slave_replay: assertion in the wsrep::transaction::before_rollback()
|
||||
galera_sst_mysqldump_with_key : MDEV-32782 galera_sst_mysqldump_with_key test failed
|
||||
mdev-31285 : MDEV-25089 Assertion `error.len > 0' failed in galera::ReplicatorSMM::handle_apply_error()
|
||||
galera_var_ignore_apply_errors : MENT-1997 galera_var_ignore_apply_errors test freezes
|
||||
MW-402 : temporarily disabled at the request of Codership
|
||||
galera_desync_overlapped : MDEV-21538 galera_desync_overlapped MTR failed: Result content mismatch
|
||||
|
41
mysql-test/suite/galera/r/MDEV-33828.result
Normal file
41
mysql-test/suite/galera/r/MDEV-33828.result
Normal file
@ -0,0 +1,41 @@
|
||||
connection node_2;
|
||||
connection node_1;
|
||||
SET AUTOCOMMIT=ON;
|
||||
SELECT @@autocommit;
|
||||
@@autocommit
|
||||
1
|
||||
SET LOCAL enforce_storage_engine=InnoDB;
|
||||
CREATE TABLE t1(id int not null primary key auto_increment, name varchar(64)) ENGINE=InnoDB;
|
||||
INSERT INTO t1(name) VALUES ('name1'),('name3'),('name6'),('name2');
|
||||
CREATE PROCEDURE sel_proc()
|
||||
BEGIN
|
||||
DECLARE CONTINUE HANDLER FOR SQLEXCEPTION BEGIN END;
|
||||
SELECT * FROM t1;
|
||||
END|
|
||||
CREATE PROCEDURE ins_proc()
|
||||
BEGIN
|
||||
DECLARE CONTINUE HANDLER FOR SQLEXCEPTION BEGIN END;
|
||||
INSERT INTO t1 VALUES ('name_proc');
|
||||
END|
|
||||
SET AUTOCOMMIT=OFF;
|
||||
SELECT @@autocommit;
|
||||
@@autocommit
|
||||
0
|
||||
START TRANSACTION;
|
||||
insert into t1(name) values('name10');
|
||||
select param_list, returns, db, type from mysql.proc where name='sel_proc';
|
||||
param_list returns db type
|
||||
test PROCEDURE
|
||||
call ins_proc();
|
||||
COMMIT;
|
||||
SET AUTOCOMMIT=ON;
|
||||
SELECT * FROM t1;
|
||||
id name
|
||||
1 name1
|
||||
3 name3
|
||||
5 name6
|
||||
7 name2
|
||||
9 name10
|
||||
DROP TABLE t1;
|
||||
DROP PROCEDURE sel_proc;
|
||||
DROP PROCEDURE ins_proc;
|
52
mysql-test/suite/galera/r/galera_table_with_hyphen.result
Normal file
52
mysql-test/suite/galera/r/galera_table_with_hyphen.result
Normal file
@ -0,0 +1,52 @@
|
||||
connection node_2;
|
||||
connection node_1;
|
||||
connection node_1;
|
||||
set wsrep_sync_wait=0;
|
||||
connect node_1a, 127.0.0.1, root, , test, $NODE_MYPORT_1;
|
||||
SET SESSION wsrep_sync_wait = 0;
|
||||
connection node_1;
|
||||
SET GLOBAL wsrep_slave_threads=2;
|
||||
CREATE TABLE `par-ent` ( id INT AUTO_INCREMENT PRIMARY KEY, j INT) ENGINE=InnoDB;
|
||||
CREATE TABLE `child` (id INT AUTO_INCREMENT PRIMARY KEY, parent_id INT, j INT, FOREIGN KEY (parent_id) REFERENCES `par-ent`(id)) ENGINE=InnoDB;
|
||||
INSERT INTO `par-ent` VALUES (23,0);
|
||||
connection node_2;
|
||||
connection node_1a;
|
||||
SET GLOBAL DEBUG_DBUG='+d,wsrep_ha_write_row';
|
||||
connection node_2;
|
||||
INSERT INTO `child` VALUES (21,23,0),(22,23,0),(23,23,0);
|
||||
connection node_1a;
|
||||
SET DEBUG_SYNC='now WAIT_FOR wsrep_ha_write_row_reached';
|
||||
connection node_2;
|
||||
UPDATE `par-ent` SET j=2 WHERE id=23;
|
||||
connection node_1a;
|
||||
SET GLOBAL DEBUG_DBUG='-d,wsrep_ha_write_row';
|
||||
SET DEBUG_SYNC='now SIGNAL wsrep_ha_write_row_continue';
|
||||
SET GLOBAL DEBUG_DBUG="RESET";
|
||||
SET DEBUG_SYNC = 'RESET';
|
||||
SET GLOBAL wsrep_slave_threads=DEFAULT;
|
||||
connection node_2;
|
||||
drop table `child`;
|
||||
drop table `par-ent`;
|
||||
connection node_1;
|
||||
SET GLOBAL wsrep_slave_threads=2;
|
||||
CREATE TABLE `p-arent-` ( id INT AUTO_INCREMENT PRIMARY KEY, j INT) ENGINE=InnoDB;
|
||||
CREATE TABLE `c-hild` (id INT AUTO_INCREMENT PRIMARY KEY, parent_id INT, j INT, FOREIGN KEY (parent_id) REFERENCES `p-arent-`(id)) ENGINE=InnoDB;
|
||||
INSERT INTO `p-arent-` VALUES (23,0);
|
||||
connection node_2;
|
||||
connection node_1a;
|
||||
SET GLOBAL DEBUG_DBUG='+d,wsrep_ha_write_row';
|
||||
connection node_2;
|
||||
INSERT INTO `c-hild` VALUES (21,23,0),(22,23,0),(23,23,0);
|
||||
connection node_1a;
|
||||
SET DEBUG_SYNC='now WAIT_FOR wsrep_ha_write_row_reached';
|
||||
connection node_2;
|
||||
UPDATE `p-arent-` SET j=2 WHERE id=23;
|
||||
connection node_1a;
|
||||
SET GLOBAL DEBUG_DBUG='-d,wsrep_ha_write_row';
|
||||
SET DEBUG_SYNC='now SIGNAL wsrep_ha_write_row_continue';
|
||||
SET GLOBAL DEBUG_DBUG="RESET";
|
||||
SET DEBUG_SYNC = 'RESET';
|
||||
SET GLOBAL wsrep_slave_threads=DEFAULT;
|
||||
connection node_2;
|
||||
drop table `c-hild`;
|
||||
drop table `p-arent-`;
|
@ -78,7 +78,6 @@ INSERT INTO t3(id) SELECT seq FROM seq_1_to_1000;
|
||||
REPLACE INTO t4 SELECT * FROM t1;
|
||||
REPLACE INTO t5 SELECT * FROM t2;
|
||||
REPLACE INTO t6 SELECT * FROM t3;
|
||||
ERROR HY000: Transactional commit not supported by involved engine(s)
|
||||
REPLACE INTO t7 SELECT * FROM t2;
|
||||
REPLACE INTO t8 SELECT * FROM t3;
|
||||
SELECT COUNT(*) AS EXPECT_1000 FROM t1;
|
||||
@ -96,9 +95,9 @@ EXPECT_1000
|
||||
SELECT COUNT(*) AS EXPECT_1000 FROM t5;
|
||||
EXPECT_1000
|
||||
1000
|
||||
SELECT COUNT(*) AS EXPECT_0 FROM t6;
|
||||
EXPECT_0
|
||||
0
|
||||
SELECT COUNT(*) AS EXPECT_1000 FROM t6;
|
||||
EXPECT_1000
|
||||
1000
|
||||
SELECT COUNT(*) AS EXPECT_1000 FROM t7;
|
||||
EXPECT_1000
|
||||
1000
|
||||
@ -121,9 +120,9 @@ EXPECT_1000
|
||||
SELECT COUNT(*) AS EXPECT_1000 FROM t5;
|
||||
EXPECT_1000
|
||||
1000
|
||||
SELECT COUNT(*) AS EXPECT_0 FROM t6;
|
||||
EXPECT_0
|
||||
0
|
||||
SELECT COUNT(*) AS EXPECT_1000 FROM t6;
|
||||
EXPECT_1000
|
||||
1000
|
||||
SELECT COUNT(*) AS EXPECT_1000 FROM t7;
|
||||
EXPECT_1000
|
||||
1000
|
||||
@ -147,7 +146,6 @@ INSERT INTO t3(id) SELECT seq FROM seq_1_to_1000;
|
||||
INSERT INTO t4 SELECT * FROM t1;
|
||||
INSERT INTO t5 SELECT * FROM t2;
|
||||
INSERT INTO t6 SELECT * FROM t3;
|
||||
ERROR HY000: Transactional commit not supported by involved engine(s)
|
||||
INSERT INTO t7 SELECT * FROM t2;
|
||||
INSERT INTO t8 SELECT * FROM t3;
|
||||
SELECT COUNT(*) AS EXPECT_1000 FROM t1;
|
||||
@ -165,9 +163,9 @@ EXPECT_1000
|
||||
SELECT COUNT(*) AS EXPECT_1000 FROM t5;
|
||||
EXPECT_1000
|
||||
1000
|
||||
SELECT COUNT(*) AS EXPECT_0 FROM t6;
|
||||
EXPECT_0
|
||||
0
|
||||
SELECT COUNT(*) AS EXPECT_1000 FROM t6;
|
||||
EXPECT_1000
|
||||
1000
|
||||
SELECT COUNT(*) AS EXPECT_1000 FROM t7;
|
||||
EXPECT_1000
|
||||
1000
|
||||
@ -190,9 +188,9 @@ EXPECT_1000
|
||||
SELECT COUNT(*) AS EXPECT_1000 FROM t5;
|
||||
EXPECT_1000
|
||||
1000
|
||||
SELECT COUNT(*) AS EXPECT_0 FROM t6;
|
||||
EXPECT_0
|
||||
0
|
||||
SELECT COUNT(*) AS EXPECT_1000 FROM t6;
|
||||
EXPECT_1000
|
||||
1000
|
||||
SELECT COUNT(*) AS EXPECT_1000 FROM t7;
|
||||
EXPECT_1000
|
||||
1000
|
||||
|
@ -63,6 +63,7 @@ push @::global_suppressions,
|
||||
qr(WSREP: Failed to remove page file .*),
|
||||
qr(WSREP: wsrep_sst_method is set to 'mysqldump' yet mysqld bind_address is set to .*),
|
||||
qr|WSREP: Sending JOIN failed: -107 \(Transport endpoint is not connected\). Will retry in new primary component.|,
|
||||
qr|WSREP: Send action {.* STATE_REQUEST} returned -107 \(Transport endpoint is not connected\)|,
|
||||
qr|WSREP: Trying to continue unpaused monitor|,
|
||||
qr|WSREP: Wait for gtid returned error 3 while waiting for prior transactions to commit before setting position|,
|
||||
qr|WSREP: Failed to report last committed|,
|
||||
|
4
mysql-test/suite/galera/t/MDEV-33828.cnf
Normal file
4
mysql-test/suite/galera/t/MDEV-33828.cnf
Normal file
@ -0,0 +1,4 @@
|
||||
!include ../galera_2nodes.cnf
|
||||
|
||||
[mysqld]
|
||||
log-bin
|
45
mysql-test/suite/galera/t/MDEV-33828.test
Normal file
45
mysql-test/suite/galera/t/MDEV-33828.test
Normal file
@ -0,0 +1,45 @@
|
||||
--source include/galera_cluster.inc
|
||||
--source include/have_innodb.inc
|
||||
--source include/have_aria.inc
|
||||
|
||||
SET AUTOCOMMIT=ON;
|
||||
SELECT @@autocommit;
|
||||
|
||||
SET LOCAL enforce_storage_engine=InnoDB;
|
||||
|
||||
CREATE TABLE t1(id int not null primary key auto_increment, name varchar(64)) ENGINE=InnoDB;
|
||||
INSERT INTO t1(name) VALUES ('name1'),('name3'),('name6'),('name2');
|
||||
|
||||
DELIMITER |;
|
||||
CREATE PROCEDURE sel_proc()
|
||||
BEGIN
|
||||
DECLARE CONTINUE HANDLER FOR SQLEXCEPTION BEGIN END;
|
||||
SELECT * FROM t1;
|
||||
END|
|
||||
|
||||
CREATE PROCEDURE ins_proc()
|
||||
BEGIN
|
||||
DECLARE CONTINUE HANDLER FOR SQLEXCEPTION BEGIN END;
|
||||
INSERT INTO t1 VALUES ('name_proc');
|
||||
END|
|
||||
DELIMITER ;|
|
||||
|
||||
SET AUTOCOMMIT=OFF;
|
||||
SELECT @@autocommit;
|
||||
|
||||
START TRANSACTION;
|
||||
|
||||
insert into t1(name) values('name10');
|
||||
|
||||
select param_list, returns, db, type from mysql.proc where name='sel_proc';
|
||||
|
||||
call ins_proc();
|
||||
|
||||
COMMIT;
|
||||
|
||||
SET AUTOCOMMIT=ON;
|
||||
|
||||
SELECT * FROM t1;
|
||||
DROP TABLE t1;
|
||||
DROP PROCEDURE sel_proc;
|
||||
DROP PROCEDURE ins_proc;
|
48
mysql-test/suite/galera/t/galera_table_with_hyphen.inc
Normal file
48
mysql-test/suite/galera/t/galera_table_with_hyphen.inc
Normal file
@ -0,0 +1,48 @@
|
||||
#
|
||||
# parameters:
|
||||
# $fk_child - child table name
|
||||
# $fk_parent - parent table name
|
||||
#
|
||||
--connection node_1
|
||||
SET GLOBAL wsrep_slave_threads=2;
|
||||
|
||||
--eval CREATE TABLE `$fk_parent` ( id INT AUTO_INCREMENT PRIMARY KEY, j INT) ENGINE=InnoDB
|
||||
|
||||
--eval CREATE TABLE `$fk_child` (id INT AUTO_INCREMENT PRIMARY KEY, parent_id INT, j INT, FOREIGN KEY (parent_id) REFERENCES `$fk_parent`(id)) ENGINE=InnoDB
|
||||
|
||||
--eval INSERT INTO `$fk_parent` VALUES (23,0)
|
||||
|
||||
--connection node_2
|
||||
--let $wait_condition = SELECT COUNT(*) = 1 FROM `$fk_parent`;
|
||||
--source include/wait_condition.inc
|
||||
|
||||
--connection node_1a
|
||||
SET GLOBAL DEBUG_DBUG='+d,wsrep_ha_write_row';
|
||||
|
||||
--connection node_2
|
||||
--eval INSERT INTO `$fk_child` VALUES (21,23,0),(22,23,0),(23,23,0)
|
||||
|
||||
--connection node_1a
|
||||
SET DEBUG_SYNC='now WAIT_FOR wsrep_ha_write_row_reached';
|
||||
|
||||
--let $wsrep_received_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_received'`
|
||||
|
||||
--connection node_2
|
||||
--eval UPDATE `$fk_parent` SET j=2 WHERE id=23
|
||||
|
||||
--connection node_1a
|
||||
--let $wait_condition = SELECT VARIABLE_VALUE = $wsrep_received_before + 1 FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_received'
|
||||
--source include/wait_condition.inc
|
||||
|
||||
SET GLOBAL DEBUG_DBUG='-d,wsrep_ha_write_row';
|
||||
SET DEBUG_SYNC='now SIGNAL wsrep_ha_write_row_continue';
|
||||
|
||||
SET GLOBAL DEBUG_DBUG="RESET";
|
||||
SET DEBUG_SYNC = 'RESET';
|
||||
|
||||
SET GLOBAL wsrep_slave_threads=DEFAULT;
|
||||
|
||||
--connection node_2
|
||||
--eval drop table `$fk_child`
|
||||
--eval drop table `$fk_parent`
|
||||
|
34
mysql-test/suite/galera/t/galera_table_with_hyphen.test
Normal file
34
mysql-test/suite/galera/t/galera_table_with_hyphen.test
Normal file
@ -0,0 +1,34 @@
|
||||
--source include/galera_cluster.inc
|
||||
--source include/have_innodb.inc
|
||||
--source include/have_debug.inc
|
||||
--source include/have_debug_sync.inc
|
||||
|
||||
#
|
||||
# Testing how tables and databases with special characters
|
||||
# are treated in certification
|
||||
#
|
||||
# The test creates two tables having foreign key constraint
|
||||
# reference and executes two transactions which modify
|
||||
# same rows. The same test is executed with different names
|
||||
# containin special characters to see if the certification
|
||||
# can detect the conflicts
|
||||
#
|
||||
# Actual test is in include file galera_table_with_hyphen.inc
|
||||
# It create the test tables from parameters $fk_child and
|
||||
# $fk_parent
|
||||
#
|
||||
--connection node_1
|
||||
set wsrep_sync_wait=0;
|
||||
|
||||
--connect node_1a, 127.0.0.1, root, , test, $NODE_MYPORT_1
|
||||
SET SESSION wsrep_sync_wait = 0;
|
||||
|
||||
--let $fk_child = child
|
||||
--let $fk_parent = par-ent
|
||||
|
||||
--source galera_table_with_hyphen.inc
|
||||
|
||||
--let $fk_child = c-hild
|
||||
--let $fk_parent = p-arent-
|
||||
|
||||
--source galera_table_with_hyphen.inc
|
@ -79,8 +79,6 @@ INSERT INTO t3(id) SELECT seq FROM seq_1_to_1000;
|
||||
|
||||
REPLACE INTO t4 SELECT * FROM t1;
|
||||
REPLACE INTO t5 SELECT * FROM t2;
|
||||
# For some reason Aria storage engine does register_ha
|
||||
--error ER_ERROR_DURING_COMMIT
|
||||
REPLACE INTO t6 SELECT * FROM t3;
|
||||
REPLACE INTO t7 SELECT * FROM t2;
|
||||
REPLACE INTO t8 SELECT * FROM t3;
|
||||
@ -90,7 +88,7 @@ SELECT COUNT(*) AS EXPECT_1000 FROM t2;
|
||||
SELECT COUNT(*) AS EXPECT_1000 FROM t3;
|
||||
SELECT COUNT(*) AS EXPECT_1000 FROM t4;
|
||||
SELECT COUNT(*) AS EXPECT_1000 FROM t5;
|
||||
SELECT COUNT(*) AS EXPECT_0 FROM t6;
|
||||
SELECT COUNT(*) AS EXPECT_1000 FROM t6;
|
||||
SELECT COUNT(*) AS EXPECT_1000 FROM t7;
|
||||
SELECT COUNT(*) AS EXPECT_1000 FROM t8;
|
||||
|
||||
@ -105,7 +103,7 @@ SELECT COUNT(*) AS EXPECT_1000 FROM t2;
|
||||
SELECT COUNT(*) AS EXPECT_1000 FROM t3;
|
||||
SELECT COUNT(*) AS EXPECT_1000 FROM t4;
|
||||
SELECT COUNT(*) AS EXPECT_1000 FROM t5;
|
||||
SELECT COUNT(*) AS EXPECT_0 FROM t6;
|
||||
SELECT COUNT(*) AS EXPECT_1000 FROM t6;
|
||||
SELECT COUNT(*) AS EXPECT_1000 FROM t7;
|
||||
SELECT COUNT(*) AS EXPECT_1000 FROM t8;
|
||||
|
||||
@ -129,8 +127,6 @@ INSERT INTO t3(id) SELECT seq FROM seq_1_to_1000;
|
||||
|
||||
INSERT INTO t4 SELECT * FROM t1;
|
||||
INSERT INTO t5 SELECT * FROM t2;
|
||||
# For some reason Aria storage engine does register_ha
|
||||
--error ER_ERROR_DURING_COMMIT
|
||||
INSERT INTO t6 SELECT * FROM t3;
|
||||
INSERT INTO t7 SELECT * FROM t2;
|
||||
INSERT INTO t8 SELECT * FROM t3;
|
||||
@ -140,7 +136,7 @@ SELECT COUNT(*) AS EXPECT_1000 FROM t2;
|
||||
SELECT COUNT(*) AS EXPECT_1000 FROM t3;
|
||||
SELECT COUNT(*) AS EXPECT_1000 FROM t4;
|
||||
SELECT COUNT(*) AS EXPECT_1000 FROM t5;
|
||||
SELECT COUNT(*) AS EXPECT_0 FROM t6;
|
||||
SELECT COUNT(*) AS EXPECT_1000 FROM t6;
|
||||
SELECT COUNT(*) AS EXPECT_1000 FROM t7;
|
||||
SELECT COUNT(*) AS EXPECT_1000 FROM t8;
|
||||
|
||||
@ -155,7 +151,7 @@ SELECT COUNT(*) AS EXPECT_1000 FROM t2;
|
||||
SELECT COUNT(*) AS EXPECT_1000 FROM t3;
|
||||
SELECT COUNT(*) AS EXPECT_1000 FROM t4;
|
||||
SELECT COUNT(*) AS EXPECT_1000 FROM t5;
|
||||
SELECT COUNT(*) AS EXPECT_0 FROM t6;
|
||||
SELECT COUNT(*) AS EXPECT_1000 FROM t6;
|
||||
SELECT COUNT(*) AS EXPECT_1000 FROM t7;
|
||||
SELECT COUNT(*) AS EXPECT_1000 FROM t8;
|
||||
|
||||
|
@ -1,4 +1,5 @@
|
||||
--source include/galera_cluster.inc
|
||||
--source include/force_restart.inc # ARCHIVE plugin must be uninstalled
|
||||
|
||||
if (!$HA_ARCHIVE_SO) {
|
||||
skip Needs Archive loadable plugin;
|
||||
|
@ -19,3 +19,5 @@ galera_ipv6_mariabackup_section : temporarily disabled at the request of Codersh
|
||||
# Opensuse/suse/rocky9/rocky84/rhel9/rhel8-ppc64le .. - all same IPv6 isn't configured right or skipping or galera
|
||||
galera_ipv6_rsync : Can't connect to server on '::1' (115)
|
||||
galera_ipv6_rsync_section : Can't connect to server on '::1' (115)
|
||||
MDEV-29171 : MDEV-33842 galera_3nodes.MDEV-29171 fails on shutdown_server
|
||||
GCF-354 : MDEV-25614 Galera test failure on GCF-354
|
||||
|
@ -577,7 +577,7 @@ set global innodb_monitor_reset_all = default;
|
||||
# MONITORS
|
||||
#
|
||||
CREATE TABLE t1 (a INT PRIMARY KEY) ENGINE=InnoDB STATS_PERSISTENT=0;
|
||||
SELECT NAME, COUNT > 0 FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE NAME
|
||||
SELECT /*1*/ NAME, COUNT > 0 FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE NAME
|
||||
LIKE 'buffer_page_written_index_leaf';
|
||||
NAME COUNT > 0
|
||||
buffer_page_written_index_leaf 0
|
||||
@ -585,13 +585,13 @@ SET GLOBAL innodb_monitor_enable='module_buffer_page';
|
||||
INSERT INTO t1 VALUES (1), (2), (3), (4);
|
||||
FLUSH TABLES t1 FOR EXPORT;
|
||||
UNLOCK TABLES;
|
||||
SELECT NAME, COUNT > 0 FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE NAME
|
||||
SELECT /*2*/ NAME, COUNT > 0 FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE NAME
|
||||
LIKE 'buffer_page_written_index_leaf';
|
||||
NAME COUNT > 0
|
||||
buffer_page_written_index_leaf 1
|
||||
SET GLOBAL innodb_monitor_disable='module_buffer_page';
|
||||
SET GLOBAL innodb_monitor_reset_all='module_buffer_page';
|
||||
SELECT NAME, COUNT > 0 FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE NAME
|
||||
SELECT /*3*/ NAME, COUNT > 0 FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE NAME
|
||||
LIKE 'buffer_page_written_index_leaf';
|
||||
NAME COUNT > 0
|
||||
buffer_page_written_index_leaf 0
|
||||
@ -601,13 +601,13 @@ ERROR 42000: Variable 'innodb_compression_algorithm' can't be set to the value o
|
||||
INSERT INTO t1 VALUES (5), (6), (7), (8);
|
||||
FLUSH TABLES t1 FOR EXPORT;
|
||||
UNLOCK TABLES;
|
||||
SELECT NAME, COUNT > 0 FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE NAME
|
||||
SELECT /*4*/ NAME, COUNT > 0 FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE NAME
|
||||
LIKE 'buffer_page_written_index_leaf';
|
||||
NAME COUNT > 0
|
||||
buffer_page_written_index_leaf 1
|
||||
SET GLOBAL innodb_monitor_disable='%';
|
||||
SET GLOBAL innodb_monitor_reset_all='%';
|
||||
SELECT NAME, COUNT > 0 FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE NAME
|
||||
SELECT /*5*/ NAME, COUNT > 0 FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE NAME
|
||||
LIKE 'buffer_page_written_index_leaf';
|
||||
NAME COUNT > 0
|
||||
buffer_page_written_index_leaf 0
|
||||
@ -615,7 +615,7 @@ SET GLOBAL innodb_monitor_enable='ALL';
|
||||
INSERT INTO t1 VALUES (9), (10), (11), (12);
|
||||
FLUSH TABLES t1 FOR EXPORT;
|
||||
UNLOCK TABLES;
|
||||
SELECT NAME, COUNT > 0 FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE NAME
|
||||
SELECT /*6*/ NAME, COUNT > 0 FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE NAME
|
||||
LIKE 'buffer_page_written_index_leaf';
|
||||
NAME COUNT > 0
|
||||
buffer_page_written_index_leaf 1
|
||||
|
@ -35,7 +35,7 @@ SELECT @@GLOBAL.innodb_force_recovery<2 "have background defragmentation";
|
||||
# Wait for defrag_pool to be processed.
|
||||
|
||||
let $wait_timeout=30;
|
||||
let $wait_condition = SELECT COUNT(*)>0 FROM mysql.innodb_index_stats;
|
||||
let $wait_condition = SELECT COUNT(*)>5 FROM mysql.innodb_index_stats;
|
||||
--source include/wait_condition.inc
|
||||
|
||||
--sorted_result
|
||||
|
@ -402,18 +402,22 @@ CREATE TABLE t1 (a INT PRIMARY KEY) ENGINE=InnoDB STATS_PERSISTENT=0;
|
||||
|
||||
let $innodb_monitor_enable = `SELECT @@innodb_monitor_enable`;
|
||||
|
||||
SELECT NAME, COUNT > 0 FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE NAME
|
||||
SELECT /*1*/ NAME, COUNT > 0 FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE NAME
|
||||
LIKE 'buffer_page_written_index_leaf';
|
||||
|
||||
SET GLOBAL innodb_monitor_enable='module_buffer_page';
|
||||
INSERT INTO t1 VALUES (1), (2), (3), (4); FLUSH TABLES t1 FOR EXPORT;
|
||||
UNLOCK TABLES;
|
||||
SELECT NAME, COUNT > 0 FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE NAME
|
||||
|
||||
let $wait_condition= select count > 0 from information_schema.innodb_metrics where name like 'buffer_page_written_index_leaf';
|
||||
source include/wait_condition.inc;
|
||||
|
||||
SELECT /*2*/ NAME, COUNT > 0 FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE NAME
|
||||
LIKE 'buffer_page_written_index_leaf';
|
||||
|
||||
SET GLOBAL innodb_monitor_disable='module_buffer_page';
|
||||
SET GLOBAL innodb_monitor_reset_all='module_buffer_page';
|
||||
SELECT NAME, COUNT > 0 FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE NAME
|
||||
SELECT /*3*/ NAME, COUNT > 0 FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE NAME
|
||||
LIKE 'buffer_page_written_index_leaf';
|
||||
|
||||
SET GLOBAL innodb_monitor_enable='%';
|
||||
@ -421,18 +425,22 @@ SET GLOBAL innodb_monitor_enable='%';
|
||||
SET GLOBAL innodb_monitor_reset_all= '%', innodb_compression_algorithm= foo;
|
||||
INSERT INTO t1 VALUES (5), (6), (7), (8); FLUSH TABLES t1 FOR EXPORT;
|
||||
UNLOCK TABLES;
|
||||
SELECT NAME, COUNT > 0 FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE NAME
|
||||
|
||||
let $wait_condition= select count > 0 from information_schema.innodb_metrics where name like 'buffer_page_written_index_leaf';
|
||||
source include/wait_condition.inc;
|
||||
|
||||
SELECT /*4*/ NAME, COUNT > 0 FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE NAME
|
||||
LIKE 'buffer_page_written_index_leaf';
|
||||
|
||||
SET GLOBAL innodb_monitor_disable='%';
|
||||
SET GLOBAL innodb_monitor_reset_all='%';
|
||||
SELECT NAME, COUNT > 0 FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE NAME
|
||||
SELECT /*5*/ NAME, COUNT > 0 FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE NAME
|
||||
LIKE 'buffer_page_written_index_leaf';
|
||||
|
||||
SET GLOBAL innodb_monitor_enable='ALL';
|
||||
INSERT INTO t1 VALUES (9), (10), (11), (12); FLUSH TABLES t1 FOR EXPORT;
|
||||
UNLOCK TABLES;
|
||||
SELECT NAME, COUNT > 0 FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE NAME
|
||||
SELECT /*6*/ NAME, COUNT > 0 FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE NAME
|
||||
LIKE 'buffer_page_written_index_leaf';
|
||||
|
||||
DROP TABLE t1;
|
||||
|
@ -274,7 +274,6 @@ execute dump_users;
|
||||
execute dump_hosts;
|
||||
|
||||
--disconnect con1
|
||||
--disconnect con5
|
||||
|
||||
--connection default
|
||||
|
||||
@ -283,6 +282,8 @@ let $wait_condition=
|
||||
select count(*) = 0 from performance_schema.threads
|
||||
where `TYPE`='FOREGROUND' and PROCESSLIST_USER= 'user1';
|
||||
--source include/wait_condition.inc
|
||||
|
||||
--disconnect con5
|
||||
let $wait_condition=
|
||||
select count(*) = 1 from performance_schema.threads
|
||||
where `TYPE`='FOREGROUND' and PROCESSLIST_USER= 'user4';
|
||||
|
@ -32,7 +32,7 @@ SET GLOBAL event_scheduler=ON;
|
||||
|
||||
CREATE TABLE table_t(a INT);
|
||||
DELIMITER |;
|
||||
CREATE EVENT e1 ON SCHEDULE EVERY 2 SECOND DO
|
||||
CREATE EVENT e1 ON SCHEDULE EVERY 2 SECOND ON COMPLETION NOT PRESERVE DO
|
||||
BEGIN
|
||||
INSERT INTO table_t VALUES(1);
|
||||
END|
|
||||
|
@ -141,7 +141,7 @@ performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
performance_schema_max_table_lock_stat 500
|
||||
performance_schema_max_thread_classes 50
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 100
|
||||
performance_schema_setup_objects_size 100
|
||||
|
@ -2507,8 +2507,8 @@ execute dump_hosts;
|
||||
HOST CURRENT_CONNECTIONS TOTAL_CONNECTIONS
|
||||
localhost 6 6
|
||||
disconnect con1;
|
||||
disconnect con5;
|
||||
connection default;
|
||||
disconnect con5;
|
||||
"================== con1/con5 disconnected =================="
|
||||
"================== Step 10 =================="
|
||||
call dump_thread();
|
||||
|
@ -2507,8 +2507,8 @@ execute dump_hosts;
|
||||
HOST CURRENT_CONNECTIONS TOTAL_CONNECTIONS
|
||||
localhost 6 6
|
||||
disconnect con1;
|
||||
disconnect con5;
|
||||
connection default;
|
||||
disconnect con5;
|
||||
"================== con1/con5 disconnected =================="
|
||||
"================== Step 10 =================="
|
||||
call dump_thread();
|
||||
|
@ -1903,8 +1903,8 @@ execute dump_hosts;
|
||||
HOST CURRENT_CONNECTIONS TOTAL_CONNECTIONS
|
||||
localhost 6 6
|
||||
disconnect con1;
|
||||
disconnect con5;
|
||||
connection default;
|
||||
disconnect con5;
|
||||
"================== con1/con5 disconnected =================="
|
||||
"================== Step 10 =================="
|
||||
call dump_thread();
|
||||
|
@ -1653,8 +1653,8 @@ user4 2 2
|
||||
execute dump_hosts;
|
||||
HOST CURRENT_CONNECTIONS TOTAL_CONNECTIONS
|
||||
disconnect con1;
|
||||
disconnect con5;
|
||||
connection default;
|
||||
disconnect con5;
|
||||
"================== con1/con5 disconnected =================="
|
||||
"================== Step 10 =================="
|
||||
call dump_thread();
|
||||
|
@ -1343,8 +1343,8 @@ execute dump_hosts;
|
||||
HOST CURRENT_CONNECTIONS TOTAL_CONNECTIONS
|
||||
localhost 6 6
|
||||
disconnect con1;
|
||||
disconnect con5;
|
||||
connection default;
|
||||
disconnect con5;
|
||||
"================== con1/con5 disconnected =================="
|
||||
"================== Step 10 =================="
|
||||
call dump_thread();
|
||||
|
@ -1093,8 +1093,8 @@ USER CURRENT_CONNECTIONS TOTAL_CONNECTIONS
|
||||
execute dump_hosts;
|
||||
HOST CURRENT_CONNECTIONS TOTAL_CONNECTIONS
|
||||
disconnect con1;
|
||||
disconnect con5;
|
||||
connection default;
|
||||
disconnect con5;
|
||||
"================== con1/con5 disconnected =================="
|
||||
"================== Step 10 =================="
|
||||
call dump_thread();
|
||||
|
@ -2257,8 +2257,8 @@ user4 2 2
|
||||
execute dump_hosts;
|
||||
HOST CURRENT_CONNECTIONS TOTAL_CONNECTIONS
|
||||
disconnect con1;
|
||||
disconnect con5;
|
||||
connection default;
|
||||
disconnect con5;
|
||||
"================== con1/con5 disconnected =================="
|
||||
"================== Step 10 =================="
|
||||
call dump_thread();
|
||||
|
@ -1947,8 +1947,8 @@ execute dump_hosts;
|
||||
HOST CURRENT_CONNECTIONS TOTAL_CONNECTIONS
|
||||
localhost 6 6
|
||||
disconnect con1;
|
||||
disconnect con5;
|
||||
connection default;
|
||||
disconnect con5;
|
||||
"================== con1/con5 disconnected =================="
|
||||
"================== Step 10 =================="
|
||||
call dump_thread();
|
||||
|
@ -1697,8 +1697,8 @@ USER CURRENT_CONNECTIONS TOTAL_CONNECTIONS
|
||||
execute dump_hosts;
|
||||
HOST CURRENT_CONNECTIONS TOTAL_CONNECTIONS
|
||||
disconnect con1;
|
||||
disconnect con5;
|
||||
connection default;
|
||||
disconnect con5;
|
||||
"================== con1/con5 disconnected =================="
|
||||
"================== Step 10 =================="
|
||||
call dump_thread();
|
||||
|
@ -94,7 +94,7 @@ test t_60905 NULL 5 5 0 1
|
||||
DROP TABLE t_60905;
|
||||
show global variables like "performance_schema_max_thread_instances";
|
||||
Variable_name Value
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
explain select * from performance_schema.threads;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE threads ALL NULL NULL NULL NULL 256
|
||||
|
@ -261,7 +261,7 @@ performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
performance_schema_max_table_lock_stat 500
|
||||
performance_schema_max_thread_classes 50
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 100
|
||||
performance_schema_setup_objects_size 100
|
||||
|
@ -63,7 +63,7 @@ performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
performance_schema_max_table_lock_stat 500
|
||||
performance_schema_max_thread_classes 50
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 100
|
||||
performance_schema_setup_objects_size 100
|
||||
|
@ -141,7 +141,7 @@ performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
performance_schema_max_table_lock_stat 500
|
||||
performance_schema_max_thread_classes 50
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 100
|
||||
performance_schema_setup_objects_size 100
|
||||
|
@ -141,7 +141,7 @@ performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
performance_schema_max_table_lock_stat 500
|
||||
performance_schema_max_thread_classes 50
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 100
|
||||
performance_schema_setup_objects_size 100
|
||||
|
@ -141,7 +141,7 @@ performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
performance_schema_max_table_lock_stat 500
|
||||
performance_schema_max_thread_classes 50
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 100
|
||||
performance_schema_setup_objects_size 100
|
||||
|
@ -141,7 +141,7 @@ performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
performance_schema_max_table_lock_stat 500
|
||||
performance_schema_max_thread_classes 50
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 100
|
||||
performance_schema_setup_objects_size 100
|
||||
|
@ -141,7 +141,7 @@ performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
performance_schema_max_table_lock_stat 500
|
||||
performance_schema_max_thread_classes 50
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 100
|
||||
performance_schema_setup_objects_size 100
|
||||
|
@ -141,7 +141,7 @@ performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
performance_schema_max_table_lock_stat 500
|
||||
performance_schema_max_thread_classes 50
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 100
|
||||
performance_schema_setup_objects_size 100
|
||||
|
@ -141,7 +141,7 @@ performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
performance_schema_max_table_lock_stat 500
|
||||
performance_schema_max_thread_classes 50
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 100
|
||||
performance_schema_setup_objects_size 100
|
||||
|
@ -141,7 +141,7 @@ performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
performance_schema_max_table_lock_stat 1
|
||||
performance_schema_max_thread_classes 50
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 100
|
||||
performance_schema_setup_objects_size 100
|
||||
|
@ -141,7 +141,7 @@ performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
performance_schema_max_table_lock_stat 500
|
||||
performance_schema_max_thread_classes 50
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 100
|
||||
performance_schema_setup_objects_size 100
|
||||
|
@ -141,7 +141,7 @@ performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
performance_schema_max_table_lock_stat 500
|
||||
performance_schema_max_thread_classes 50
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 100
|
||||
performance_schema_setup_objects_size 100
|
||||
|
@ -141,7 +141,7 @@ performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
performance_schema_max_table_lock_stat 500
|
||||
performance_schema_max_thread_classes 50
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 100
|
||||
performance_schema_setup_objects_size 100
|
||||
|
@ -141,7 +141,7 @@ performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
performance_schema_max_table_lock_stat 500
|
||||
performance_schema_max_thread_classes 50
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 100
|
||||
performance_schema_setup_objects_size 100
|
||||
|
@ -141,7 +141,7 @@ performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
performance_schema_max_table_lock_stat 500
|
||||
performance_schema_max_thread_classes 50
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 100
|
||||
performance_schema_setup_objects_size 100
|
||||
|
@ -141,7 +141,7 @@ performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
performance_schema_max_table_lock_stat 500
|
||||
performance_schema_max_thread_classes 50
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 100
|
||||
performance_schema_setup_objects_size 100
|
||||
|
@ -141,7 +141,7 @@ performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
performance_schema_max_table_lock_stat 500
|
||||
performance_schema_max_thread_classes 50
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 100
|
||||
performance_schema_setup_objects_size 100
|
||||
|
@ -141,7 +141,7 @@ performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
performance_schema_max_table_lock_stat 500
|
||||
performance_schema_max_thread_classes 50
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 100
|
||||
performance_schema_setup_objects_size 100
|
||||
|
@ -141,7 +141,7 @@ performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
performance_schema_max_table_lock_stat 500
|
||||
performance_schema_max_thread_classes 50
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 100
|
||||
performance_schema_setup_objects_size 100
|
||||
|
@ -141,7 +141,7 @@ performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
performance_schema_max_table_lock_stat 500
|
||||
performance_schema_max_thread_classes 50
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 100
|
||||
performance_schema_setup_objects_size 100
|
||||
|
@ -141,7 +141,7 @@ performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
performance_schema_max_table_lock_stat 500
|
||||
performance_schema_max_thread_classes 50
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 100
|
||||
performance_schema_setup_objects_size 100
|
||||
|
@ -141,7 +141,7 @@ performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
performance_schema_max_table_lock_stat 500
|
||||
performance_schema_max_thread_classes 50
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 100
|
||||
performance_schema_setup_objects_size 100
|
||||
|
@ -141,7 +141,7 @@ performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
performance_schema_max_table_lock_stat 500
|
||||
performance_schema_max_thread_classes 50
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 100
|
||||
performance_schema_setup_objects_size 100
|
||||
|
@ -141,7 +141,7 @@ performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
performance_schema_max_table_lock_stat 500
|
||||
performance_schema_max_thread_classes 50
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 100
|
||||
performance_schema_setup_objects_size 100
|
||||
|
@ -141,7 +141,7 @@ performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
performance_schema_max_table_lock_stat 500
|
||||
performance_schema_max_thread_classes 50
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 0
|
||||
performance_schema_setup_objects_size 100
|
||||
|
@ -141,7 +141,7 @@ performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
performance_schema_max_table_lock_stat 500
|
||||
performance_schema_max_thread_classes 50
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 100
|
||||
performance_schema_setup_objects_size 0
|
||||
|
@ -141,7 +141,7 @@ performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
performance_schema_max_table_lock_stat 500
|
||||
performance_schema_max_thread_classes 50
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 100
|
||||
performance_schema_setup_objects_size 100
|
||||
|
@ -141,7 +141,7 @@ performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
performance_schema_max_table_lock_stat 500
|
||||
performance_schema_max_thread_classes 50
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 100
|
||||
performance_schema_setup_objects_size 100
|
||||
|
@ -141,7 +141,7 @@ performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
performance_schema_max_table_lock_stat 500
|
||||
performance_schema_max_thread_classes 50
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 100
|
||||
performance_schema_setup_objects_size 100
|
||||
|
@ -141,7 +141,7 @@ performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
performance_schema_max_table_lock_stat 500
|
||||
performance_schema_max_thread_classes 50
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 100
|
||||
performance_schema_setup_objects_size 100
|
||||
|
@ -141,7 +141,7 @@ performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
performance_schema_max_table_lock_stat 500
|
||||
performance_schema_max_thread_classes 50
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 100
|
||||
performance_schema_setup_objects_size 100
|
||||
|
@ -141,7 +141,7 @@ performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
performance_schema_max_table_lock_stat 500
|
||||
performance_schema_max_thread_classes 50
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 100
|
||||
performance_schema_setup_objects_size 100
|
||||
|
@ -141,7 +141,7 @@ performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
performance_schema_max_table_lock_stat 500
|
||||
performance_schema_max_thread_classes 50
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 100
|
||||
performance_schema_setup_objects_size 100
|
||||
|
@ -141,7 +141,7 @@ performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
performance_schema_max_table_lock_stat 500
|
||||
performance_schema_max_thread_classes 50
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 100
|
||||
performance_schema_setup_objects_size 100
|
||||
|
@ -141,7 +141,7 @@ performance_schema_max_table_handles 0
|
||||
performance_schema_max_table_instances 500
|
||||
performance_schema_max_table_lock_stat 500
|
||||
performance_schema_max_thread_classes 50
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 100
|
||||
performance_schema_setup_objects_size 100
|
||||
|
@ -141,7 +141,7 @@ performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 0
|
||||
performance_schema_max_table_lock_stat 0
|
||||
performance_schema_max_thread_classes 50
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 100
|
||||
performance_schema_setup_objects_size 100
|
||||
|
@ -141,7 +141,7 @@ performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
performance_schema_max_table_lock_stat 0
|
||||
performance_schema_max_thread_classes 50
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 100
|
||||
performance_schema_setup_objects_size 100
|
||||
|
@ -141,7 +141,7 @@ performance_schema_max_table_handles 1000
|
||||
performance_schema_max_table_instances 500
|
||||
performance_schema_max_table_lock_stat 500
|
||||
performance_schema_max_thread_classes 0
|
||||
performance_schema_max_thread_instances 200
|
||||
performance_schema_max_thread_instances 400
|
||||
performance_schema_session_connect_attrs_size 2048
|
||||
performance_schema_setup_actors_size 100
|
||||
performance_schema_setup_objects_size 100
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user