Commit e709eb9b authored by Sergei Petrunia's avatar Sergei Petrunia

Merge branch '10.2' into 10.3

# Conflicts:
#	mysql-test/suite/galera/r/MW-388.result
#	mysql-test/suite/galera/t/MW-388.test
#	mysql-test/suite/innodb/r/truncate_inject.result
#	mysql-test/suite/innodb/t/truncate_inject.test
#	mysql-test/suite/rpl/r/rpl_stop_slave.result
#	mysql-test/suite/rpl/t/rpl_stop_slave.test
#	sql/sp_head.cc
#	sql/sp_head.h
#	sql/sql_lex.cc
#	sql/sql_yacc.yy
#	storage/xtradb/buf/buf0dblwr.cc
parents d531b4ee b0442943
...@@ -13,10 +13,10 @@ ...@@ -13,10 +13,10 @@
# let query= 'CREATE TABLE t1 (a INT)'; # let query= 'CREATE TABLE t1 (a INT)';
# source include/binlog_inject_error.inc; # source include/binlog_inject_error.inc;
# #
set @saved_dbug = @@global.debug_dbug;
SET GLOBAL debug_dbug='d,injecting_fault_writing'; SET GLOBAL debug_dbug='d,injecting_fault_writing';
--echo $query; --echo $query;
--replace_regex /(errno: .*)/(errno: #)/ --replace_regex /(errno: .*)/(errno: #)/
--error ER_ERROR_ON_WRITE --error ER_ERROR_ON_WRITE
--eval $query --eval $query
SET GLOBAL debug_dbug=''; set @@global.debug_dbug = @saved_dbug;
create table t1 (a date); create table t1 (a date);
insert t1 values ('2000-01-02'), ('2001-02-03'), ('2002-03-04'); insert t1 values ('2000-01-02'), ('2001-02-03'), ('2002-03-04');
set debug_dbug='d,str_to_datetime_warn'; SET STATEMENT debug_dbug='d,str_to_datetime_warn' for
select * from t1 where a > date_add('2000-01-01', interval 5 day); select * from t1 where a > date_add('2000-01-01', interval 5 day);
a a
2001-02-03 2001-02-03
2002-03-04 2002-03-04
Warnings: Warnings:
Note 1003 2000-01-01 Note 1003 2000-01-01
set debug_dbug='';
drop table t1; drop table t1;
create table t1 (id int not null, ut timestamp(6) not null); create table t1 (id int not null, ut timestamp(6) not null);
insert into t1 values(1, '2001-01-01 00:00:00.2'); insert into t1 values(1, '2001-01-01 00:00:00.2');
......
...@@ -5,9 +5,9 @@ ...@@ -5,9 +5,9 @@
create table t1 (a date); create table t1 (a date);
insert t1 values ('2000-01-02'), ('2001-02-03'), ('2002-03-04'); insert t1 values ('2000-01-02'), ('2001-02-03'), ('2002-03-04');
set debug_dbug='d,str_to_datetime_warn';
select * from t1 where a > date_add('2000-01-01', interval 5 day); SET STATEMENT debug_dbug='d,str_to_datetime_warn' for
set debug_dbug=''; select * from t1 where a > date_add('2000-01-01', interval 5 day);
drop table t1; drop table t1;
# #
......
...@@ -4,9 +4,9 @@ drop table if exists t1; ...@@ -4,9 +4,9 @@ drop table if exists t1;
SET @old_debug= @@session.debug; SET @old_debug= @@session.debug;
CREATE TABLE t1 (i INT, KEY(i)) ENGINE=InnoDB; CREATE TABLE t1 (i INT, KEY(i)) ENGINE=InnoDB;
CREATE OR REPLACE TEMPORARY TABLE tmp (a int, b int, key(a)) engine=myisam; CREATE OR REPLACE TEMPORARY TABLE tmp (a int, b int, key(a)) engine=myisam;
set debug_dbug='+d,send_kill_after_delete'; SET debug_dbug='+d,send_kill_after_delete';
CREATE OR REPLACE TABLE t1 LIKE tmp; CREATE OR REPLACE TABLE t1 LIKE tmp;
set debug_dbug=@old_debug; SET debug_dbug=@old_debug;
SHOW TABLES; SHOW TABLES;
Tables_in_test Tables_in_test
t1 t1
......
...@@ -19,9 +19,9 @@ SET @old_debug= @@session.debug; ...@@ -19,9 +19,9 @@ SET @old_debug= @@session.debug;
CREATE TABLE t1 (i INT, KEY(i)) ENGINE=InnoDB; CREATE TABLE t1 (i INT, KEY(i)) ENGINE=InnoDB;
CREATE OR REPLACE TEMPORARY TABLE tmp (a int, b int, key(a)) engine=myisam; CREATE OR REPLACE TEMPORARY TABLE tmp (a int, b int, key(a)) engine=myisam;
set debug_dbug='+d,send_kill_after_delete'; SET debug_dbug='+d,send_kill_after_delete';
CREATE OR REPLACE TABLE t1 LIKE tmp; CREATE OR REPLACE TABLE t1 LIKE tmp;
set debug_dbug=@old_debug; SET debug_dbug=@old_debug;
SHOW TABLES; SHOW TABLES;
show create table t1; show create table t1;
--sync_slave_with_master --sync_slave_with_master
......
SET @save_dbug = @@debug_dbug; SET @saved_dbug = @@debug_dbug;
set debug_dbug='+d,unstable_db_type'; SET debug_dbug='+d,unstable_db_type';
install soname 'ha_archive'; install soname 'ha_archive';
create table t1 (a int) engine=archive; create table t1 (a int) engine=archive;
insert t1 values (1),(2),(3); insert t1 values (1),(2),(3);
...@@ -33,4 +33,4 @@ t1.frm ...@@ -33,4 +33,4 @@ t1.frm
drop table t1; drop table t1;
db.opt db.opt
uninstall soname 'ha_archive'; uninstall soname 'ha_archive';
set debug_dbug=@save_dbug; SET debug_dbug=@saved_dbug;
...@@ -7,8 +7,8 @@ if (!$HA_ARCHIVE_SO) { ...@@ -7,8 +7,8 @@ if (!$HA_ARCHIVE_SO) {
let $mysqld_datadir= `select @@datadir`; let $mysqld_datadir= `select @@datadir`;
SET @save_dbug = @@debug_dbug; SET @saved_dbug = @@debug_dbug;
set debug_dbug='+d,unstable_db_type'; SET debug_dbug='+d,unstable_db_type';
install soname 'ha_archive'; install soname 'ha_archive';
create table t1 (a int) engine=archive; create table t1 (a int) engine=archive;
...@@ -28,4 +28,4 @@ drop table t1; ...@@ -28,4 +28,4 @@ drop table t1;
--list_files $mysqld_datadir/test --list_files $mysqld_datadir/test
uninstall soname 'ha_archive'; uninstall soname 'ha_archive';
set debug_dbug=@save_dbug; SET debug_dbug=@saved_dbug;
create table t1 (a int, b int); create table t1 (a int, b int);
set debug_dbug='+d,external_lock_failure'; SET @saved_dbug = @@SESSION.debug_dbug;
SET debug_dbug='+d,external_lock_failure';
alter table t1 add column c int; alter table t1 add column c int;
ERROR HY000: Got error 168 'KABOOM!' from MyISAM ERROR HY000: Got error 168 'KABOOM!' from MyISAM
set debug_dbug=''; SET debug_dbug= @saved_dbug;
drop table t1; drop table t1;
...@@ -4,8 +4,9 @@ ...@@ -4,8 +4,9 @@
--source include/have_debug.inc --source include/have_debug.inc
create table t1 (a int, b int); create table t1 (a int, b int);
set debug_dbug='+d,external_lock_failure'; SET @saved_dbug = @@SESSION.debug_dbug;
SET debug_dbug='+d,external_lock_failure';
--error ER_GET_ERRMSG --error ER_GET_ERRMSG
alter table t1 add column c int; alter table t1 add column c int;
set debug_dbug=''; SET debug_dbug= @saved_dbug;
drop table t1; drop table t1;
...@@ -10,6 +10,7 @@ INSERT INTO t1 VALUES ...@@ -10,6 +10,7 @@ INSERT INTO t1 VALUES
('AAAAAAAAAH','AAAAAAAAAH'), ('AAAAAAAAAI','AAAAAAAAAI'), ('AAAAAAAAAH','AAAAAAAAAH'), ('AAAAAAAAAI','AAAAAAAAAI'),
('AAAAAAAAAJ','AAAAAAAAAJ'), ('AAAAAAAAAK','AAAAAAAAAK'); ('AAAAAAAAAJ','AAAAAAAAAJ'), ('AAAAAAAAAK','AAAAAAAAAK');
set tmp_table_size=1024; set tmp_table_size=1024;
SET @saved_dbug = @@SESSION.debug_dbug;
set session debug_dbug="+d,raise_error"; set session debug_dbug="+d,raise_error";
SELECT MAX(a) FROM t1 GROUP BY a,b; SELECT MAX(a) FROM t1 GROUP BY a,b;
ERROR 23000: Can't write; duplicate key in table '(temporary)' ERROR 23000: Can't write; duplicate key in table '(temporary)'
...@@ -22,7 +23,7 @@ CREATE TABLE t1 (a INT(100) NOT NULL); ...@@ -22,7 +23,7 @@ CREATE TABLE t1 (a INT(100) NOT NULL);
INSERT INTO t1 VALUES (1), (0), (2); INSERT INTO t1 VALUES (1), (0), (2);
SET SESSION debug_dbug='+d,alter_table_only_index_change'; SET SESSION debug_dbug='+d,alter_table_only_index_change';
ALTER TABLE t1 ADD INDEX a(a); ALTER TABLE t1 ADD INDEX a(a);
SET SESSION debug_dbug=DEFAULT; SET debug_dbug= @saved_dbug;
SHOW CREATE TABLE t1; SHOW CREATE TABLE t1;
Table Create Table Table Create Table
t1 CREATE TABLE `t1` ( t1 CREATE TABLE `t1` (
...@@ -42,7 +43,7 @@ CREATE TABLE t1(a BLOB); ...@@ -42,7 +43,7 @@ CREATE TABLE t1(a BLOB);
SET SESSION debug_dbug="+d,bug42064_simulate_oom"; SET SESSION debug_dbug="+d,bug42064_simulate_oom";
INSERT INTO t1 VALUES(""); INSERT INTO t1 VALUES("");
Got one of the listed errors Got one of the listed errors
SET SESSION debug_dbug=DEFAULT; SET debug_dbug= @saved_dbug;
DROP TABLE t1; DROP TABLE t1;
# #
# Bug#41660: Sort-index_merge for non-first join table may require # Bug#41660: Sort-index_merge for non-first join table may require
...@@ -79,7 +80,7 @@ a a b filler ...@@ -79,7 +80,7 @@ a a b filler
7 1 1 data 7 1 1 data
8 1 1 data 8 1 1 data
9 1 1 data 9 1 1 data
SET SESSION debug_dbug= DEFAULT; SET debug_dbug= @saved_dbug;
SET optimizer_switch=@save_optimizer_switch; SET optimizer_switch=@save_optimizer_switch;
DROP TABLE t1, t2; DROP TABLE t1, t2;
# #
...@@ -92,7 +93,7 @@ INSERT INTO t2 VALUES (1),(2); ...@@ -92,7 +93,7 @@ INSERT INTO t2 VALUES (1),(2);
SET SESSION debug_dbug="+d,bug11747970_raise_error"; SET SESSION debug_dbug="+d,bug11747970_raise_error";
INSERT IGNORE INTO t2 SELECT f1 FROM t1 a WHERE NOT EXISTS (SELECT 1 FROM t2 b WHERE a.f1 = b.f1); INSERT IGNORE INTO t2 SELECT f1 FROM t1 a WHERE NOT EXISTS (SELECT 1 FROM t2 b WHERE a.f1 = b.f1);
ERROR 70100: Query execution was interrupted ERROR 70100: Query execution was interrupted
SET SESSION debug_dbug = DEFAULT; SET debug_dbug= @saved_dbug;
DROP TABLE t1,t2; DROP TABLE t1,t2;
# #
# End of 5.1 tests # End of 5.1 tests
...@@ -126,4 +127,4 @@ SET SESSION debug_dbug="+d,simulate_create_virtual_tmp_table_out_of_memory"; ...@@ -126,4 +127,4 @@ SET SESSION debug_dbug="+d,simulate_create_virtual_tmp_table_out_of_memory";
SELECT f1(1); SELECT f1(1);
Got one of the listed errors Got one of the listed errors
DROP FUNCTION f1; DROP FUNCTION f1;
SET SESSION debug_dbug=DEFAULT; SET debug_dbug= @saved_dbug;
...@@ -21,6 +21,7 @@ set tmp_table_size=1024; ...@@ -21,6 +21,7 @@ set tmp_table_size=1024;
# Set debug flag so an error is returned when # Set debug flag so an error is returned when
# tmp table in query is converted from heap to myisam # tmp table in query is converted from heap to myisam
SET @saved_dbug = @@SESSION.debug_dbug;
set session debug_dbug="+d,raise_error"; set session debug_dbug="+d,raise_error";
--error ER_DUP_KEY --error ER_DUP_KEY
...@@ -36,7 +37,7 @@ CREATE TABLE t1 (a INT(100) NOT NULL); ...@@ -36,7 +37,7 @@ CREATE TABLE t1 (a INT(100) NOT NULL);
INSERT INTO t1 VALUES (1), (0), (2); INSERT INTO t1 VALUES (1), (0), (2);
SET SESSION debug_dbug='+d,alter_table_only_index_change'; SET SESSION debug_dbug='+d,alter_table_only_index_change';
ALTER TABLE t1 ADD INDEX a(a); ALTER TABLE t1 ADD INDEX a(a);
SET SESSION debug_dbug=DEFAULT; SET debug_dbug= @saved_dbug;
SHOW CREATE TABLE t1; SHOW CREATE TABLE t1;
SELECT * FROM t1; SELECT * FROM t1;
DROP TABLE t1; DROP TABLE t1;
...@@ -51,7 +52,7 @@ SET SESSION debug_dbug="+d,bug42064_simulate_oom"; ...@@ -51,7 +52,7 @@ SET SESSION debug_dbug="+d,bug42064_simulate_oom";
# May fail with either ER_OUT_OF_RESOURCES or EE_OUTOFMEMORY # May fail with either ER_OUT_OF_RESOURCES or EE_OUTOFMEMORY
--error ER_OUT_OF_RESOURCES, 5 --error ER_OUT_OF_RESOURCES, 5
INSERT INTO t1 VALUES(""); INSERT INTO t1 VALUES("");
SET SESSION debug_dbug=DEFAULT; SET debug_dbug= @saved_dbug;
DROP TABLE t1; DROP TABLE t1;
...@@ -84,7 +85,7 @@ EXPLAIN ...@@ -84,7 +85,7 @@ EXPLAIN
SELECT * FROM t1 LEFT JOIN t2 ON ( t2.a < 10 OR t2.b < 10 ); SELECT * FROM t1 LEFT JOIN t2 ON ( t2.a < 10 OR t2.b < 10 );
SELECT * FROM t1 LEFT JOIN t2 ON ( t2.a < 10 OR t2.b < 10 ); SELECT * FROM t1 LEFT JOIN t2 ON ( t2.a < 10 OR t2.b < 10 );
SET SESSION debug_dbug= DEFAULT; SET debug_dbug= @saved_dbug;
SET optimizer_switch=@save_optimizer_switch; SET optimizer_switch=@save_optimizer_switch;
...@@ -101,7 +102,7 @@ INSERT INTO t2 VALUES (1),(2); ...@@ -101,7 +102,7 @@ INSERT INTO t2 VALUES (1),(2);
SET SESSION debug_dbug="+d,bug11747970_raise_error"; SET SESSION debug_dbug="+d,bug11747970_raise_error";
--error ER_QUERY_INTERRUPTED --error ER_QUERY_INTERRUPTED
INSERT IGNORE INTO t2 SELECT f1 FROM t1 a WHERE NOT EXISTS (SELECT 1 FROM t2 b WHERE a.f1 = b.f1); INSERT IGNORE INTO t2 SELECT f1 FROM t1 a WHERE NOT EXISTS (SELECT 1 FROM t2 b WHERE a.f1 = b.f1);
SET SESSION debug_dbug = DEFAULT; SET debug_dbug= @saved_dbug;
DROP TABLE t1,t2; DROP TABLE t1,t2;
...@@ -156,4 +157,4 @@ SET SESSION debug_dbug="+d,simulate_create_virtual_tmp_table_out_of_memory"; ...@@ -156,4 +157,4 @@ SET SESSION debug_dbug="+d,simulate_create_virtual_tmp_table_out_of_memory";
--error ER_OUT_OF_RESOURCES, 5 --error ER_OUT_OF_RESOURCES, 5
SELECT f1(1); SELECT f1(1);
DROP FUNCTION f1; DROP FUNCTION f1;
SET SESSION debug_dbug=DEFAULT; SET debug_dbug= @saved_dbug;
SET debug_dbug='+d,pcre_exec_error_123'; SET STATEMENT debug_dbug='+d,pcre_exec_error_123' for
SELECT 'a' RLIKE 'a'; SELECT 'a' RLIKE 'a';
'a' RLIKE 'a' 'a' RLIKE 'a'
0 0
Warnings: Warnings:
Warning 1139 Got error 'pcre_exec: Internal error (-123)' from regexp Warning 1139 Got error 'pcre_exec: Internal error (-123)' from regexp
SET debug_dbug='';
SELECT 'a' RLIKE 'a'; SELECT 'a' RLIKE 'a';
'a' RLIKE 'a' 'a' RLIKE 'a'
1 1
--source include/have_debug.inc --source include/have_debug.inc
SET debug_dbug='+d,pcre_exec_error_123'; SET STATEMENT debug_dbug='+d,pcre_exec_error_123' for
SELECT 'a' RLIKE 'a'; SELECT 'a' RLIKE 'a';
SET debug_dbug='';
SELECT 'a' RLIKE 'a'; SELECT 'a' RLIKE 'a';
...@@ -6,7 +6,7 @@ SET @@GLOBAL.log_output='TABLE'; ...@@ -6,7 +6,7 @@ SET @@GLOBAL.log_output='TABLE';
FLUSH SLOW LOGS; FLUSH SLOW LOGS;
SET @@GLOBAL.slow_query_log=ON; SET @@GLOBAL.slow_query_log=ON;
SET @@GLOBAL.log_slow_admin_statements=ON; SET @@GLOBAL.log_slow_admin_statements=ON;
SET @save_dbug = @@debug_dbug; SET @saved_dbug = @@debug_dbug;
SET SESSION debug_dbug="+d,simulate_slow_query"; SET SESSION debug_dbug="+d,simulate_slow_query";
CREATE PROCEDURE show_slow_log() CREATE PROCEDURE show_slow_log()
BEGIN BEGIN
...@@ -218,7 +218,7 @@ sql_text ...@@ -218,7 +218,7 @@ sql_text
# #
# Clean up # Clean up
# #
SET SESSION debug_dbug=@save_dbug; SET SESSION debug_dbug=@saved_dbug;
TRUNCATE mysql.slow_log; TRUNCATE mysql.slow_log;
SET @@global.slow_query_log= @org_slow_query_log; SET @@global.slow_query_log= @org_slow_query_log;
SET @@global.log_output= @org_log_output; SET @@global.log_output= @org_log_output;
......
...@@ -9,7 +9,7 @@ SET @@GLOBAL.log_output='TABLE'; ...@@ -9,7 +9,7 @@ SET @@GLOBAL.log_output='TABLE';
FLUSH SLOW LOGS; FLUSH SLOW LOGS;
SET @@GLOBAL.slow_query_log=ON; SET @@GLOBAL.slow_query_log=ON;
SET @@GLOBAL.log_slow_admin_statements=ON; SET @@GLOBAL.log_slow_admin_statements=ON;
SET @save_dbug = @@debug_dbug; SET @saved_dbug = @@debug_dbug;
SET SESSION debug_dbug="+d,simulate_slow_query"; SET SESSION debug_dbug="+d,simulate_slow_query";
DELIMITER $$; DELIMITER $$;
...@@ -87,7 +87,7 @@ CALL show_slow_log(); ...@@ -87,7 +87,7 @@ CALL show_slow_log();
--echo # Clean up --echo # Clean up
--echo # --echo #
SET SESSION debug_dbug=@save_dbug; SET SESSION debug_dbug=@saved_dbug;
TRUNCATE mysql.slow_log; TRUNCATE mysql.slow_log;
SET @@global.slow_query_log= @org_slow_query_log; SET @@global.slow_query_log= @org_slow_query_log;
SET @@global.log_output= @org_log_output; SET @@global.log_output= @org_log_output;
......
SET @saved_dbug = @@SESSION.debug_dbug;
set @@debug_dbug= 'd,opt'; set @@debug_dbug= 'd,opt';
CREATE TABLE t1 (pk INT PRIMARY KEY) ENGINE=MyISAM; CREATE TABLE t1 (pk INT PRIMARY KEY) ENGINE=MyISAM;
CREATE TABLE t2 ( CREATE TABLE t2 (
...@@ -46,3 +47,4 @@ SELECT * FROM t1, v3, t4 WHERE v3.f1 = t4.f1 AND t4.f2 = 6 AND t1.pk = v3.f5; ...@@ -46,3 +47,4 @@ SELECT * FROM t1, v3, t4 WHERE v3.f1 = t4.f1 AND t4.f2 = 6 AND t1.pk = v3.f5;
pk f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 f13 f14 f15 f1 f2 pk f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 f13 f14 f15 f1 f2
drop table t1,t2,t3,t4; drop table t1,t2,t3,t4;
drop view v2,v3; drop view v2,v3;
SET debug_dbug= @saved_dbug;
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
# MDEV-6830 Server crashes in best_access_path after a sequence of SELECTs invollving a temptable view # MDEV-6830 Server crashes in best_access_path after a sequence of SELECTs invollving a temptable view
# #
--source include/have_debug.inc --source include/have_debug.inc
SET @saved_dbug = @@SESSION.debug_dbug;
set @@debug_dbug= 'd,opt'; set @@debug_dbug= 'd,opt';
CREATE TABLE t1 (pk INT PRIMARY KEY) ENGINE=MyISAM; CREATE TABLE t1 (pk INT PRIMARY KEY) ENGINE=MyISAM;
...@@ -60,4 +60,4 @@ SELECT * FROM t1, v3, t4 WHERE v3.f1 = t4.f1 AND t4.f2 = 6 AND t1.pk = v3.f5; ...@@ -60,4 +60,4 @@ SELECT * FROM t1, v3, t4 WHERE v3.f1 = t4.f1 AND t4.f2 = 6 AND t1.pk = v3.f5;
drop table t1,t2,t3,t4; drop table t1,t2,t3,t4;
drop view v2,v3; drop view v2,v3;
SET debug_dbug= @saved_dbug;
...@@ -7,7 +7,7 @@ drop table if exists t1,t2,t3,t4,t5,t6; ...@@ -7,7 +7,7 @@ drop table if exists t1,t2,t3,t4,t5,t6;
CREATE TABLE t1 (c1 INT) ENGINE= MyISAM; CREATE TABLE t1 (c1 INT) ENGINE= MyISAM;
LOCK TABLE t1 WRITE; LOCK TABLE t1 WRITE;
connect con1,localhost,root,,; connect con1,localhost,root,,;
SET @orig_debug=@@debug; SET @orig_debug=@@global.debug_dbug;
SET GLOBAL debug_dbug="+d,sleep_open_and_lock_after_open"; SET GLOBAL debug_dbug="+d,sleep_open_and_lock_after_open";
INSERT INTO t1 VALUES (1); INSERT INTO t1 VALUES (1);
connection default; connection default;
......
...@@ -42,7 +42,7 @@ LOCK TABLE t1 WRITE; ...@@ -42,7 +42,7 @@ LOCK TABLE t1 WRITE;
#SELECT NOW(); #SELECT NOW();
connect (con1,localhost,root,,); connect (con1,localhost,root,,);
let $con1_id= `SELECT CONNECTION_ID()`; let $con1_id= `SELECT CONNECTION_ID()`;
SET @orig_debug=@@debug; SET @orig_debug=@@global.debug_dbug;
SET GLOBAL debug_dbug="+d,sleep_open_and_lock_after_open"; SET GLOBAL debug_dbug="+d,sleep_open_and_lock_after_open";
send INSERT INTO t1 VALUES (1); send INSERT INTO t1 VALUES (1);
connection default; connection default;
......
...@@ -3,7 +3,7 @@ set global storage_engine=myisam; ...@@ -3,7 +3,7 @@ set global storage_engine=myisam;
set session storage_engine=myisam; set session storage_engine=myisam;
call mtr.add_suppression("Index for table .*crashed' is corrupt; try to repair it"); call mtr.add_suppression("Index for table .*crashed' is corrupt; try to repair it");
drop table if exists crashed,t2,t3,t4; drop table if exists crashed,t2,t3,t4;
SET @orig_debug=@@debug; SET @orig_debug=@@global.debug_dbug;
CREATE TABLE crashed (c1 INT); CREATE TABLE crashed (c1 INT);
CREATE TABLE t2 (c1 INT); CREATE TABLE t2 (c1 INT);
CREATE TABLE t3 (c1 INT); CREATE TABLE t3 (c1 INT);
......
...@@ -14,7 +14,7 @@ call mtr.add_suppression("Index for table .*crashed' is corrupt; try to repair i ...@@ -14,7 +14,7 @@ call mtr.add_suppression("Index for table .*crashed' is corrupt; try to repair i
drop table if exists crashed,t2,t3,t4; drop table if exists crashed,t2,t3,t4;
--enable_warnings --enable_warnings
SET @orig_debug=@@debug; SET @orig_debug=@@global.debug_dbug;
# #
# Check that MariaDB handles reopen that fails without crashing # Check that MariaDB handles reopen that fails without crashing
......
...@@ -34,10 +34,10 @@ create table t1 (a int, index(a)); ...@@ -34,10 +34,10 @@ create table t1 (a int, index(a));
lock tables t1 write; lock tables t1 write;
insert t1 values (1),(2),(1); insert t1 values (1),(2),(1);
set @old_dbug=@@debug_dbug; set @old_dbug=@@debug_dbug;
set debug_dbug='+d,mi_lock_database_failure'; SET debug_dbug='+d,mi_lock_database_failure';
unlock tables; unlock tables;
Warnings: Warnings:
Error 126 Index for table './test/t1.MYI' is corrupt; try to repair it Error 126 Index for table './test/t1.MYI' is corrupt; try to repair it
Error 1030 Got error 22 "Invalid argument" from storage engine MyISAM Error 1030 Got error 22 "Invalid argument" from storage engine MyISAM
set debug_dbug=@old_dbug; SET debug_dbug=@old_dbug;
drop table t1; drop table t1;
...@@ -66,7 +66,7 @@ create table t1 (a int, index(a)); ...@@ -66,7 +66,7 @@ create table t1 (a int, index(a));
lock tables t1 write; lock tables t1 write;
insert t1 values (1),(2),(1); insert t1 values (1),(2),(1);
set @old_dbug=@@debug_dbug; set @old_dbug=@@debug_dbug;
set debug_dbug='+d,mi_lock_database_failure'; SET debug_dbug='+d,mi_lock_database_failure';
unlock tables; unlock tables;
set debug_dbug=@old_dbug; SET debug_dbug=@old_dbug;
drop table t1; drop table t1;
...@@ -70,6 +70,7 @@ key(a),key(b),key(c) ...@@ -70,6 +70,7 @@ key(a),key(b),key(c)
insert into t1 insert into t1
select A.a+10*B.a, A.a+10*B.a, A.a+10*B.a+100*C.a select A.a+10*B.a, A.a+10*B.a, A.a+10*B.a+100*C.a
from t0 A, t0 B, t0 C, t0 D where D.a<5; from t0 A, t0 B, t0 C, t0 D where D.a<5;
SET @saved_dbug = @@GLOBAL.debug_dbug;
set @@global.debug_dbug="+d,ha_index_init_fail"; set @@global.debug_dbug="+d,ha_index_init_fail";
explain select * from t1 where a=10 and b=10; explain select * from t1 where a=10 and b=10;
id select_type table type possible_keys key key_len ref rows Extra id select_type table type possible_keys key key_len ref rows Extra
...@@ -77,5 +78,5 @@ id select_type table type possible_keys key key_len ref rows Extra ...@@ -77,5 +78,5 @@ id select_type table type possible_keys key key_len ref rows Extra
select * from t1 where a=10 and b=10; select * from t1 where a=10 and b=10;
ERROR HY000: Table definition has changed, please retry transaction ERROR HY000: Table definition has changed, please retry transaction
DROP TABLE t0,t1; DROP TABLE t0,t1;
set @@global.debug_dbug="-d"; SET @@GLOBAL.debug_dbug = @saved_dbug;
set @@optimizer_switch= @optimizer_switch_save; set @@optimizer_switch= @optimizer_switch_save;
...@@ -80,10 +80,11 @@ create table t1 ( ...@@ -80,10 +80,11 @@ create table t1 (
insert into t1 insert into t1
select A.a+10*B.a, A.a+10*B.a, A.a+10*B.a+100*C.a select A.a+10*B.a, A.a+10*B.a, A.a+10*B.a+100*C.a
from t0 A, t0 B, t0 C, t0 D where D.a<5; from t0 A, t0 B, t0 C, t0 D where D.a<5;
SET @saved_dbug = @@GLOBAL.debug_dbug;
set @@global.debug_dbug="+d,ha_index_init_fail"; set @@global.debug_dbug="+d,ha_index_init_fail";
explain select * from t1 where a=10 and b=10; explain select * from t1 where a=10 and b=10;
--error ER_TABLE_DEF_CHANGED --error ER_TABLE_DEF_CHANGED
select * from t1 where a=10 and b=10; select * from t1 where a=10 and b=10;
DROP TABLE t0,t1; DROP TABLE t0,t1;
set @@global.debug_dbug="-d"; SET @@GLOBAL.debug_dbug = @saved_dbug;
set @@optimizer_switch= @optimizer_switch_save; set @@optimizer_switch= @optimizer_switch_save;
...@@ -7,10 +7,10 @@ INSERT INTO t1 (c) SELECT c FROM t1; ...@@ -7,10 +7,10 @@ INSERT INTO t1 (c) SELECT c FROM t1;
INSERT INTO t1 (c) SELECT c FROM t1; INSERT INTO t1 (c) SELECT c FROM t1;
INSERT INTO t1 (c) SELECT c FROM t1; INSERT INTO t1 (c) SELECT c FROM t1;
set @old_dbug=@@session.debug_dbug; set @old_dbug=@@session.debug_dbug;
set debug_dbug="+d,kill_join_init_read_record"; SET debug_dbug="+d,kill_join_init_read_record";
SELECT 1 FROM t1 AS alias1, t1 AS alias2, t1 AS alias3 SELECT 1 FROM t1 AS alias1, t1 AS alias2, t1 AS alias3
WHERE alias1.c = alias2.c OR alias1.i <= 1 WHERE alias1.c = alias2.c OR alias1.i <= 1
; ;
ERROR 70100: Query execution was interrupted ERROR 70100: Query execution was interrupted
set debug_dbug=@old_dbug; SET debug_dbug=@old_dbug;
DROP TABLE t1; DROP TABLE t1;
...@@ -14,14 +14,14 @@ INSERT INTO t1 (c) SELECT c FROM t1; ...@@ -14,14 +14,14 @@ INSERT INTO t1 (c) SELECT c FROM t1;
INSERT INTO t1 (c) SELECT c FROM t1; INSERT INTO t1 (c) SELECT c FROM t1;
set @old_dbug=@@session.debug_dbug; set @old_dbug=@@session.debug_dbug;
set debug_dbug="+d,kill_join_init_read_record"; SET debug_dbug="+d,kill_join_init_read_record";
--error ER_QUERY_INTERRUPTED --error ER_QUERY_INTERRUPTED
SELECT 1 FROM t1 AS alias1, t1 AS alias2, t1 AS alias3 SELECT 1 FROM t1 AS alias1, t1 AS alias2, t1 AS alias3
WHERE alias1.c = alias2.c OR alias1.i <= 1 WHERE alias1.c = alias2.c OR alias1.i <= 1
; ;
set debug_dbug=@old_dbug; SET debug_dbug=@old_dbug;
DROP TABLE t1; DROP TABLE t1;
...@@ -6,6 +6,7 @@ insert into t1 values (2,2), (1,1); ...@@ -6,6 +6,7 @@ insert into t1 values (2,2), (1,1);
create table t2 (a int); create table t2 (a int);
insert into t2 values (2), (3); insert into t2 values (2), (3);
set session join_cache_level=3; set session join_cache_level=3;
SET @saved_dbug = @@SESSION.debug_dbug;
set @@debug_dbug= 'd,opt'; set @@debug_dbug= 'd,opt';
explain select t1.b from t1,t2 where t1.b=t2.a; explain select t1.b from t1,t2 where t1.b=t2.a;
id select_type table type possible_keys key key_len ref rows Extra id select_type table type possible_keys key key_len ref rows Extra
...@@ -16,3 +17,4 @@ b ...@@ -16,3 +17,4 @@ b
2 2
set session join_cache_level=default; set session join_cache_level=default;
drop table t1,t2; drop table t1,t2;
SET debug_dbug= @saved_dbug;
...@@ -10,6 +10,7 @@ create table t2 (a int); ...@@ -10,6 +10,7 @@ create table t2 (a int);
insert into t2 values (2), (3); insert into t2 values (2), (3);
set session join_cache_level=3; set session join_cache_level=3;
SET @saved_dbug = @@SESSION.debug_dbug;
set @@debug_dbug= 'd,opt'; set @@debug_dbug= 'd,opt';
explain select t1.b from t1,t2 where t1.b=t2.a; explain select t1.b from t1,t2 where t1.b=t2.a;
...@@ -17,3 +18,4 @@ select t1.b from t1,t2 where t1.b=t2.a; ...@@ -17,3 +18,4 @@ select t1.b from t1,t2 where t1.b=t2.a;
set session join_cache_level=default; set session join_cache_level=default;
drop table t1,t2; drop table t1,t2;
SET debug_dbug= @saved_dbug;
This diff is collapsed.
This diff is collapsed.
...@@ -14,7 +14,7 @@ from t0 A, t0 B, t0 C; ...@@ -14,7 +14,7 @@ from t0 A, t0 B, t0 C;
# Test SHOW EXPLAIN for single-table DELETE # Test SHOW EXPLAIN for single-table DELETE
# #
connection con2; connection con2;
set debug_dbug='+d,show_explain_probe_delete_exec_start'; SET debug_dbug='+d,show_explain_probe_delete_exec_start';
delete from t1 where a<10 and b+1>1000; delete from t1 where a<10 and b+1>1000;
connection default; connection default;
show explain for $thr2; show explain for $thr2;
...@@ -27,7 +27,7 @@ connection con2; ...@@ -27,7 +27,7 @@ connection con2;
# Test SHOW EXPLAIN for multi-table DELETE # Test SHOW EXPLAIN for multi-table DELETE
# #
set @show_explain_probe_select_id=1; set @show_explain_probe_select_id=1;
set debug_dbug='+d,show_explain_probe_do_select'; SET debug_dbug='+d,show_explain_probe_do_select';
delete t1 from t1, t0 where t0.a=t1.a and t1.b +1 > 1000; delete t1 from t1, t0 where t0.a=t1.a and t1.b +1 > 1000;
connection default; connection default;
show explain for $thr2; show explain for $thr2;
...@@ -41,7 +41,7 @@ connection con2; ...@@ -41,7 +41,7 @@ connection con2;
# Test SHOW EXPLAIN for single-table UPDATE # Test SHOW EXPLAIN for single-table UPDATE
# #
connection con2; connection con2;
set debug_dbug='+d,show_explain_probe_update_exec_start'; SET debug_dbug='+d,show_explain_probe_update_exec_start';
update t1 set filler='filler-data-2' where a<10 and b+1>1000; update t1 set filler='filler-data-2' where a<10 and b+1>1000;
connection default; connection default;
show explain for $thr2; show explain for $thr2;
...@@ -51,5 +51,5 @@ Warnings: ...@@ -51,5 +51,5 @@ Warnings:
Note 1003 update t1 set filler='filler-data-2' where a<10 and b+1>1000 Note 1003 update t1 set filler='filler-data-2' where a<10 and b+1>1000
connection con2; connection con2;
drop table t0,t1; drop table t0,t1;
set debug_dbug=@old_debug; SET debug_dbug=@old_debug;
set debug_sync='RESET'; set debug_sync='RESET';
...@@ -38,7 +38,7 @@ let $wait_condition= select State='show_explain_trap' from information_schema.pr ...@@ -38,7 +38,7 @@ let $wait_condition= select State='show_explain_trap' from information_schema.pr
--echo # Test SHOW EXPLAIN for single-table DELETE --echo # Test SHOW EXPLAIN for single-table DELETE
--echo # --echo #
connection con2; connection con2;
set debug_dbug='+d,show_explain_probe_delete_exec_start'; SET debug_dbug='+d,show_explain_probe_delete_exec_start';
send delete from t1 where a<10 and b+1>1000; send delete from t1 where a<10 and b+1>1000;
connection default; connection default;
...@@ -51,7 +51,7 @@ reap; ...@@ -51,7 +51,7 @@ reap;
--echo # Test SHOW EXPLAIN for multi-table DELETE --echo # Test SHOW EXPLAIN for multi-table DELETE
--echo # --echo #
set @show_explain_probe_select_id=1; set @show_explain_probe_select_id=1;
set debug_dbug='+d,show_explain_probe_do_select'; SET debug_dbug='+d,show_explain_probe_do_select';
send delete t1 from t1, t0 where t0.a=t1.a and t1.b +1 > 1000; send delete t1 from t1, t0 where t0.a=t1.a and t1.b +1 > 1000;
connection default; connection default;
--source include/wait_condition.inc --source include/wait_condition.inc
...@@ -63,7 +63,7 @@ reap; ...@@ -63,7 +63,7 @@ reap;
--echo # Test SHOW EXPLAIN for single-table UPDATE --echo # Test SHOW EXPLAIN for single-table UPDATE
--echo # --echo #
connection con2; connection con2;
set debug_dbug='+d,show_explain_probe_update_exec_start'; SET debug_dbug='+d,show_explain_probe_update_exec_start';
send update t1 set filler='filler-data-2' where a<10 and b+1>1000; send update t1 set filler='filler-data-2' where a<10 and b+1>1000;
connection default; connection default;
...@@ -74,5 +74,5 @@ reap; ...@@ -74,5 +74,5 @@ reap;
drop table t0,t1; drop table t0,t1;
set debug_dbug=@old_debug; SET debug_dbug=@old_debug;
set debug_sync='RESET'; set debug_sync='RESET';
...@@ -17,7 +17,8 @@ connection con1; ...@@ -17,7 +17,8 @@ connection con1;
connection default; connection default;
connection con1; connection con1;
set @show_explain_probe_select_id=1; set @show_explain_probe_select_id=1;
set debug_dbug='d,show_explain_probe_join_exec_start'; SET @saved_dbug = @@SESSION.debug_dbug;
SET debug_dbug='d,show_explain_probe_join_exec_start';
select count(*) from t0 where a < 100000; select count(*) from t0 where a < 100000;
connection default; connection default;
show explain for $thr2; show explain for $thr2;
...@@ -28,7 +29,7 @@ Note 1003 select count(*) from t0 where a < 100000 ...@@ -28,7 +29,7 @@ Note 1003 select count(*) from t0 where a < 100000
connection con1; connection con1;
count(*) count(*)
10 10
set debug_dbug=''; SET debug_dbug= @saved_dbug;
select event_name select event_name
from from
performance_schema.events_stages_history_long join performance_schema.events_stages_history_long join
......
...@@ -38,7 +38,8 @@ let $wait_condition= select State='show_explain_trap' from information_schema.pr ...@@ -38,7 +38,8 @@ let $wait_condition= select State='show_explain_trap' from information_schema.pr
# #
connection con1; connection con1;
set @show_explain_probe_select_id=1; set @show_explain_probe_select_id=1;
set debug_dbug='d,show_explain_probe_join_exec_start'; SET @saved_dbug = @@SESSION.debug_dbug;
SET debug_dbug='d,show_explain_probe_join_exec_start';
send select count(*) from t0 where a < 100000; send select count(*) from t0 where a < 100000;
connection default; connection default;
...@@ -47,7 +48,7 @@ evalp show explain for $thr2; ...@@ -47,7 +48,7 @@ evalp show explain for $thr2;
connection con1; connection con1;
reap; reap;
set debug_dbug=''; SET debug_dbug= @saved_dbug;
evalp select event_name evalp select event_name
from from
......
...@@ -3,7 +3,8 @@ create table t1 (a int, b int) engine=memory; ...@@ -3,7 +3,8 @@ create table t1 (a int, b int) engine=memory;
insert t1 select seq, seq+1 from seq_1_to_1000; insert t1 select seq, seq+1 from seq_1_to_1000;
set global general_log=0; set global general_log=0;
set global log_queries_not_using_indexes=1; set global log_queries_not_using_indexes=1;
set debug_dbug='+d,simulate_file_write_error'; SET @saved_dbug = @@SESSION.debug_dbug;
SET debug_dbug='+d,simulate_file_write_error';
select * from t1 where a>10; select * from t1 where a>10;
select * from t1 where a>10; select * from t1 where a>10;
select * from t1 where a>10; select * from t1 where a>10;
...@@ -54,7 +55,7 @@ select * from t1 where a>10; ...@@ -54,7 +55,7 @@ select * from t1 where a>10;
select * from t1 where a>10; select * from t1 where a>10;
select * from t1 where a>10; select * from t1 where a>10;
select * from t1 where a>10; select * from t1 where a>10;
set debug_dbug=''; SET debug_dbug= @saved_dbug;
set global general_log=1; set global general_log=1;
set global log_queries_not_using_indexes=default; set global log_queries_not_using_indexes=default;
drop table t1; drop table t1;
...@@ -9,7 +9,8 @@ create table t1 (a int, b int) engine=memory; ...@@ -9,7 +9,8 @@ create table t1 (a int, b int) engine=memory;
insert t1 select seq, seq+1 from seq_1_to_1000; insert t1 select seq, seq+1 from seq_1_to_1000;
set global general_log=0; set global general_log=0;
set global log_queries_not_using_indexes=1; set global log_queries_not_using_indexes=1;
set debug_dbug='+d,simulate_file_write_error'; SET @saved_dbug = @@SESSION.debug_dbug;
SET debug_dbug='+d,simulate_file_write_error';
--disable_result_log --disable_result_log
--let $run= 50 --let $run= 50
while ($run) while ($run)
...@@ -18,7 +19,7 @@ while ($run) ...@@ -18,7 +19,7 @@ while ($run)
dec $run; dec $run;
} }
--enable_result_log --enable_result_log
set debug_dbug=''; SET debug_dbug= @saved_dbug;
set global general_log=1; set global general_log=1;
set global log_queries_not_using_indexes=default; set global log_queries_not_using_indexes=default;
drop table t1; drop table t1;
call mtr.add_suppression("No space left on device"); call mtr.add_suppression("No space left on device");
create table t1 (a varchar(255), b varchar(255), c varchar(255)); create table t1 (a varchar(255), b varchar(255), c varchar(255));
set use_stat_tables=PREFERABLY, optimizer_use_condition_selectivity=3; set use_stat_tables=PREFERABLY, optimizer_use_condition_selectivity=3;
set debug_dbug='+d,simulate_file_write_error'; SET @saved_dbug = @@SESSION.debug_dbug;
SET debug_dbug='+d,simulate_file_write_error';
set @@max_heap_table_size=128*1024; set @@max_heap_table_size=128*1024;
analyze table t1; analyze table t1;
Table Op Msg_type Msg_text Table Op Msg_type Msg_text
test.t1 analyze Error Error writing file 'tmp-file' (Errcode: 28 "No space left on device") test.t1 analyze Error Error writing file 'tmp-file' (Errcode: 28 "No space left on device")
test.t1 analyze status Operation failed test.t1 analyze status Operation failed
set debug_dbug=''; SET debug_dbug= @saved_dbug;
drop table t1; drop table t1;
...@@ -16,9 +16,10 @@ while ($i) { ...@@ -16,9 +16,10 @@ while ($i) {
} }
--enable_query_log --enable_query_log
set use_stat_tables=PREFERABLY, optimizer_use_condition_selectivity=3; set use_stat_tables=PREFERABLY, optimizer_use_condition_selectivity=3;
set debug_dbug='+d,simulate_file_write_error'; SET @saved_dbug = @@SESSION.debug_dbug;
SET debug_dbug='+d,simulate_file_write_error';
set @@max_heap_table_size=128*1024; set @@max_heap_table_size=128*1024;
--replace_regex /'.*'/'tmp-file'/ --replace_regex /'.*'/'tmp-file'/
analyze table t1; analyze table t1;
set debug_dbug=''; SET debug_dbug= @saved_dbug;
drop table t1; drop table t1;
create table t1 (i tinyint); create table t1 (i tinyint);
set debug_dbug='+d,bug11747970_raise_error'; SET @saved_dbug = @@SESSION.debug_dbug;
SET debug_dbug='+d,bug11747970_raise_error';
insert into t1 (i) select i from t1 union select i from t1; insert into t1 (i) select i from t1 union select i from t1;
ERROR 70100: Query execution was interrupted ERROR 70100: Query execution was interrupted
drop table t1; drop table t1;
SET debug_dbug= @saved_dbug;
...@@ -3,7 +3,9 @@ ...@@ -3,7 +3,9 @@
# #
--source include/have_debug.inc --source include/have_debug.inc
create table t1 (i tinyint); create table t1 (i tinyint);
set debug_dbug='+d,bug11747970_raise_error'; SET @saved_dbug = @@SESSION.debug_dbug;
SET debug_dbug='+d,bug11747970_raise_error';
--error ER_QUERY_INTERRUPTED --error ER_QUERY_INTERRUPTED
insert into t1 (i) select i from t1 union select i from t1; insert into t1 (i) select i from t1 union select i from t1;
drop table t1; drop table t1;
SET debug_dbug= @saved_dbug;
\ No newline at end of file
drop table if exists t1; drop table if exists t1;
create table t1 (a int primary key) engine=innodb; create table t1 (a int primary key) engine=innodb;
SET @saved_dbug = @@SESSION.debug_dbug;
SET SESSION debug_dbug="+d,warn_during_ha_commit_trans"; SET SESSION debug_dbug="+d,warn_during_ha_commit_trans";
INSERT INTO t1 VALUES (1); INSERT INTO t1 VALUES (1);
Warnings: Warnings:
...@@ -8,3 +9,4 @@ SHOW WARNINGS; ...@@ -8,3 +9,4 @@ SHOW WARNINGS;
Level Code Message Level Code Message
Warning 1196 Some non-transactional changed tables couldn't be rolled back Warning 1196 Some non-transactional changed tables couldn't be rolled back
drop table t1; drop table t1;
SET debug_dbug= @saved_dbug;
...@@ -9,6 +9,7 @@ create table t1 (a int primary key) engine=innodb; ...@@ -9,6 +9,7 @@ create table t1 (a int primary key) engine=innodb;
# Test that warnings produced during autocommit (after calling # Test that warnings produced during autocommit (after calling
# set_ok_status()) are still reported to the client. # set_ok_status()) are still reported to the client.
SET @saved_dbug = @@SESSION.debug_dbug;
SET SESSION debug_dbug="+d,warn_during_ha_commit_trans"; SET SESSION debug_dbug="+d,warn_during_ha_commit_trans";
INSERT INTO t1 VALUES (1); INSERT INTO t1 VALUES (1);
# The warning will be shown automatically by mysqltest; there was a bug where # The warning will be shown automatically by mysqltest; there was a bug where
...@@ -17,3 +18,4 @@ INSERT INTO t1 VALUES (1); ...@@ -17,3 +18,4 @@ INSERT INTO t1 VALUES (1);
SHOW WARNINGS; SHOW WARNINGS;
drop table t1; drop table t1;
SET debug_dbug= @saved_dbug;
...@@ -15,12 +15,13 @@ RESET MASTER; ...@@ -15,12 +15,13 @@ RESET MASTER;
CREATE TABLE t1 (a INT PRIMARY KEY) ENGINE=innodb; CREATE TABLE t1 (a INT PRIMARY KEY) ENGINE=innodb;
INSERT INTO t1 VALUES(0); INSERT INTO t1 VALUES(0);
SET @saved_dbug = @@SESSION.debug_dbug;
SET SESSION debug_dbug='+d,fail_binlog_write_1'; SET SESSION debug_dbug='+d,fail_binlog_write_1';
--error ER_ERROR_ON_WRITE --error ER_ERROR_ON_WRITE
INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(1);
--error ER_ERROR_ON_WRITE --error ER_ERROR_ON_WRITE
INSERT INTO t1 VALUES(2); INSERT INTO t1 VALUES(2);
SET SESSION debug_dbug=''; SET SESSION debug_dbug=@saved_dbug;
INSERT INTO t1 VALUES(3); INSERT INTO t1 VALUES(3);
SELECT * FROM t1; SELECT * FROM t1;
......
...@@ -2,12 +2,13 @@ CALL mtr.add_suppression("Error writing file 'master-bin'"); ...@@ -2,12 +2,13 @@ CALL mtr.add_suppression("Error writing file 'master-bin'");
RESET MASTER; RESET MASTER;
CREATE TABLE t1 (a INT PRIMARY KEY) ENGINE=innodb; CREATE TABLE t1 (a INT PRIMARY KEY) ENGINE=innodb;
INSERT INTO t1 VALUES(0); INSERT INTO t1 VALUES(0);
SET @saved_dbug = @@SESSION.debug_dbug;
SET SESSION debug_dbug='+d,fail_binlog_write_1'; SET SESSION debug_dbug='+d,fail_binlog_write_1';
INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(1);
ERROR HY000: Error writing file 'master-bin' (errno: 28 "No space left on device") ERROR HY000: Error writing file 'master-bin' (errno: 28 "No space left on device")
INSERT INTO t1 VALUES(2); INSERT INTO t1 VALUES(2);
ERROR HY000: Error writing file 'master-bin' (errno: 28 "No space left on device") ERROR HY000: Error writing file 'master-bin' (errno: 28 "No space left on device")
SET SESSION debug_dbug=''; SET SESSION debug_dbug=@saved_dbug;
INSERT INTO t1 VALUES(3); INSERT INTO t1 VALUES(3);
SELECT * FROM t1; SELECT * FROM t1;
a a
......
...@@ -12,92 +12,109 @@ DROP VIEW IF EXISTS v1, v2; ...@@ -12,92 +12,109 @@ DROP VIEW IF EXISTS v1, v2;
# #
# Test injecting binlog write error when executing queries # Test injecting binlog write error when executing queries
# #
set @saved_dbug = @@global.debug_dbug;
SET GLOBAL debug_dbug='d,injecting_fault_writing'; SET GLOBAL debug_dbug='d,injecting_fault_writing';
CREATE TABLE t1 (a INT); CREATE TABLE t1 (a INT);
CREATE TABLE t1 (a INT); CREATE TABLE t1 (a INT);
ERROR HY000: Error writing file 'master-bin' ((errno: #) ERROR HY000: Error writing file 'master-bin' ((errno: #)
SET GLOBAL debug_dbug=''; set @@global.debug_dbug = @saved_dbug;
INSERT INTO t1 VALUES (1),(2),(3); INSERT INTO t1 VALUES (1),(2),(3);
set @saved_dbug = @@global.debug_dbug;
SET GLOBAL debug_dbug='d,injecting_fault_writing'; SET GLOBAL debug_dbug='d,injecting_fault_writing';
INSERT INTO t1 VALUES (4),(5),(6); INSERT INTO t1 VALUES (4),(5),(6);
INSERT INTO t1 VALUES (4),(5),(6); INSERT INTO t1 VALUES (4),(5),(6);
ERROR HY000: Error writing file 'master-bin' ((errno: #) ERROR HY000: Error writing file 'master-bin' ((errno: #)
SET GLOBAL debug_dbug=''; set @@global.debug_dbug = @saved_dbug;
set @saved_dbug = @@global.debug_dbug;
SET GLOBAL debug_dbug='d,injecting_fault_writing'; SET GLOBAL debug_dbug='d,injecting_fault_writing';
UPDATE t1 set a=a+1; UPDATE t1 set a=a+1;
UPDATE t1 set a=a+1; UPDATE t1 set a=a+1;
ERROR HY000: Error writing file 'master-bin' ((errno: #) ERROR HY000: Error writing file 'master-bin' ((errno: #)
SET GLOBAL debug_dbug=''; set @@global.debug_dbug = @saved_dbug;
set @saved_dbug = @@global.debug_dbug;
SET GLOBAL debug_dbug='d,injecting_fault_writing'; SET GLOBAL debug_dbug='d,injecting_fault_writing';
DELETE FROM t1; DELETE FROM t1;
DELETE FROM t1; DELETE FROM t1;
ERROR HY000: Error writing file 'master-bin' ((errno: #) ERROR HY000: Error writing file 'master-bin' ((errno: #)
SET GLOBAL debug_dbug=''; set @@global.debug_dbug = @saved_dbug;
set @saved_dbug = @@global.debug_dbug;
SET GLOBAL debug_dbug='d,injecting_fault_writing'; SET GLOBAL debug_dbug='d,injecting_fault_writing';
CREATE TRIGGER tr1 AFTER INSERT ON t1 FOR EACH ROW INSERT INTO t1 VALUES (new.a + 100); CREATE TRIGGER tr1 AFTER INSERT ON t1 FOR EACH ROW INSERT INTO t1 VALUES (new.a + 100);
CREATE TRIGGER tr1 AFTER INSERT ON t1 FOR EACH ROW INSERT INTO t1 VALUES (new.a + 100); CREATE TRIGGER tr1 AFTER INSERT ON t1 FOR EACH ROW INSERT INTO t1 VALUES (new.a + 100);
ERROR HY000: Error writing file 'master-bin' ((errno: #) ERROR HY000: Error writing file 'master-bin' ((errno: #)
SET GLOBAL debug_dbug=''; set @@global.debug_dbug = @saved_dbug;
set @saved_dbug = @@global.debug_dbug;
SET GLOBAL debug_dbug='d,injecting_fault_writing'; SET GLOBAL debug_dbug='d,injecting_fault_writing';
DROP TRIGGER tr1; DROP TRIGGER tr1;
DROP TRIGGER tr1; DROP TRIGGER tr1;
ERROR HY000: Error writing file 'master-bin' ((errno: #) ERROR HY000: Error writing file 'master-bin' ((errno: #)
SET GLOBAL debug_dbug=''; set @@global.debug_dbug = @saved_dbug;
set @saved_dbug = @@global.debug_dbug;
SET GLOBAL debug_dbug='d,injecting_fault_writing'; SET GLOBAL debug_dbug='d,injecting_fault_writing';
ALTER TABLE t1 ADD (b INT); ALTER TABLE t1 ADD (b INT);
ALTER TABLE t1 ADD (b INT); ALTER TABLE t1 ADD (b INT);
ERROR HY000: Error writing file 'master-bin' ((errno: #) ERROR HY000: Error writing file 'master-bin' ((errno: #)
SET GLOBAL debug_dbug=''; set @@global.debug_dbug = @saved_dbug;
set @saved_dbug = @@global.debug_dbug;
SET GLOBAL debug_dbug='d,injecting_fault_writing'; SET GLOBAL debug_dbug='d,injecting_fault_writing';
CREATE VIEW v1 AS SELECT a FROM t1; CREATE VIEW v1 AS SELECT a FROM t1;
CREATE VIEW v1 AS SELECT a FROM t1; CREATE VIEW v1 AS SELECT a FROM t1;
ERROR HY000: Error writing file 'master-bin' ((errno: #) ERROR HY000: Error writing file 'master-bin' ((errno: #)
SET GLOBAL debug_dbug=''; set @@global.debug_dbug = @saved_dbug;
set @saved_dbug = @@global.debug_dbug;
SET GLOBAL debug_dbug='d,injecting_fault_writing'; SET GLOBAL debug_dbug='d,injecting_fault_writing';
DROP VIEW v1; DROP VIEW v1;
DROP VIEW v1; DROP VIEW v1;
ERROR HY000: Error writing file 'master-bin' ((errno: #) ERROR HY000: Error writing file 'master-bin' ((errno: #)
SET GLOBAL debug_dbug=''; set @@global.debug_dbug = @saved_dbug;
set @saved_dbug = @@global.debug_dbug;
SET GLOBAL debug_dbug='d,injecting_fault_writing'; SET GLOBAL debug_dbug='d,injecting_fault_writing';
CREATE PROCEDURE p1(OUT rows_cnt INT) SELECT count(*) INTO rows_cnt FROM t1; CREATE PROCEDURE p1(OUT rows_cnt INT) SELECT count(*) INTO rows_cnt FROM t1;
CREATE PROCEDURE p1(OUT rows_cnt INT) SELECT count(*) INTO rows_cnt FROM t1; CREATE PROCEDURE p1(OUT rows_cnt INT) SELECT count(*) INTO rows_cnt FROM t1;
ERROR HY000: Error writing file 'master-bin' ((errno: #) ERROR HY000: Error writing file 'master-bin' ((errno: #)
SET GLOBAL debug_dbug=''; set @@global.debug_dbug = @saved_dbug;
set @saved_dbug = @@global.debug_dbug;
SET GLOBAL debug_dbug='d,injecting_fault_writing'; SET GLOBAL debug_dbug='d,injecting_fault_writing';
DROP PROCEDURE p1; DROP PROCEDURE p1;
DROP PROCEDURE p1; DROP PROCEDURE p1;
ERROR HY000: Error writing file 'master-bin' ((errno: #) ERROR HY000: Error writing file 'master-bin' ((errno: #)
SET GLOBAL debug_dbug=''; set @@global.debug_dbug = @saved_dbug;
set @saved_dbug = @@global.debug_dbug;
SET GLOBAL debug_dbug='d,injecting_fault_writing'; SET GLOBAL debug_dbug='d,injecting_fault_writing';
DROP TABLE t1; DROP TABLE t1;
DROP TABLE t1; DROP TABLE t1;
ERROR HY000: Error writing file 'master-bin' ((errno: #) ERROR HY000: Error writing file 'master-bin' ((errno: #)
SET GLOBAL debug_dbug=''; set @@global.debug_dbug = @saved_dbug;
set @saved_dbug = @@global.debug_dbug;
SET GLOBAL debug_dbug='d,injecting_fault_writing'; SET GLOBAL debug_dbug='d,injecting_fault_writing';
CREATE FUNCTION f1() RETURNS INT return 1; CREATE FUNCTION f1() RETURNS INT return 1;
CREATE FUNCTION f1() RETURNS INT return 1; CREATE FUNCTION f1() RETURNS INT return 1;
ERROR HY000: Error writing file 'master-bin' ((errno: #) ERROR HY000: Error writing file 'master-bin' ((errno: #)
SET GLOBAL debug_dbug=''; set @@global.debug_dbug = @saved_dbug;
set @saved_dbug = @@global.debug_dbug;
SET GLOBAL debug_dbug='d,injecting_fault_writing'; SET GLOBAL debug_dbug='d,injecting_fault_writing';
DROP FUNCTION f1; DROP FUNCTION f1;
DROP FUNCTION f1; DROP FUNCTION f1;
ERROR HY000: Error writing file 'master-bin' ((errno: #) ERROR HY000: Error writing file 'master-bin' ((errno: #)
SET GLOBAL debug_dbug=''; set @@global.debug_dbug = @saved_dbug;
set @saved_dbug = @@global.debug_dbug;
SET GLOBAL debug_dbug='d,injecting_fault_writing'; SET GLOBAL debug_dbug='d,injecting_fault_writing';
CREATE USER user1; CREATE USER user1;
CREATE USER user1; CREATE USER user1;
ERROR HY000: Error writing file 'master-bin' ((errno: #) ERROR HY000: Error writing file 'master-bin' ((errno: #)
SET GLOBAL debug_dbug=''; set @@global.debug_dbug = @saved_dbug;
set @saved_dbug = @@global.debug_dbug;
SET GLOBAL debug_dbug='d,injecting_fault_writing'; SET GLOBAL debug_dbug='d,injecting_fault_writing';
REVOKE ALL PRIVILEGES, GRANT OPTION FROM user1; REVOKE ALL PRIVILEGES, GRANT OPTION FROM user1;
REVOKE ALL PRIVILEGES, GRANT OPTION FROM user1; REVOKE ALL PRIVILEGES, GRANT OPTION FROM user1;
ERROR HY000: Error writing file 'master-bin' ((errno: #) ERROR HY000: Error writing file 'master-bin' ((errno: #)
SET GLOBAL debug_dbug=''; set @@global.debug_dbug = @saved_dbug;
set @saved_dbug = @@global.debug_dbug;
SET GLOBAL debug_dbug='d,injecting_fault_writing'; SET GLOBAL debug_dbug='d,injecting_fault_writing';
DROP USER user1; DROP USER user1;
DROP USER user1; DROP USER user1;
ERROR HY000: Error writing file 'master-bin' ((errno: #) ERROR HY000: Error writing file 'master-bin' ((errno: #)
SET GLOBAL debug_dbug=''; set @@global.debug_dbug = @saved_dbug;
# #
# Cleanup # Cleanup
# #
......
...@@ -2,12 +2,13 @@ CALL mtr.add_suppression("Error writing file 'master-bin'"); ...@@ -2,12 +2,13 @@ CALL mtr.add_suppression("Error writing file 'master-bin'");
RESET MASTER; RESET MASTER;
CREATE TABLE t1 (a INT PRIMARY KEY) ENGINE=innodb; CREATE TABLE t1 (a INT PRIMARY KEY) ENGINE=innodb;
INSERT INTO t1 VALUES(0); INSERT INTO t1 VALUES(0);
SET @saved_dbug = @@SESSION.debug_dbug;
SET SESSION debug_dbug='+d,fail_binlog_write_1'; SET SESSION debug_dbug='+d,fail_binlog_write_1';
INSERT INTO t1 VALUES(1); INSERT INTO t1 VALUES(1);
ERROR HY000: Error writing file 'master-bin' (errno: 28 "No space left on device") ERROR HY000: Error writing file 'master-bin' (errno: 28 "No space left on device")
INSERT INTO t1 VALUES(2); INSERT INTO t1 VALUES(2);
ERROR HY000: Error writing file 'master-bin' (errno: 28 "No space left on device") ERROR HY000: Error writing file 'master-bin' (errno: 28 "No space left on device")
SET SESSION debug_dbug=''; SET SESSION debug_dbug=@saved_dbug;
INSERT INTO t1 VALUES(3); INSERT INTO t1 VALUES(3);
SELECT * FROM t1; SELECT * FROM t1;
a a
......
...@@ -12,92 +12,109 @@ DROP VIEW IF EXISTS v1, v2; ...@@ -12,92 +12,109 @@ DROP VIEW IF EXISTS v1, v2;
# #
# Test injecting binlog write error when executing queries # Test injecting binlog write error when executing queries
# #
set @saved_dbug = @@global.debug_dbug;
SET GLOBAL debug_dbug='d,injecting_fault_writing'; SET GLOBAL debug_dbug='d,injecting_fault_writing';
CREATE TABLE t1 (a INT); CREATE TABLE t1 (a INT);
CREATE TABLE t1 (a INT); CREATE TABLE t1 (a INT);
ERROR HY000: Error writing file 'master-bin' ((errno: #) ERROR HY000: Error writing file 'master-bin' ((errno: #)
SET GLOBAL debug_dbug=''; set @@global.debug_dbug = @saved_dbug;
INSERT INTO t1 VALUES (1),(2),(3); INSERT INTO t1 VALUES (1),(2),(3);
set @saved_dbug = @@global.debug_dbug;
SET GLOBAL debug_dbug='d,injecting_fault_writing'; SET GLOBAL debug_dbug='d,injecting_fault_writing';
INSERT INTO t1 VALUES (4),(5),(6); INSERT INTO t1 VALUES (4),(5),(6);
INSERT INTO t1 VALUES (4),(5),(6); INSERT INTO t1 VALUES (4),(5),(6);
ERROR HY000: Error writing file 'master-bin' ((errno: #) ERROR HY000: Error writing file 'master-bin' ((errno: #)
SET GLOBAL debug_dbug=''; set @@global.debug_dbug = @saved_dbug;
set @saved_dbug = @@global.debug_dbug;
SET GLOBAL debug_dbug='d,injecting_fault_writing'; SET GLOBAL debug_dbug='d,injecting_fault_writing';
UPDATE t1 set a=a+1; UPDATE t1 set a=a+1;
UPDATE t1 set a=a+1; UPDATE t1 set a=a+1;
ERROR HY000: Error writing file 'master-bin' ((errno: #) ERROR HY000: Error writing file 'master-bin' ((errno: #)
SET GLOBAL debug_dbug=''; set @@global.debug_dbug = @saved_dbug;
set @saved_dbug = @@global.debug_dbug;
SET GLOBAL debug_dbug='d,injecting_fault_writing'; SET GLOBAL debug_dbug='d,injecting_fault_writing';
DELETE FROM t1; DELETE FROM t1;
DELETE FROM t1; DELETE FROM t1;
ERROR HY000: Error writing file 'master-bin' ((errno: #) ERROR HY000: Error writing file 'master-bin' ((errno: #)
SET GLOBAL debug_dbug=''; set @@global.debug_dbug = @saved_dbug;
set @saved_dbug = @@global.debug_dbug;
SET GLOBAL debug_dbug='d,injecting_fault_writing'; SET GLOBAL debug_dbug='d,injecting_fault_writing';
CREATE TRIGGER tr1 AFTER INSERT ON t1 FOR EACH ROW INSERT INTO t1 VALUES (new.a + 100); CREATE TRIGGER tr1 AFTER INSERT ON t1 FOR EACH ROW INSERT INTO t1 VALUES (new.a + 100);
CREATE TRIGGER tr1 AFTER INSERT ON t1 FOR EACH ROW INSERT INTO t1 VALUES (new.a + 100); CREATE TRIGGER tr1 AFTER INSERT ON t1 FOR EACH ROW INSERT INTO t1 VALUES (new.a + 100);
ERROR HY000: Error writing file 'master-bin' ((errno: #) ERROR HY000: Error writing file 'master-bin' ((errno: #)
SET GLOBAL debug_dbug=''; set @@global.debug_dbug = @saved_dbug;
set @saved_dbug = @@global.debug_dbug;
SET GLOBAL debug_dbug='d,injecting_fault_writing'; SET GLOBAL debug_dbug='d,injecting_fault_writing';
DROP TRIGGER tr1; DROP TRIGGER tr1;
DROP TRIGGER tr1; DROP TRIGGER tr1;
ERROR HY000: Error writing file 'master-bin' ((errno: #) ERROR HY000: Error writing file 'master-bin' ((errno: #)
SET GLOBAL debug_dbug=''; set @@global.debug_dbug = @saved_dbug;
set @saved_dbug = @@global.debug_dbug;
SET GLOBAL debug_dbug='d,injecting_fault_writing'; SET GLOBAL debug_dbug='d,injecting_fault_writing';
ALTER TABLE t1 ADD (b INT); ALTER TABLE t1 ADD (b INT);
ALTER TABLE t1 ADD (b INT); ALTER TABLE t1 ADD (b INT);
ERROR HY000: Error writing file 'master-bin' ((errno: #) ERROR HY000: Error writing file 'master-bin' ((errno: #)
SET GLOBAL debug_dbug=''; set @@global.debug_dbug = @saved_dbug;
set @saved_dbug = @@global.debug_dbug;
SET GLOBAL debug_dbug='d,injecting_fault_writing'; SET GLOBAL debug_dbug='d,injecting_fault_writing';
CREATE VIEW v1 AS SELECT a FROM t1; CREATE VIEW v1 AS SELECT a FROM t1;
CREATE VIEW v1 AS SELECT a FROM t1; CREATE VIEW v1 AS SELECT a FROM t1;
ERROR HY000: Error writing file 'master-bin' ((errno: #) ERROR HY000: Error writing file 'master-bin' ((errno: #)
SET GLOBAL debug_dbug=''; set @@global.debug_dbug = @saved_dbug;
set @saved_dbug = @@global.debug_dbug;
SET GLOBAL debug_dbug='d,injecting_fault_writing'; SET GLOBAL debug_dbug='d,injecting_fault_writing';
DROP VIEW v1; DROP VIEW v1;
DROP VIEW v1; DROP VIEW v1;
ERROR HY000: Error writing file 'master-bin' ((errno: #) ERROR HY000: Error writing file 'master-bin' ((errno: #)
SET GLOBAL debug_dbug=''; set @@global.debug_dbug = @saved_dbug;
set @saved_dbug = @@global.debug_dbug;
SET GLOBAL debug_dbug='d,injecting_fault_writing'; SET GLOBAL debug_dbug='d,injecting_fault_writing';
CREATE PROCEDURE p1(OUT rows_cnt INT) SELECT count(*) INTO rows_cnt FROM t1; CREATE PROCEDURE p1(OUT rows_cnt INT) SELECT count(*) INTO rows_cnt FROM t1;
CREATE PROCEDURE p1(OUT rows_cnt INT) SELECT count(*) INTO rows_cnt FROM t1; CREATE PROCEDURE p1(OUT rows_cnt INT) SELECT count(*) INTO rows_cnt FROM t1;
ERROR HY000: Error writing file 'master-bin' ((errno: #) ERROR HY000: Error writing file 'master-bin' ((errno: #)
SET GLOBAL debug_dbug=''; set @@global.debug_dbug = @saved_dbug;
set @saved_dbug = @@global.debug_dbug;
SET GLOBAL debug_dbug='d,injecting_fault_writing'; SET GLOBAL debug_dbug='d,injecting_fault_writing';
DROP PROCEDURE p1; DROP PROCEDURE p1;
DROP PROCEDURE p1; DROP PROCEDURE p1;
ERROR HY000: Error writing file 'master-bin' ((errno: #) ERROR HY000: Error writing file 'master-bin' ((errno: #)
SET GLOBAL debug_dbug=''; set @@global.debug_dbug = @saved_dbug;
set @saved_dbug = @@global.debug_dbug;
SET GLOBAL debug_dbug='d,injecting_fault_writing'; SET GLOBAL debug_dbug='d,injecting_fault_writing';
DROP TABLE t1; DROP TABLE t1;
DROP TABLE t1; DROP TABLE t1;
ERROR HY000: Error writing file 'master-bin' ((errno: #) ERROR HY000: Error writing file 'master-bin' ((errno: #)
SET GLOBAL debug_dbug=''; set @@global.debug_dbug = @saved_dbug;
set @saved_dbug = @@global.debug_dbug;
SET GLOBAL debug_dbug='d,injecting_fault_writing'; SET GLOBAL debug_dbug='d,injecting_fault_writing';
CREATE FUNCTION f1() RETURNS INT return 1; CREATE FUNCTION f1() RETURNS INT return 1;
CREATE FUNCTION f1() RETURNS INT return 1; CREATE FUNCTION f1() RETURNS INT return 1;
ERROR HY000: Error writing file 'master-bin' ((errno: #) ERROR HY000: Error writing file 'master-bin' ((errno: #)
SET GLOBAL debug_dbug=''; set @@global.debug_dbug = @saved_dbug;
set @saved_dbug = @@global.debug_dbug;
SET GLOBAL debug_dbug='d,injecting_fault_writing'; SET GLOBAL debug_dbug='d,injecting_fault_writing';
DROP FUNCTION f1; DROP FUNCTION f1;
DROP FUNCTION f1; DROP FUNCTION f1;
ERROR HY000: Error writing file 'master-bin' ((errno: #) ERROR HY000: Error writing file 'master-bin' ((errno: #)
SET GLOBAL debug_dbug=''; set @@global.debug_dbug = @saved_dbug;
set @saved_dbug = @@global.debug_dbug;
SET GLOBAL debug_dbug='d,injecting_fault_writing'; SET GLOBAL debug_dbug='d,injecting_fault_writing';
CREATE USER user1; CREATE USER user1;
CREATE USER user1; CREATE USER user1;
ERROR HY000: Error writing file 'master-bin' ((errno: #) ERROR HY000: Error writing file 'master-bin' ((errno: #)
SET GLOBAL debug_dbug=''; set @@global.debug_dbug = @saved_dbug;
set @saved_dbug = @@global.debug_dbug;
SET GLOBAL debug_dbug='d,injecting_fault_writing'; SET GLOBAL debug_dbug='d,injecting_fault_writing';
REVOKE ALL PRIVILEGES, GRANT OPTION FROM user1; REVOKE ALL PRIVILEGES, GRANT OPTION FROM user1;
REVOKE ALL PRIVILEGES, GRANT OPTION FROM user1; REVOKE ALL PRIVILEGES, GRANT OPTION FROM user1;
ERROR HY000: Error writing file 'master-bin' ((errno: #) ERROR HY000: Error writing file 'master-bin' ((errno: #)
SET GLOBAL debug_dbug=''; set @@global.debug_dbug = @saved_dbug;
set @saved_dbug = @@global.debug_dbug;
SET GLOBAL debug_dbug='d,injecting_fault_writing'; SET GLOBAL debug_dbug='d,injecting_fault_writing';
DROP USER user1; DROP USER user1;
DROP USER user1; DROP USER user1;
ERROR HY000: Error writing file 'master-bin' ((errno: #) ERROR HY000: Error writing file 'master-bin' ((errno: #)
SET GLOBAL debug_dbug=''; set @@global.debug_dbug = @saved_dbug;
# #
# Cleanup # Cleanup
# #
......
...@@ -76,6 +76,7 @@ connection master; ...@@ -76,6 +76,7 @@ connection master;
set @@global.binlog_checksum = CRC32; set @@global.binlog_checksum = CRC32;
insert into t1 values (1) /* will not be applied on slave due to simulation */; insert into t1 values (1) /* will not be applied on slave due to simulation */;
connection slave; connection slave;
set @saved_dbug = @@global.debug_dbug;
set @@global.debug_dbug='d,simulate_slave_unaware_checksum'; set @@global.debug_dbug='d,simulate_slave_unaware_checksum';
start slave; start slave;
include/wait_for_slave_io_error.inc [errno=1236] include/wait_for_slave_io_error.inc [errno=1236]
...@@ -83,15 +84,16 @@ Last_IO_Error = 'Got fatal error 1236 from master when reading data from binary ...@@ -83,15 +84,16 @@ Last_IO_Error = 'Got fatal error 1236 from master when reading data from binary
select count(*) as zero from t1; select count(*) as zero from t1;
zero zero
0 0
set @@global.debug_dbug=''; set @@global.debug_dbug = @saved_dbug;
connection slave; connection slave;
include/start_slave.inc include/start_slave.inc
connection master; connection master;
set @@global.master_verify_checksum = 1; set @@global.master_verify_checksum = 1;
set @save_dbug = @@session.debug_dbug;
set @@session.debug_dbug='d,simulate_checksum_test_failure'; set @@session.debug_dbug='d,simulate_checksum_test_failure';
show binlog events; show binlog events;
ERROR HY000: Error when executing command SHOW BINLOG EVENTS: Wrong offset or I/O error ERROR HY000: Error when executing command SHOW BINLOG EVENTS: Wrong offset or I/O error
set @@session.debug_dbug=''; SET debug_dbug= @save_dbug;
set @@global.master_verify_checksum = default; set @@global.master_verify_checksum = default;
connection slave; connection slave;
connection slave; connection slave;
...@@ -99,10 +101,11 @@ include/stop_slave.inc ...@@ -99,10 +101,11 @@ include/stop_slave.inc
connection master; connection master;
create table t2 (a int); create table t2 (a int);
connection slave; connection slave;
set @saved_dbug = @@global.debug_dbug;
set @@global.debug_dbug='d,simulate_checksum_test_failure'; set @@global.debug_dbug='d,simulate_checksum_test_failure';
start slave io_thread; start slave io_thread;
include/wait_for_slave_io_error.inc [errno=1595,1913] include/wait_for_slave_io_error.inc [errno=1595,1913]
set @@global.debug_dbug=''; set @@global.debug_dbug = @saved_dbug;
start slave io_thread; start slave io_thread;
include/wait_for_slave_param.inc [Read_Master_Log_Pos] include/wait_for_slave_param.inc [Read_Master_Log_Pos]
set @@global.slave_sql_verify_checksum = 1; set @@global.slave_sql_verify_checksum = 1;
...@@ -110,7 +113,7 @@ set @@global.debug_dbug='d,simulate_checksum_test_failure'; ...@@ -110,7 +113,7 @@ set @@global.debug_dbug='d,simulate_checksum_test_failure';
start slave sql_thread; start slave sql_thread;
include/wait_for_slave_sql_error.inc [errno=1593] include/wait_for_slave_sql_error.inc [errno=1593]
Last_SQL_Error = 'Error initializing relay log position: I/O error reading event at position 4' Last_SQL_Error = 'Error initializing relay log position: I/O error reading event at position 4'
set @@global.debug_dbug=''; set @@global.debug_dbug = @saved_dbug;
include/start_slave.inc include/start_slave.inc
connection master; connection master;
connection slave; connection slave;
......
...@@ -13,6 +13,7 @@ connection master; ...@@ -13,6 +13,7 @@ connection master;
CREATE TABLE t1 (a INT NOT NULL PRIMARY KEY, b VARCHAR(10), c VARCHAR(100)); CREATE TABLE t1 (a INT NOT NULL PRIMARY KEY, b VARCHAR(10), c VARCHAR(100));
include/stop_slave.inc include/stop_slave.inc
# 2. Corruption in master binlog and SHOW BINLOG EVENTS # 2. Corruption in master binlog and SHOW BINLOG EVENTS
set @saved_dbug = @@global.debug_dbug;
SET GLOBAL debug_dbug="+d,corrupt_read_log_event_char"; SET GLOBAL debug_dbug="+d,corrupt_read_log_event_char";
SHOW BINLOG EVENTS; SHOW BINLOG EVENTS;
ERROR HY000: Error when executing command SHOW BINLOG EVENTS: Wrong offset or I/O error ERROR HY000: Error when executing command SHOW BINLOG EVENTS: Wrong offset or I/O error
...@@ -55,9 +56,9 @@ connection slave; ...@@ -55,9 +56,9 @@ connection slave;
include/diff_tables.inc [master:test.t1, slave:test.t1] include/diff_tables.inc [master:test.t1, slave:test.t1]
# 8. Clean up # 8. Clean up
connection master; connection master;
SET GLOBAL debug_dbug= ""; set @@global.debug_dbug = @saved_dbug;
SET GLOBAL master_verify_checksum = @old_master_verify_checksum; SET GLOBAL master_verify_checksum = @old_master_verify_checksum;
DROP TABLE t1; DROP TABLE t1;
connection slave; connection slave;
SET GLOBAL debug_dbug= ""; set @@global.debug_dbug = @saved_dbug;
include/rpl_end.inc include/rpl_end.inc
...@@ -14,6 +14,7 @@ a ...@@ -14,6 +14,7 @@ a
1 1
2 2
3 3
set @saved_dbug = @@global.debug_dbug;
SET GLOBAL debug_dbug= '+d,incident_database_resync_on_replace,*'; SET GLOBAL debug_dbug= '+d,incident_database_resync_on_replace,*';
REPLACE INTO t1 VALUES (4); REPLACE INTO t1 VALUES (4);
SELECT * FROM t1; SELECT * FROM t1;
...@@ -22,6 +23,7 @@ a ...@@ -22,6 +23,7 @@ a
2 2
3 3
4 4
set @@global.debug_dbug = @saved_dbug;
connection slave; connection slave;
call mtr.add_suppression("Slave SQL.*The incident LOST_EVENTS occurred on the master.* 1590"); call mtr.add_suppression("Slave SQL.*The incident LOST_EVENTS occurred on the master.* 1590");
include/wait_for_slave_sql_error.inc [errno=1590] include/wait_for_slave_sql_error.inc [errno=1590]
......
...@@ -4,12 +4,13 @@ connection slave; ...@@ -4,12 +4,13 @@ connection slave;
stop slave; stop slave;
reset slave; reset slave;
connection slave; connection slave;
set @saved_dbug = @@global.debug_dbug;
SET GLOBAL debug_dbug= "d,simulate_io_slave_error_on_init,simulate_sql_slave_error_on_init"; SET GLOBAL debug_dbug= "d,simulate_io_slave_error_on_init,simulate_sql_slave_error_on_init";
start slave; start slave;
include/wait_for_slave_sql_error.inc [errno=1593] include/wait_for_slave_sql_error.inc [errno=1593]
Last_SQL_Error = 'Failed during slave thread initialization' Last_SQL_Error = 'Failed during slave thread initialization'
call mtr.add_suppression("Failed during slave.* thread initialization"); call mtr.add_suppression("Failed during slave.* thread initialization");
SET GLOBAL debug_dbug= ""; set @@global.debug_dbug = @saved_dbug;
connection slave; connection slave;
reset slave; reset slave;
SET GLOBAL init_slave= "garbage"; SET GLOBAL init_slave= "garbage";
......
...@@ -11,23 +11,38 @@ ...@@ -11,23 +11,38 @@
############################################################################## ##############################################################################
MW-286 : MDEV-18464 Killing thread can cause mutex deadlock if done concurrently with Galera/replication victim kill MW-286 : MDEV-18464 Killing thread can cause mutex deadlock if done concurrently with Galera/replication victim kill
MW-328A : MDEV-21483 galera.MW-328A galera.MW-328B
MW-328B : MDEV-21483 galera.MW-328A galera.MW-328B
MW-329 : MDEV-19962 Galera test failure on MW-329 MW-329 : MDEV-19962 Galera test failure on MW-329
MW-388: MDEV-19803 Long semaphore wait error on galera.MW-388 MW-336 : MDEV-17062 Test failure on galera.MW-336
galera.galera_defaults : MDEV-21494 Galera test sporadic failure on galera.galera_defaults
galera_account_management : MariaDB 10.0 does not support ALTER USER galera_account_management : MariaDB 10.0 does not support ALTER USER
galera_as_master_gtid : Requires MySQL GTID galera_as_master_gtid : Requires MySQL GTID
galera_as_master_gtid_change_master : Requires MySQL GTID galera_as_master_gtid_change_master : Requires MySQL GTID
galera_as_slave_gtid_myisam : MDEV-21421 galera.galera_as_slave_gtid_myisam
galera_as_slave_preordered : wsrep-preordered feature not merged to MariaDB galera_as_slave_preordered : wsrep-preordered feature not merged to MariaDB
galera_as_slave_replication_bundle : MDEV-15785 OPTION_GTID_BEGIN is set in Gtid_log_event::do_apply_event() galera_as_slave_replication_bundle : MDEV-15785 OPTION_GTID_BEGIN is set in Gtid_log_event::do_apply_event()
galera_autoinc_sst_mariabackup : Known issue, may require porting MDEV-17458 from later versions galera_autoinc_sst_mariabackup : Known issue, may require porting MDEV-17458 from later versions
galera_binlog_rows_query_log_events: MariaDB does not support binlog_rows_query_log_events galera_binlog_rows_query_log_events: MariaDB does not support binlog_rows_query_log_events
galera_binlog_stmt_autoinc : MDEV-19959 Galera test failure on galera_binlog_stmt_autoinc
galera_binlog_stmt_autoinc: MDEV-19959 Galera test failure on galera_binlog_stmt_autoinc galera_binlog_stmt_autoinc: MDEV-19959 Galera test failure on galera_binlog_stmt_autoinc
galera_flush : MariaDB does not have global.thread_statistics galera_flush : MariaDB does not have global.thread_statistics
galera_gcache_recover_manytrx : MDEV-18834 Galera test failure galera_gcache_recover_manytrx : MDEV-18834 Galera test failure
galera_ist_mariabackup : MDEV-18829 test leaves port open galera_ist_mariabackup : MDEV-18829 test leaves port open
galera_ist_progress : MDEV-15236 fails when trying to read transfer status galera_ist_progress : MDEV-15236 fails when trying to read transfer status
galera_load_data : MDEV-19968 galera.galera_load_data
galera_migrate : MariaDB does not support START SLAVE USER galera_migrate : MariaDB does not support START SLAVE USER
galera_parallel_autoinc_largetrx : MDEV-20916 galera.galera_parallel_autoinc_largetrx
galera_parallel_simple : MDEV-20318 galera.galera_parallel_simple fails
galera_shutdown_nonprim : MDEV-21493 galera.galera_shutdown_nonprim
galera_ssl_upgrade : MDEV-19950 Galera test failure on galera_ssl_upgrade galera_ssl_upgrade : MDEV-19950 Galera test failure on galera_ssl_upgrade
galera_sst_mariabackup_encrypt_with_key : MDEV-21484 galera_sst_mariabackup_encrypt_with_key
galera_sst_mariabackup_table_options: MDEV-19741 Galera test failure on galera.galera_sst_mariabackup_table_options
galera_var_innodb_disallow_writes : MDEV-20928 galera.galera_var_innodb_disallow_writes
galera_var_node_address : MDEV-20485 Galera test failure galera_var_node_address : MDEV-20485 Galera test failure
galera_var_notify_cmd : MDEV-21488 galera.galera_var_notify_cmd
galera_wan : MDEV-17259 Test failure on galera.galera_wan galera_wan : MDEV-17259 Test failure on galera.galera_wan
mysql-wsrep#33 : MDEV-21420 galera.mysql-wsrep#33
partition : MDEV-19958 Galera test failure on galera.partition partition : MDEV-19958 Galera test failure on galera.partition
query_cache: MDEV-15805 Test failure on galera.query_cache query_cache: MDEV-15805 Test failure on galera.query_cache
sql_log_bin : MDEV-21491 galera.sql_log_bin
...@@ -18,12 +18,10 @@ connection node_1a; ...@@ -18,12 +18,10 @@ connection node_1a;
SET SESSION DEBUG_SYNC = "now WAIT_FOR sync.wsrep_apply_cb_reached"; SET SESSION DEBUG_SYNC = "now WAIT_FOR sync.wsrep_apply_cb_reached";
connection node_1; connection node_1;
SET SESSION wsrep_sync_wait = 0; SET SESSION wsrep_sync_wait = 0;
SET SESSION DEBUG_SYNC = 'wsrep_after_replication SIGNAL wsrep_after_replication_reached WAIT_FOR wsrep_after_replication_continue';
CALL insert_proc ();; CALL insert_proc ();;
connection node_1a; connection node_1a;
SET SESSION DEBUG_SYNC = "now WAIT_FOR wsrep_after_replication_reached"; SET SESSION wsrep_sync_wait = 0;
SET GLOBAL DEBUG_DBUG = ""; SET GLOBAL DEBUG_DBUG = "";
SET DEBUG_SYNC = "now SIGNAL wsrep_after_replication_continue";
SET DEBUG_SYNC = "now SIGNAL signal.wsrep_apply_cb"; SET DEBUG_SYNC = "now SIGNAL signal.wsrep_apply_cb";
connection node_2; connection node_2;
connection node_1; connection node_1;
......
...@@ -14,6 +14,7 @@ SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFIN ...@@ -14,6 +14,7 @@ SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFIN
EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD STATUS ON_COMPLETION EVENT_COMMENT EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD STATUS ON_COMPLETION EVENT_COMMENT
def test event_2 root@localhost SQL INSERT INTO event_table VALUES (1) RECURRING NULL 1 SECOND ENABLED NOT PRESERVE def test event_2 root@localhost SQL INSERT INTO event_table VALUES (1) RECURRING NULL 1 SECOND ENABLED NOT PRESERVE
connection node_2; connection node_2;
set global wsrep_sync_wait=15;
# node_2 event should be there # node_2 event should be there
SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_NAME='event_2'; SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_NAME='event_2';
EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD STATUS ON_COMPLETION EVENT_COMMENT EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD STATUS ON_COMPLETION EVENT_COMMENT
......
...@@ -13,7 +13,6 @@ Loading wsrep_provider ... ...@@ -13,7 +13,6 @@ Loading wsrep_provider ...
SET SESSION wsrep_on=OFF; SET SESSION wsrep_on=OFF;
SET SESSION wsrep_on=ON; SET SESSION wsrep_on=ON;
connection node_1; connection node_1;
connection node_1;
UPDATE t1 SET f2 = 'd' WHERE f1 > 3; UPDATE t1 SET f2 = 'd' WHERE f1 > 3;
connection node_2; connection node_2;
connection node_1; connection node_1;
......
...@@ -31,6 +31,8 @@ DELIMITER ;| ...@@ -31,6 +31,8 @@ DELIMITER ;|
SET GLOBAL wsrep_slave_threads = 2; SET GLOBAL wsrep_slave_threads = 2;
SET GLOBAL DEBUG_DBUG = "d,sync.wsrep_apply_cb"; SET GLOBAL DEBUG_DBUG = "d,sync.wsrep_apply_cb";
--let $expected_cert_failures = `SELECT VARIABLE_VALUE + 1 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_local_cert_failures'`
--connection node_2 --connection node_2
--send INSERT INTO t1 VALUES (1, 'node 2'); --send INSERT INTO t1 VALUES (1, 'node 2');
...@@ -40,15 +42,15 @@ SET SESSION DEBUG_SYNC = "now WAIT_FOR sync.wsrep_apply_cb_reached"; ...@@ -40,15 +42,15 @@ SET SESSION DEBUG_SYNC = "now WAIT_FOR sync.wsrep_apply_cb_reached";
--connection node_1 --connection node_1
SET SESSION wsrep_sync_wait = 0; SET SESSION wsrep_sync_wait = 0;
SET SESSION DEBUG_SYNC = 'wsrep_after_replication SIGNAL wsrep_after_replication_reached WAIT_FOR wsrep_after_replication_continue';
--send CALL insert_proc (); --send CALL insert_proc ();
--connection node_1a --connection node_1a
SET SESSION DEBUG_SYNC = "now WAIT_FOR wsrep_after_replication_reached"; SET SESSION wsrep_sync_wait = 0;
--let $wait_condition = SELECT VARIABLE_VALUE = $expected_cert_failures FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_local_cert_failures'
--source include/wait_condition.inc
SET GLOBAL DEBUG_DBUG = ""; SET GLOBAL DEBUG_DBUG = "";
SET DEBUG_SYNC = "now SIGNAL wsrep_after_replication_continue";
SET DEBUG_SYNC = "now SIGNAL signal.wsrep_apply_cb"; SET DEBUG_SYNC = "now SIGNAL signal.wsrep_apply_cb";
--connection node_2 --connection node_2
......
...@@ -23,6 +23,7 @@ DO ...@@ -23,6 +23,7 @@ DO
SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_NAME='event_2'; SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_NAME='event_2';
--connection node_2 --connection node_2
set global wsrep_sync_wait=15;
--echo # node_2 event should be there --echo # node_2 event should be there
SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_NAME='event_2'; SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_NAME='event_2';
...@@ -66,6 +67,9 @@ ALTER EVENT one_event ON SCHEDULE EVERY 10 SECOND; ...@@ -66,6 +67,9 @@ ALTER EVENT one_event ON SCHEDULE EVERY 10 SECOND;
SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_NAME='one_event'; SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_NAME='one_event';
--connection node_2 --connection node_2
--let $wait_condition = SELECT COUNT(*) = 1 FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_NAME='one_event';
--source include/wait_condition.inc
use events_test; use events_test;
--echo "The definer should be ev_test@localhost" --echo "The definer should be ev_test@localhost"
SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_NAME='one_event'; SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_NAME='one_event';
......
...@@ -265,7 +265,7 @@ DROP TABLE t1, t2; ...@@ -265,7 +265,7 @@ DROP TABLE t1, t2;
--echo # --echo #
--let $datadir= `select @@datadir` --let $datadir= `select @@datadir`
set @saved_dbug= @@global.debug_dbug; SET @saved_dbug= @@GLOBAL.debug_dbug;
set global debug_dbug= "+d,ib_purge_virtual_mdev_16222_1,ib_purge_virtual_mdev_16222_2"; set global debug_dbug= "+d,ib_purge_virtual_mdev_16222_1,ib_purge_virtual_mdev_16222_2";
create table t1 ( create table t1 (
...@@ -336,7 +336,7 @@ SET GLOBAL innodb_debug_sync = "ib_open_after_dict_open " ...@@ -336,7 +336,7 @@ SET GLOBAL innodb_debug_sync = "ib_open_after_dict_open "
# In 10.2 trx_undo_roll_ptr_is_insert(t_roll_ptr) condition never pass in purge, # In 10.2 trx_undo_roll_ptr_is_insert(t_roll_ptr) condition never pass in purge,
# so this condition is forced to pass in row_vers_old_has_index_entry # so this condition is forced to pass in row_vers_old_has_index_entry
set @saved_dbug= @@global.debug_dbug; SET @saved_dbug= @@GLOBAL.debug_dbug;
set global debug_dbug= "+d,ib_purge_virtual_index_callback"; set global debug_dbug= "+d,ib_purge_virtual_index_callback";
# The purge starts from REPLACE command. To avoid possible race, separate # The purge starts from REPLACE command. To avoid possible race, separate
......
...@@ -7,9 +7,11 @@ insert into t1 values (1, repeat('*', 50000)); ...@@ -7,9 +7,11 @@ insert into t1 values (1, repeat('*', 50000));
select f1, substring(f2, 1, 40) from t1; select f1, substring(f2, 1, 40) from t1;
f1 substring(f2, 1, 40) f1 substring(f2, 1, 40)
1 **************************************** 1 ****************************************
set debug_dbug = 'd,row_ins_index_entry_timeout'; set @saved_debug = @@session.debug_dbug;
SET debug_dbug = 'd,row_ins_index_entry_timeout';
update t1 set f1 = 3; update t1 set f1 = 3;
select f1, substring(f2, 1, 40) from t1; select f1, substring(f2, 1, 40) from t1;
f1 substring(f2, 1, 40) f1 substring(f2, 1, 40)
3 **************************************** 3 ****************************************
drop table t1; drop table t1;
SET debug_dbug= @saved_debug;
...@@ -5,10 +5,10 @@ create table t1 (f1 int primary key, f2 int, f3 int, unique key k1(f2), ...@@ -5,10 +5,10 @@ create table t1 (f1 int primary key, f2 int, f3 int, unique key k1(f2),
key k2(f3)) engine=innodb; key k2(f3)) engine=innodb;
insert into t1 values (14, 24, 34); insert into t1 values (14, 24, 34);
set @old_dbug= @@session.debug_dbug; set @old_dbug= @@session.debug_dbug;
set debug_dbug = '+d,row_ins_sec_index_entry_timeout'; SET debug_dbug = '+d,row_ins_sec_index_entry_timeout';
replace into t1 values (14, 25, 34); replace into t1 values (14, 25, 34);
select * from t1; select * from t1;
f1 f2 f3 f1 f2 f3
14 25 34 14 25 34
drop table t1; drop table t1;
set debug_dbug = @old_dbug; SET debug_dbug = @old_dbug;
call mtr.add_suppression("InnoDB: Warning: Index.*"); call mtr.add_suppression("InnoDB: Warning: Index.*");
SET @saved_dbug = @@SESSION.debug_dbug;
set DEBUG_DBUG='+d,ib_ha_innodb_stat_not_initialized'; set DEBUG_DBUG='+d,ib_ha_innodb_stat_not_initialized';
create table t1(a int not null primary key, b int, c int, key(b), key(c)) engine=innodb; create table t1(a int not null primary key, b int, c int, key(b), key(c)) engine=innodb;
create procedure innodb_insert_proc (repeat_count int) create procedure innodb_insert_proc (repeat_count int)
...@@ -27,6 +28,6 @@ count(1) ...@@ -27,6 +28,6 @@ count(1)
select count(1) from t1 where c between 7 and 787; select count(1) from t1 where c between 7 and 787;
count(1) count(1)
781 781
set DEBUG_DBUG=NULL;
drop procedure innodb_insert_proc; drop procedure innodb_insert_proc;
drop table t1; drop table t1;
SET debug_dbug= @saved_dbug;
...@@ -389,7 +389,7 @@ CREATE TABLE testdb_wl5522.t1 ( i bigint) ENGINE = Innodb; ...@@ -389,7 +389,7 @@ CREATE TABLE testdb_wl5522.t1 ( i bigint) ENGINE = Innodb;
ALTER TABLE testdb_wl5522.t1 DISCARD TABLESPACE; ALTER TABLE testdb_wl5522.t1 DISCARD TABLESPACE;
restore: t1 .ibd and .cfg files restore: t1 .ibd and .cfg files
ALTER TABLE testdb_wl5522.t1 IMPORT TABLESPACE; ALTER TABLE testdb_wl5522.t1 IMPORT TABLESPACE;
ERROR HY000: Schema mismatch (Column i precise type mismatch.) ERROR HY000: Schema mismatch (Column i precise type mismatch, it's 0X408 in the table and 0X403 in the tablespace meta file)
unlink: t1.ibd unlink: t1.ibd
unlink: t1.cfg unlink: t1.cfg
DROP TABLE testdb_wl5522.t1; DROP TABLE testdb_wl5522.t1;
......
...@@ -426,7 +426,7 @@ SELECT * FROM t1; ...@@ -426,7 +426,7 @@ SELECT * FROM t1;
ERROR HY000: Tablespace has been discarded for table `t1` ERROR HY000: Tablespace has been discarded for table `t1`
restore: t1 .ibd and .cfg files restore: t1 .ibd and .cfg files
ALTER TABLE t1 IMPORT TABLESPACE; ALTER TABLE t1 IMPORT TABLESPACE;
ERROR HY000: Schema mismatch (Column c2 precise type mismatch.) ERROR HY000: Schema mismatch (Column c2 precise type mismatch, it's 0X408 in the table and 0X403 in the tablespace meta file)
unlink: t1.ibd unlink: t1.ibd
unlink: t1.cfg unlink: t1.cfg
DROP TABLE t1; DROP TABLE t1;
......
CREATE TABLE bug11754376 (c INT) ENGINE=INNODB; CREATE TABLE bug11754376 (c INT) ENGINE=INNODB;
SET @saved_dbug = @@SESSION.debug_dbug;
SET SESSION DEBUG_DBUG='+d,test_normalize_table_name_low'; SET SESSION DEBUG_DBUG='+d,test_normalize_table_name_low';
DROP TABLE bug11754376; DROP TABLE bug11754376;
SET debug_dbug= @saved_dbug;
SET GLOBAL innodb_file_per_table=0; SET GLOBAL innodb_file_per_table=0;
create table bug56947(a int not null) engine = innodb; create table bug56947(a int not null) engine = innodb;
SET @saved_dbug = @@SESSION.debug_dbug;
SET DEBUG_DBUG='+d,ib_rebuild_cannot_rename'; SET DEBUG_DBUG='+d,ib_rebuild_cannot_rename';
alter table bug56947 add unique index (a); alter table bug56947 add unique index (a);
ERROR HY000: Got error 11 "xxx" from storage engine InnoDB ERROR HY000: Got error 11 "xxx" from storage engine InnoDB
...@@ -8,3 +9,4 @@ Table Op Msg_type Msg_text ...@@ -8,3 +9,4 @@ Table Op Msg_type Msg_text
test.bug56947 check status OK test.bug56947 check status OK
drop table bug56947; drop table bug56947;
SET @@global.innodb_file_per_table=DEFAULT; SET @@global.innodb_file_per_table=DEFAULT;
SET debug_dbug= @saved_dbug;
...@@ -24,7 +24,7 @@ test.corrupt_bit_test_ā check Warning InnoDB: Index idx is marked as corrupted ...@@ -24,7 +24,7 @@ test.corrupt_bit_test_ā check Warning InnoDB: Index idx is marked as corrupted
test.corrupt_bit_test_ā check Warning InnoDB: Index idxā is marked as corrupted test.corrupt_bit_test_ā check Warning InnoDB: Index idxā is marked as corrupted
test.corrupt_bit_test_ā check Warning InnoDB: Index idxē is marked as corrupted test.corrupt_bit_test_ā check Warning InnoDB: Index idxē is marked as corrupted
test.corrupt_bit_test_ā check error Corrupt test.corrupt_bit_test_ā check error Corrupt
SET debug_dbug = @save_dbug; SET @@SESSION.debug_dbug = @save_dbug;
CREATE INDEX idx3 ON corrupt_bit_test_ā(b, c); CREATE INDEX idx3 ON corrupt_bit_test_ā(b, c);
ERROR HY000: Index idx is corrupted ERROR HY000: Index idx is corrupted
CREATE INDEX idx4 ON corrupt_bit_test_ā(b, z); CREATE INDEX idx4 ON corrupt_bit_test_ā(b, z);
......
...@@ -4,6 +4,7 @@ drop table if exists t1; ...@@ -4,6 +4,7 @@ drop table if exists t1;
connection con1; connection con1;
create table t1 (id integer, x integer) engine = InnoDB; create table t1 (id integer, x integer) engine = InnoDB;
insert into t1 values(0, 0); insert into t1 values(0, 0);
SET @saved_dbug = @@SESSION.debug_dbug;
set DEBUG_DBUG='+d,fatal-semaphore-timeout'; set DEBUG_DBUG='+d,fatal-semaphore-timeout';
set autocommit=0; set autocommit=0;
# Sending query on con1, # Sending query on con1,
...@@ -21,6 +22,6 @@ connection default; ...@@ -21,6 +22,6 @@ connection default;
# Waitting for reconnect after mysqld restarts # Waitting for reconnect after mysqld restarts
# Reconnected after mysqld was successfully restarted # Reconnected after mysqld was successfully restarted
# Cleaning up before exit # Cleaning up before exit
set DEBUG_DBUG=NULL; SET debug_dbug = @saved_dbug;
drop table if exists t1; drop table if exists t1;
# Clean exit # Clean exit
...@@ -4,8 +4,8 @@ SET GLOBAL innodb_master_thread_disabled_debug = 1; ...@@ -4,8 +4,8 @@ SET GLOBAL innodb_master_thread_disabled_debug = 1;
SET GLOBAL innodb_log_checkpoint_now = 1; SET GLOBAL innodb_log_checkpoint_now = 1;
CREATE DATABASE very_long_database_name; CREATE DATABASE very_long_database_name;
USE very_long_database_name; USE very_long_database_name;
set debug_dbug = '+d,increase_mtr_checkpoint_size'; SET debug_dbug = '+d,increase_mtr_checkpoint_size';
set debug_dbug = '+d,crash_after_checkpoint'; SET debug_dbug = '+d,crash_after_checkpoint';
set global innodb_log_checkpoint_now = 1; set global innodb_log_checkpoint_now = 1;
ERROR HY000: Lost connection to MySQL server during query ERROR HY000: Lost connection to MySQL server during query
# Skip MLOG_FILE_NAME redo records during recovery # Skip MLOG_FILE_NAME redo records during recovery
...@@ -18,7 +18,7 @@ SET GLOBAL innodb_log_checkpoint_now = 1; ...@@ -18,7 +18,7 @@ SET GLOBAL innodb_log_checkpoint_now = 1;
# exceeds LOG_CHECKPOINT_FREE_PER_THREAD size during checkpoint. # exceeds LOG_CHECKPOINT_FREE_PER_THREAD size during checkpoint.
CREATE DATABASE very_long_database_name; CREATE DATABASE very_long_database_name;
USE very_long_database_name; USE very_long_database_name;
set debug_dbug = '+d,crash_after_checkpoint'; SET debug_dbug = '+d,crash_after_checkpoint';
set global innodb_log_checkpoint_now = 1; set global innodb_log_checkpoint_now = 1;
ERROR HY000: Lost connection to MySQL server during query ERROR HY000: Lost connection to MySQL server during query
# Skip MLOG_FILE_NAME redo records during recovery # Skip MLOG_FILE_NAME redo records during recovery
......
...@@ -11,7 +11,9 @@ ...@@ -11,7 +11,9 @@
create table t1 (f1 int primary key, f2 blob) engine = innodb; create table t1 (f1 int primary key, f2 blob) engine = innodb;
insert into t1 values (1, repeat('*', 50000)); insert into t1 values (1, repeat('*', 50000));
select f1, substring(f2, 1, 40) from t1; select f1, substring(f2, 1, 40) from t1;
set debug_dbug = 'd,row_ins_index_entry_timeout'; set @saved_debug = @@session.debug_dbug;
SET debug_dbug = 'd,row_ins_index_entry_timeout';
update t1 set f1 = 3; update t1 set f1 = 3;
select f1, substring(f2, 1, 40) from t1; select f1, substring(f2, 1, 40) from t1;
drop table t1; drop table t1;
SET debug_dbug= @saved_debug;
...@@ -9,8 +9,8 @@ create table t1 (f1 int primary key, f2 int, f3 int, unique key k1(f2), ...@@ -9,8 +9,8 @@ create table t1 (f1 int primary key, f2 int, f3 int, unique key k1(f2),
key k2(f3)) engine=innodb; key k2(f3)) engine=innodb;
insert into t1 values (14, 24, 34); insert into t1 values (14, 24, 34);
set @old_dbug= @@session.debug_dbug; set @old_dbug= @@session.debug_dbug;
set debug_dbug = '+d,row_ins_sec_index_entry_timeout'; SET debug_dbug = '+d,row_ins_sec_index_entry_timeout';
replace into t1 values (14, 25, 34); replace into t1 values (14, 25, 34);
select * from t1; select * from t1;
drop table t1; drop table t1;
set debug_dbug = @old_dbug; SET debug_dbug = @old_dbug;
...@@ -6,6 +6,7 @@ ...@@ -6,6 +6,7 @@
call mtr.add_suppression("InnoDB: Warning: Index.*"); call mtr.add_suppression("InnoDB: Warning: Index.*");
# This caused crash earlier # This caused crash earlier
SET @saved_dbug = @@SESSION.debug_dbug;
set DEBUG_DBUG='+d,ib_ha_innodb_stat_not_initialized'; set DEBUG_DBUG='+d,ib_ha_innodb_stat_not_initialized';
create table t1(a int not null primary key, b int, c int, key(b), key(c)) engine=innodb; create table t1(a int not null primary key, b int, c int, key(b), key(c)) engine=innodb;
...@@ -32,8 +33,8 @@ select count(1) from t1 where a between 5 and 100; ...@@ -32,8 +33,8 @@ select count(1) from t1 where a between 5 and 100;
select count(1) from t1 where b between 5 and 256; select count(1) from t1 where b between 5 and 256;
select count(1) from t1 where c between 7 and 787; select count(1) from t1 where c between 7 and 787;
set DEBUG_DBUG=NULL;
drop procedure innodb_insert_proc; drop procedure innodb_insert_proc;
drop table t1; drop table t1;
SET debug_dbug= @saved_dbug;
...@@ -8,7 +8,8 @@ ...@@ -8,7 +8,8 @@
CREATE TABLE bug11754376 (c INT) ENGINE=INNODB; CREATE TABLE bug11754376 (c INT) ENGINE=INNODB;
# This will invoke test_normalize_table_name_low() in debug builds # This will invoke test_normalize_table_name_low() in debug builds
SET @saved_dbug = @@SESSION.debug_dbug;
SET SESSION DEBUG_DBUG='+d,test_normalize_table_name_low'; SET SESSION DEBUG_DBUG='+d,test_normalize_table_name_low';
DROP TABLE bug11754376; DROP TABLE bug11754376;
SET debug_dbug= @saved_dbug;
...@@ -7,6 +7,7 @@ ...@@ -7,6 +7,7 @@
SET GLOBAL innodb_file_per_table=0; SET GLOBAL innodb_file_per_table=0;
create table bug56947(a int not null) engine = innodb; create table bug56947(a int not null) engine = innodb;
SET @saved_dbug = @@SESSION.debug_dbug;
SET DEBUG_DBUG='+d,ib_rebuild_cannot_rename'; SET DEBUG_DBUG='+d,ib_rebuild_cannot_rename';
--replace_regex /"[^"]*"/"xxx"/ --replace_regex /"[^"]*"/"xxx"/
--error ER_GET_ERRNO --error ER_GET_ERRNO
...@@ -15,3 +16,4 @@ check table bug56947; ...@@ -15,3 +16,4 @@ check table bug56947;
drop table bug56947; drop table bug56947;
SET @@global.innodb_file_per_table=DEFAULT; SET @@global.innodb_file_per_table=DEFAULT;
SET debug_dbug= @saved_dbug;
...@@ -36,7 +36,7 @@ select count(*) from corrupt_bit_test_ā; ...@@ -36,7 +36,7 @@ select count(*) from corrupt_bit_test_ā;
SET @save_dbug = @@SESSION.debug_dbug; SET @save_dbug = @@SESSION.debug_dbug;
SET debug_dbug = '+d,dict_set_index_corrupted'; SET debug_dbug = '+d,dict_set_index_corrupted';
check table corrupt_bit_test_ā; check table corrupt_bit_test_ā;
SET debug_dbug = @save_dbug; SET @@SESSION.debug_dbug = @save_dbug;
# Cannot create new indexes while corrupted indexes exist # Cannot create new indexes while corrupted indexes exist
--error ER_INDEX_CORRUPT --error ER_INDEX_CORRUPT
......
...@@ -17,6 +17,7 @@ eval create table t1 (id integer, x integer) engine = InnoDB; ...@@ -17,6 +17,7 @@ eval create table t1 (id integer, x integer) engine = InnoDB;
insert into t1 values(0, 0); insert into t1 values(0, 0);
# Enable the debug injection. # Enable the debug injection.
SET @saved_dbug = @@SESSION.debug_dbug;
set DEBUG_DBUG='+d,fatal-semaphore-timeout'; set DEBUG_DBUG='+d,fatal-semaphore-timeout';
set autocommit=0; set autocommit=0;
...@@ -107,7 +108,7 @@ source include/wait_until_connected_again.inc; ...@@ -107,7 +108,7 @@ source include/wait_until_connected_again.inc;
--echo # Cleaning up before exit --echo # Cleaning up before exit
--disable_warnings --disable_warnings
set DEBUG_DBUG=NULL; SET debug_dbug = @saved_dbug;
drop table if exists t1; drop table if exists t1;
--enable_warnings --enable_warnings
......
...@@ -33,8 +33,8 @@ while ($i) ...@@ -33,8 +33,8 @@ while ($i)
--let $_expect_file_name= $MYSQLTEST_VARDIR/tmp/mysqld.$_server_id.expect --let $_expect_file_name= $MYSQLTEST_VARDIR/tmp/mysqld.$_server_id.expect
--exec echo "wait" > $_expect_file_name --exec echo "wait" > $_expect_file_name
set debug_dbug = '+d,increase_mtr_checkpoint_size'; SET debug_dbug = '+d,increase_mtr_checkpoint_size';
set debug_dbug = '+d,crash_after_checkpoint'; SET debug_dbug = '+d,crash_after_checkpoint';
--error 2013 --error 2013
set global innodb_log_checkpoint_now = 1; set global innodb_log_checkpoint_now = 1;
...@@ -64,7 +64,7 @@ while ($i) ...@@ -64,7 +64,7 @@ while ($i)
--enable_query_log --enable_query_log
--exec echo "wait" > $_expect_file_name --exec echo "wait" > $_expect_file_name
set debug_dbug = '+d,crash_after_checkpoint'; SET debug_dbug = '+d,crash_after_checkpoint';
--error 2013 --error 2013
set global innodb_log_checkpoint_now = 1; set global innodb_log_checkpoint_now = 1;
......
...@@ -17,6 +17,7 @@ INSERT INTO t1 VALUES('test'); ...@@ -17,6 +17,7 @@ INSERT INTO t1 VALUES('test');
CREATE TABLE t2 (f1 char(100), FULLTEXT idx1(f1))ENGINE=InnoDB; CREATE TABLE t2 (f1 char(100), FULLTEXT idx1(f1))ENGINE=InnoDB;
INSERT INTO t2 VALUES('mariadb'); INSERT INTO t2 VALUES('mariadb');
connection default; connection default;
SET @saved_dbug = @@GLOBAL.debug_dbug;
SET GLOBAL debug_dbug ='+d,fts_instrument_sync_request,ib_optimize_wq_hang'; SET GLOBAL debug_dbug ='+d,fts_instrument_sync_request,ib_optimize_wq_hang';
SET DEBUG_SYNC= 'fts_instrument_sync_request SET DEBUG_SYNC= 'fts_instrument_sync_request
SIGNAL drop_index_start WAIT_FOR sync_op'; SIGNAL drop_index_start WAIT_FOR sync_op';
...@@ -28,7 +29,7 @@ ALTER TABLE t2 drop index idx1; ...@@ -28,7 +29,7 @@ ALTER TABLE t2 drop index idx1;
connection default; connection default;
set DEBUG_SYNC= 'now SIGNAL fts_drop_index'; set DEBUG_SYNC= 'now SIGNAL fts_drop_index';
connection con1; connection con1;
SET global DEBUG_DBUG=RESET; SET @@GLOBAL.debug_dbug = @saved_dbug;
drop table t1, t2; drop table t1, t2;
connection default; connection default;
set DEBUG_SYNC=RESET; set DEBUG_SYNC=RESET;
...@@ -29,6 +29,7 @@ CREATE TABLE t2 (f1 char(100), FULLTEXT idx1(f1))ENGINE=InnoDB; ...@@ -29,6 +29,7 @@ CREATE TABLE t2 (f1 char(100), FULLTEXT idx1(f1))ENGINE=InnoDB;
INSERT INTO t2 VALUES('mariadb'); INSERT INTO t2 VALUES('mariadb');
connection default; connection default;
SET @saved_dbug = @@GLOBAL.debug_dbug;
SET GLOBAL debug_dbug ='+d,fts_instrument_sync_request,ib_optimize_wq_hang'; SET GLOBAL debug_dbug ='+d,fts_instrument_sync_request,ib_optimize_wq_hang';
SET DEBUG_SYNC= 'fts_instrument_sync_request SET DEBUG_SYNC= 'fts_instrument_sync_request
SIGNAL drop_index_start WAIT_FOR sync_op'; SIGNAL drop_index_start WAIT_FOR sync_op';
...@@ -45,7 +46,7 @@ set DEBUG_SYNC= 'now SIGNAL fts_drop_index'; ...@@ -45,7 +46,7 @@ set DEBUG_SYNC= 'now SIGNAL fts_drop_index';
connection con1; connection con1;
reap; reap;
SET global DEBUG_DBUG=RESET; SET @@GLOBAL.debug_dbug = @saved_dbug;
drop table t1, t2; drop table t1, t2;
connection default; connection default;
set DEBUG_SYNC=RESET; set DEBUG_SYNC=RESET;
...@@ -42,7 +42,7 @@ SET @save_dbug = @@SESSION.debug_dbug; ...@@ -42,7 +42,7 @@ SET @save_dbug = @@SESSION.debug_dbug;
SET debug_dbug='+d,row_merge_ins_spatial_fail'; SET debug_dbug='+d,row_merge_ins_spatial_fail';
create spatial index idx2 on t1(c2); create spatial index idx2 on t1(c2);
ERROR HY000: Got error 1000 "Unknown error 1000" from storage engine InnoDB ERROR HY000: Got error 1000 "Unknown error 1000" from storage engine InnoDB
SET debug_dbug = @save_dbug; SET @@SESSION.debug_dbug = @save_dbug;
show create table t1; show create table t1;
Table Create Table Table Create Table
t1 CREATE TABLE `t1` ( t1 CREATE TABLE `t1` (
......
...@@ -53,7 +53,7 @@ SET @save_dbug = @@SESSION.debug_dbug; ...@@ -53,7 +53,7 @@ SET @save_dbug = @@SESSION.debug_dbug;
SET debug_dbug='+d,row_merge_ins_spatial_fail'; SET debug_dbug='+d,row_merge_ins_spatial_fail';
--error ER_GET_ERRNO --error ER_GET_ERRNO
create spatial index idx2 on t1(c2); create spatial index idx2 on t1(c2);
SET debug_dbug = @save_dbug; SET @@SESSION.debug_dbug = @save_dbug;
show create table t1; show create table t1;
# Check table. # Check table.
......
...@@ -410,7 +410,7 @@ SELECT * FROM t1; ...@@ -410,7 +410,7 @@ SELECT * FROM t1;
ERROR HY000: Tablespace has been discarded for table `t1` ERROR HY000: Tablespace has been discarded for table `t1`
restore: t1 .ibd and .cfg files restore: t1 .ibd and .cfg files
ALTER TABLE t1 IMPORT TABLESPACE; ALTER TABLE t1 IMPORT TABLESPACE;
ERROR HY000: Schema mismatch (Column c2 precise type mismatch.) ERROR HY000: Schema mismatch (Column c2 precise type mismatch, it's 0X408 in the table and 0X403 in the tablespace meta file)
unlink: t1.ibd unlink: t1.ibd
unlink: t1.cfg unlink: t1.cfg
DROP TABLE t1; DROP TABLE t1;
......
SET @saved_dbug = @@SESSION.debug_dbug;
set session debug_dbug="+d,optimizer_innodb_icp"; set session debug_dbug="+d,optimizer_innodb_icp";
create table `t1` (`c1` char(1) default null,`c2` char(10) default null, create table `t1` (`c1` char(1) default null,`c2` char(10) default null,
key (`c1`)) key (`c1`))
...@@ -7,3 +8,4 @@ select * from `t1` where `c1`='3' for update; ...@@ -7,3 +8,4 @@ select * from `t1` where `c1`='3' for update;
c1 c2 c1 c2
3 NULL 3 NULL
drop table `t1`; drop table `t1`;
SET debug_dbug= @saved_dbug;
# #
# Bug#40992 - InnoDB: Crash when engine_condition_pushdown is on # Bug#40992 - InnoDB: Crash when engine_condition_pushdown is on
# #
SET @saved_dbug = @@SESSION.debug_dbug;
set session debug_dbug="+d,optimizer_innodb_icp"; set session debug_dbug="+d,optimizer_innodb_icp";
CREATE TABLE t ( CREATE TABLE t (
dummy INT PRIMARY KEY, dummy INT PRIMARY KEY,
...@@ -13,3 +14,4 @@ dummy a b ...@@ -13,3 +14,4 @@ dummy a b
3 3 3 3 3 3
5 5 5 5 5 5
DROP TABLE t; DROP TABLE t;
SET debug_dbug= @saved_dbug;
SET @saved_dbug = @@SESSION.debug_dbug;
set session debug_dbug="+d,optimizer_innodb_icp"; set session debug_dbug="+d,optimizer_innodb_icp";
drop table if exists `t1`; drop table if exists `t1`;
Warnings: Warnings:
...@@ -6,3 +7,4 @@ create table `t1` (`c` bigint, key(`c`),`a` int)engine=innodb; ...@@ -6,3 +7,4 @@ create table `t1` (`c` bigint, key(`c`),`a` int)engine=innodb;
insert into `t1` values(2,2); insert into `t1` values(2,2);
delete `t1` from `t1` `a`, `t1` where `a`.`a`=`t1`.`c` ; delete `t1` from `t1` `a`, `t1` where `a`.`a`=`t1`.`c` ;
drop table `t1`; drop table `t1`;
SET debug_dbug= @saved_dbug;
SET @saved_dbug = @@SESSION.debug_dbug;
set session debug_dbug="+d,optimizer_innodb_icp"; set session debug_dbug="+d,optimizer_innodb_icp";
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
...@@ -252,3 +253,4 @@ Warning 1292 Truncated incorrect DOUBLE value: 'd' ...@@ -252,3 +253,4 @@ Warning 1292 Truncated incorrect DOUBLE value: 'd'
Warning 1292 Truncated incorrect DOUBLE value: 'd' Warning 1292 Truncated incorrect DOUBLE value: 'd'
Warning 1292 Truncated incorrect DOUBLE value: 'd' Warning 1292 Truncated incorrect DOUBLE value: 'd'
drop table `table5`; drop table `table5`;
SET debug_dbug= @saved_dbug;
SET @saved_dbug = @@SESSION.debug_dbug;
set session debug_dbug="+d,optimizer_innodb_icp"; set session debug_dbug="+d,optimizer_innodb_icp";
CREATE TABLE t1(c1 TIME NOT NULL, c2 TIME NULL, c3 DATE, PRIMARY CREATE TABLE t1(c1 TIME NOT NULL, c2 TIME NULL, c3 DATE, PRIMARY
KEY(c1), UNIQUE INDEX(c2)) engine=innodb; KEY(c1), UNIQUE INDEX(c2)) engine=innodb;
...@@ -9,3 +10,4 @@ SELECT * FROM t1 WHERE c2 <=> NULL ORDER BY c2 LIMIT 2; ...@@ -9,3 +10,4 @@ SELECT * FROM t1 WHERE c2 <=> NULL ORDER BY c2 LIMIT 2;
c1 c2 c3 c1 c2 c3
08:29:45 NULL 2009-02-01 08:29:45 NULL 2009-02-01
drop table `t1`; drop table `t1`;
SET debug_dbug= @saved_dbug;
# #
# Bug#43360 - Server crash with a simple multi-table update # Bug#43360 - Server crash with a simple multi-table update
# #
SET @saved_dbug = @@SESSION.debug_dbug;
set session debug_dbug="+d,optimizer_innodb_icp"; set session debug_dbug="+d,optimizer_innodb_icp";
CREATE TABLE t1 ( CREATE TABLE t1 (
a CHAR(2) NOT NULL PRIMARY KEY, a CHAR(2) NOT NULL PRIMARY KEY,
...@@ -42,3 +43,4 @@ AB Sweden ...@@ -42,3 +43,4 @@ AB Sweden
MS United States of Ame MS United States of Ame
JA USA JA USA
DROP TABLE t1,t2; DROP TABLE t1,t2;
SET debug_dbug= @saved_dbug;
# #
# Bug#43448 - Server crashes on multi table delete with Innodb # Bug#43448 - Server crashes on multi table delete with Innodb
# #
SET @saved_dbug = @@SESSION.debug_dbug;
set session debug_dbug="+d,optimizer_innodb_icp"; set session debug_dbug="+d,optimizer_innodb_icp";
CREATE TABLE t1 ( CREATE TABLE t1 (
id1 INT NOT NULL AUTO_INCREMENT PRIMARY KEY, id1 INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
...@@ -28,3 +29,4 @@ DELETE t1, t2, t3 ...@@ -28,3 +29,4 @@ DELETE t1, t2, t3
FROM t1, t2, t3 FROM t1, t2, t3
WHERE t1.id1 = t2.id2 AND t2.id2 = t3.id3 AND t1.id1 > 5; WHERE t1.id1 = t2.id2 AND t2.id2 = t3.id3 AND t1.id1 > 5;
DROP TABLE t1, t2, t3; DROP TABLE t1, t2, t3;
SET debug_dbug= @saved_dbug;
set storage_engine=innodb; set storage_engine=innodb;
set @save_time_zone= @@time_zone; set @save_time_zone= @@time_zone;
set time_zone='+03:00'; set time_zone='+03:00';
SET @saved_dbug = @@SESSION.debug_dbug;
set session debug_dbug="+d,optimizer_innodb_icp"; set session debug_dbug="+d,optimizer_innodb_icp";
CREATE TABLE t1(c1 TIMESTAMP NOT NULL, c2 TIMESTAMP NULL, c3 DATE, c4 DATETIME, PRIMARY KEY(c1), UNIQUE INDEX(c2)); CREATE TABLE t1(c1 TIMESTAMP NOT NULL, c2 TIMESTAMP NULL, c3 DATE, c4 DATETIME, PRIMARY KEY(c1), UNIQUE INDEX(c2));
INSERT INTO t1 VALUES('98-12-31 11:30:45','98.12.31 11+30+45','98-12-31 11:30:45','98.12.31 11+30+45'),('98/12/30 11*30*45','98@12@30 11^30^45','98/12/30 11*30*45','98@12@30 11^30^45'),('98-12-29','98.12.29','98-12-29','98.12.29'),('98/12/28','98@12@28','98/12/28','98@12@28'); INSERT INTO t1 VALUES('98-12-31 11:30:45','98.12.31 11+30+45','98-12-31 11:30:45','98.12.31 11+30+45'),('98/12/30 11*30*45','98@12@30 11^30^45','98/12/30 11*30*45','98@12@30 11^30^45'),('98-12-29','98.12.29','98-12-29','98.12.29'),('98/12/28','98@12@28','98/12/28','98@12@28');
...@@ -100,3 +101,4 @@ c1 c2 c3 c4 ...@@ -100,3 +101,4 @@ c1 c2 c3 c4
2038-01-09 03:14:07 2038-01-09 03:14:07 2009-01-05 2009-01-06 00:00:00 2038-01-09 03:14:07 2038-01-09 03:14:07 2009-01-05 2009-01-06 00:00:00
DROP TABLE t1; DROP TABLE t1;
set time_zone= @save_time_zone; set time_zone= @save_time_zone;
SET debug_dbug= @saved_dbug;
...@@ -4,6 +4,7 @@ ...@@ -4,6 +4,7 @@
--source include/have_innodb.inc --source include/have_innodb.inc
# crash requires this # crash requires this
SET @saved_dbug = @@SESSION.debug_dbug;
set session debug_dbug="+d,optimizer_innodb_icp"; set session debug_dbug="+d,optimizer_innodb_icp";
create table `t1` (`c1` char(1) default null,`c2` char(10) default null, create table `t1` (`c1` char(1) default null,`c2` char(10) default null,
...@@ -12,3 +13,4 @@ engine=innodb default charset=latin1; ...@@ -12,3 +13,4 @@ engine=innodb default charset=latin1;
insert into `t1` values ('3',null); insert into `t1` values ('3',null);
select * from `t1` where `c1`='3' for update; select * from `t1` where `c1`='3' for update;
drop table `t1`; drop table `t1`;
SET debug_dbug= @saved_dbug;
...@@ -5,6 +5,7 @@ ...@@ -5,6 +5,7 @@
--source include/have_debug.inc --source include/have_debug.inc
--source include/have_innodb.inc --source include/have_innodb.inc
SET @saved_dbug = @@SESSION.debug_dbug;
# Crash requires that we enable Index Condition Pushdown in InnoDB # Crash requires that we enable Index Condition Pushdown in InnoDB
set session debug_dbug="+d,optimizer_innodb_icp"; set session debug_dbug="+d,optimizer_innodb_icp";
...@@ -19,3 +20,4 @@ INSERT INTO t VALUES (1,1,1),(3,3,3),(5,5,5); ...@@ -19,3 +20,4 @@ INSERT INTO t VALUES (1,1,1),(3,3,3),(5,5,5);
SELECT * FROM t WHERE a > 2 FOR UPDATE; SELECT * FROM t WHERE a > 2 FOR UPDATE;
DROP TABLE t; DROP TABLE t;
SET debug_dbug= @saved_dbug;
...@@ -5,6 +5,7 @@ ...@@ -5,6 +5,7 @@
--source include/have_innodb.inc --source include/have_innodb.inc
# crash requires this # crash requires this
SET @saved_dbug = @@SESSION.debug_dbug;
set session debug_dbug="+d,optimizer_innodb_icp"; set session debug_dbug="+d,optimizer_innodb_icp";
drop table if exists `t1`; drop table if exists `t1`;
...@@ -12,3 +13,4 @@ create table `t1` (`c` bigint, key(`c`),`a` int)engine=innodb; ...@@ -12,3 +13,4 @@ create table `t1` (`c` bigint, key(`c`),`a` int)engine=innodb;
insert into `t1` values(2,2); insert into `t1` values(2,2);
delete `t1` from `t1` `a`, `t1` where `a`.`a`=`t1`.`c` ; delete `t1` from `t1` `a`, `t1` where `a`.`a`=`t1`.`c` ;
drop table `t1`; drop table `t1`;
SET debug_dbug= @saved_dbug;
...@@ -6,6 +6,7 @@ ...@@ -6,6 +6,7 @@
--source include/have_innodb.inc --source include/have_innodb.inc
SET @saved_dbug = @@SESSION.debug_dbug;
# Valgrind errors happen only with this: # Valgrind errors happen only with this:
set session debug_dbug="+d,optimizer_innodb_icp"; set session debug_dbug="+d,optimizer_innodb_icp";
...@@ -246,3 +247,4 @@ UNLOCK TABLES; ...@@ -246,3 +247,4 @@ UNLOCK TABLES;
select * from `table5` where (col2 <= '6566-06-15' AND col24 <> 'd') group by `col83` order by `col83` desc ; select * from `table5` where (col2 <= '6566-06-15' AND col24 <> 'd') group by `col83` order by `col83` desc ;
drop table `table5`; drop table `table5`;
SET debug_dbug= @saved_dbug;
...@@ -4,6 +4,7 @@ ...@@ -4,6 +4,7 @@
--source include/have_debug.inc --source include/have_debug.inc
--source include/have_innodb.inc --source include/have_innodb.inc
SET @saved_dbug = @@SESSION.debug_dbug;
set session debug_dbug="+d,optimizer_innodb_icp"; set session debug_dbug="+d,optimizer_innodb_icp";
CREATE TABLE t1(c1 TIME NOT NULL, c2 TIME NULL, c3 DATE, PRIMARY CREATE TABLE t1(c1 TIME NOT NULL, c2 TIME NULL, c3 DATE, PRIMARY
...@@ -15,3 +16,4 @@ SELECT * FROM t1 WHERE c2 <=> NULL ORDER BY c2 LIMIT 2; ...@@ -15,3 +16,4 @@ SELECT * FROM t1 WHERE c2 <=> NULL ORDER BY c2 LIMIT 2;
SELECT * FROM t1 WHERE c2 <=> NULL ORDER BY c2 LIMIT 2; SELECT * FROM t1 WHERE c2 <=> NULL ORDER BY c2 LIMIT 2;
drop table `t1`; drop table `t1`;
SET debug_dbug= @saved_dbug;
...@@ -6,6 +6,7 @@ ...@@ -6,6 +6,7 @@
--source include/have_debug.inc --source include/have_debug.inc
--source include/have_innodb.inc --source include/have_innodb.inc
SET @saved_dbug = @@SESSION.debug_dbug;
# crash requires this # crash requires this
set session debug_dbug="+d,optimizer_innodb_icp"; set session debug_dbug="+d,optimizer_innodb_icp";
...@@ -42,3 +43,4 @@ SELECT * FROM t1; ...@@ -42,3 +43,4 @@ SELECT * FROM t1;
SELECT * FROM t2; SELECT * FROM t2;
DROP TABLE t1,t2; DROP TABLE t1,t2;
SET debug_dbug= @saved_dbug;
...@@ -5,6 +5,7 @@ ...@@ -5,6 +5,7 @@
--source include/have_debug.inc --source include/have_debug.inc
--source include/have_innodb.inc --source include/have_innodb.inc
SET @saved_dbug = @@SESSION.debug_dbug;
# crash requires ICP support in InnoDB # crash requires ICP support in InnoDB
set session debug_dbug="+d,optimizer_innodb_icp"; set session debug_dbug="+d,optimizer_innodb_icp";
...@@ -58,3 +59,4 @@ FROM t1, t2, t3 ...@@ -58,3 +59,4 @@ FROM t1, t2, t3
WHERE t1.id1 = t2.id2 AND t2.id2 = t3.id3 AND t1.id1 > 5; WHERE t1.id1 = t2.id2 AND t2.id2 = t3.id3 AND t1.id1 > 5;
DROP TABLE t1, t2, t3; DROP TABLE t1, t2, t3;
SET debug_dbug= @saved_dbug;
...@@ -6,6 +6,7 @@ ...@@ -6,6 +6,7 @@
set storage_engine=innodb; set storage_engine=innodb;
set @save_time_zone= @@time_zone; set @save_time_zone= @@time_zone;
set time_zone='+03:00'; set time_zone='+03:00';
SET @saved_dbug = @@SESSION.debug_dbug;
set session debug_dbug="+d,optimizer_innodb_icp"; set session debug_dbug="+d,optimizer_innodb_icp";
######## Running INSERT tests for TIMESTAMP ######## ######## Running INSERT tests for TIMESTAMP ########
...@@ -83,4 +84,4 @@ SELECT * FROM t1 WHERE c2 IN ('1971-01-01 00:00:01','2038-01-09 03:14:07') ORDER ...@@ -83,4 +84,4 @@ SELECT * FROM t1 WHERE c2 IN ('1971-01-01 00:00:01','2038-01-09 03:14:07') ORDER
DROP TABLE t1; DROP TABLE t1;
set time_zone= @save_time_zone; set time_zone= @save_time_zone;
SET debug_dbug= @saved_dbug;
...@@ -6,11 +6,11 @@ CREATE TABLE t1 (a INT, b VARCHAR(64), KEY(b,a)) ...@@ -6,11 +6,11 @@ CREATE TABLE t1 (a INT, b VARCHAR(64), KEY(b,a))
PARTITION BY HASH (a) PARTITIONS 3; PARTITION BY HASH (a) PARTITIONS 3;
INSERT INTO t1 VALUES (1, "1"), (2, "2"), (3, "3"), (4, "Four"), (5, "Five"), INSERT INTO t1 VALUES (1, "1"), (2, "2"), (3, "3"), (4, "Four"), (5, "Five"),
(6, "Six"), (7, "Seven"), (8, "Eight"), (9, "Nine"); (6, "Six"), (7, "Seven"), (8, "Eight"), (9, "Nine");
SET @save_dbug=@@debug_dbug; SET @saved_dbug=@@debug_dbug;
SET SESSION debug_dbug="+d,ha_partition_fail_index_init"; SET SESSION debug_dbug="+d,ha_partition_fail_index_init";
SELECT * FROM t1 WHERE b = "Seven"; SELECT * FROM t1 WHERE b = "Seven";
ERROR HY000: Table has no partition for value 0 ERROR HY000: Table has no partition for value 0
SET SESSION debug_dbug=@save_dbug; SET SESSION debug_dbug=@saved_dbug;
SELECT * FROM t1 WHERE b = "Seven"; SELECT * FROM t1 WHERE b = "Seven";
a b a b
7 Seven 7 Seven
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment