summaryrefslogtreecommitdiff
path: root/mysql-test
diff options
context:
space:
mode:
authorLuis Soares <luis.soares@sun.com>2010-02-11 13:50:18 +0000
committerLuis Soares <luis.soares@sun.com>2010-02-11 13:50:18 +0000
commitc4f1de9f11b8a49f596cbba460e452b1057f9f27 (patch)
treeb264e2b5d923a09aa178285bb9be21688d3a40c4 /mysql-test
parentd142fca3bddace488b99b91e35991a8dbde57b98 (diff)
parent7ae4c06da7e037daf4114d70ca217611e6b1db51 (diff)
downloadmariadb-git-c4f1de9f11b8a49f596cbba460e452b1057f9f27.tar.gz
Automerge from mysql-next-mr-bugfixing.
Diffstat (limited to 'mysql-test')
-rw-r--r--mysql-test/collections/default.experimental4
-rw-r--r--mysql-test/include/have_ipv4_mapped.inc14
-rw-r--r--mysql-test/include/ipv6.inc3
-rw-r--r--mysql-test/r/constraints.result18
-rw-r--r--mysql-test/r/foreign_key.result42
-rw-r--r--mysql-test/r/ipv4_as_ipv6_win.result32
-rw-r--r--mysql-test/r/ipv6.result176
-rw-r--r--mysql-test/r/ipv6_win.result88
-rw-r--r--mysql-test/r/show_profile.result10
-rw-r--r--mysql-test/suite/binlog/r/binlog_row_mix_innodb_myisam.result44
-rw-r--r--mysql-test/suite/binlog/r/binlog_stm_mix_innodb_myisam.result16
-rw-r--r--mysql-test/suite/binlog/r/binlog_stm_unsafe_warning.result27
-rw-r--r--mysql-test/suite/binlog/t/binlog_stm_unsafe_warning.test32
-rw-r--r--mysql-test/suite/parts/r/partition_innodb_status_file.result14
-rw-r--r--mysql-test/suite/parts/t/partition_innodb_status_file-master.opt1
-rw-r--r--mysql-test/suite/parts/t/partition_innodb_status_file.test20
-rw-r--r--mysql-test/suite/perfschema/r/aggregate.result13
-rw-r--r--mysql-test/suite/perfschema/r/dml_mutex_instances.result2
-rw-r--r--mysql-test/suite/perfschema/r/dml_rwlock_instances.result2
-rw-r--r--mysql-test/suite/perfschema/r/dml_setup_instruments.result3
-rw-r--r--mysql-test/suite/perfschema/t/aggregate.test16
-rw-r--r--mysql-test/suite/perfschema/t/dml_mutex_instances.test2
-rw-r--r--mysql-test/suite/perfschema/t/dml_rwlock_instances.test2
-rw-r--r--mysql-test/suite/perfschema/t/dml_setup_instruments.test3
-rw-r--r--mysql-test/suite/rpl/r/rpl_do_grant.result10
-rw-r--r--mysql-test/suite/rpl/r/rpl_ip_mix.result102
-rw-r--r--mysql-test/suite/rpl/r/rpl_ip_mix2.result118
-rw-r--r--mysql-test/suite/rpl/r/rpl_ip_mix2_win.result84
-rw-r--r--mysql-test/suite/rpl/r/rpl_ip_mix_win.result84
-rw-r--r--mysql-test/suite/rpl/r/rpl_ipv4_as_ipv6.result10
-rw-r--r--mysql-test/suite/rpl/r/rpl_ipv4_as_ipv6_win.result35
-rw-r--r--mysql-test/suite/rpl/r/rpl_ipv6.result96
-rw-r--r--mysql-test/suite/rpl/r/rpl_ipv6_win.result80
-rw-r--r--mysql-test/suite/rpl/r/rpl_semi_sync.result31
-rw-r--r--mysql-test/suite/rpl/t/rpl_do_grant.test18
-rw-r--r--mysql-test/suite/rpl/t/rpl_heartbeat_basic.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_ip_mix.test36
-rw-r--r--mysql-test/suite/rpl/t/rpl_ip_mix2.test40
-rw-r--r--mysql-test/suite/rpl/t/rpl_ip_mix2_win.cnf56
-rw-r--r--mysql-test/suite/rpl/t/rpl_ip_mix2_win.test78
-rw-r--r--mysql-test/suite/rpl/t/rpl_ip_mix_win.cnf56
-rw-r--r--mysql-test/suite/rpl/t/rpl_ip_mix_win.test65
-rw-r--r--mysql-test/suite/rpl/t/rpl_ipv4_as_ipv6.test23
-rw-r--r--mysql-test/suite/rpl/t/rpl_ipv4_as_ipv6_win.cnf56
-rw-r--r--mysql-test/suite/rpl/t/rpl_ipv4_as_ipv6_win.test63
-rw-r--r--mysql-test/suite/rpl/t/rpl_ipv6.test34
-rw-r--r--mysql-test/suite/rpl/t/rpl_ipv6_win.cnf56
-rw-r--r--mysql-test/suite/rpl/t/rpl_ipv6_win.test65
-rw-r--r--mysql-test/suite/rpl/t/rpl_semi_sync.test33
-rw-r--r--mysql-test/suite/rpl/t/rpl_tmp_table_and_DDL.test1
-rw-r--r--mysql-test/suite/sys_vars/r/delayed_insert_limit_func.result8
-rw-r--r--mysql-test/suite/sys_vars/t/delayed_insert_limit_func.test4
-rw-r--r--mysql-test/t/constraints.test44
-rw-r--r--mysql-test/t/foreign_key.test72
-rw-r--r--mysql-test/t/ipv4_as_ipv6.test3
-rw-r--r--mysql-test/t/ipv4_as_ipv6_win-master.opt1
-rw-r--r--mysql-test/t/ipv4_as_ipv6_win.test31
-rw-r--r--mysql-test/t/ipv6.test43
-rw-r--r--mysql-test/t/ipv6_win-master.opt1
-rw-r--r--mysql-test/t/ipv6_win.test39
-rw-r--r--mysql-test/t/show_profile.test18
61 files changed, 492 insertions, 1688 deletions
diff --git a/mysql-test/collections/default.experimental b/mysql-test/collections/default.experimental
index 67c245e33f6..8ff56658853 100644
--- a/mysql-test/collections/default.experimental
+++ b/mysql-test/collections/default.experimental
@@ -16,9 +16,6 @@ main.plugin # Bug#47146 Linking problem with exampl
main.signal_demo3 @solaris # Bug#47791 2010-01-20 alik Several test cases fail on Solaris with error Thread stack overrun
main.sp @solaris # Bug#47791 2010-01-20 alik Several test cases fail on Solaris with error Thread stack overrun
-perfschema.tampered_perfschema_table1 @windows # Bug#50478 2010-01-20 alik perfschema.tampered_perfschema_table1 fails sporadically on Windows and Solaris
-perfschema.tampered_perfschema_table1 @solaris # Bug#50478 2010-01-20 alik perfschema.tampered_perfschema_table1 fails sporadically on Windows and Solaris
-
rpl.rpl_heartbeat_basic # BUG#43828 2009-10-22 luis fails sporadically
rpl.rpl_heartbeat_2slaves # BUG#43828 2009-10-22 luis fails sporadically
rpl.rpl_innodb_bug28430* # Bug#46029
@@ -29,7 +26,6 @@ rpl.rpl_row_sp011* @solaris # Bug#47791 2010-01-20 alik Several tes
rpl.rpl_timezone* # Bug#47017 2009-10-27 alik rpl_timezone fails on PB-2 with mismatch error
sys_vars.max_sp_recursion_depth_func @solaris # Bug#47791 2010-01-20 alik Several test cases fail on Solaris with error Thread stack overrun
-sys_vars.delayed_insert_limit_func # Bug#50435 2010-01-25 alik sys_vars.delayed_insert_limit_func fails on Ubuntu x86_64 in debug mode
# Declare all NDB-tests in ndb and rpl_ndb test suites experimental.
# Usually the test cases from ndb and rpl_ndb test suites are not run in PB,
diff --git a/mysql-test/include/have_ipv4_mapped.inc b/mysql-test/include/have_ipv4_mapped.inc
new file mode 100644
index 00000000000..d85580405cd
--- /dev/null
+++ b/mysql-test/include/have_ipv4_mapped.inc
@@ -0,0 +1,14 @@
+# Check if ipv4 mapped to ipv6 is available.
+--disable_query_log
+--disable_abort_on_error
+connect (checkcon123456789,::FFFF:127.0.0.1,root,,test);
+if($mysql_errno)
+{
+skip wrong IP;
+}
+connection default;
+disconnect checkcon123456789;
+--enable_abort_on_error
+--enable_query_log
+# end check
+
diff --git a/mysql-test/include/ipv6.inc b/mysql-test/include/ipv6.inc
index 378733dd03a..3d8fdcfbc3c 100644
--- a/mysql-test/include/ipv6.inc
+++ b/mysql-test/include/ipv6.inc
@@ -6,7 +6,9 @@ eval SET @nip= inet_aton('$IPv6');
SELECT @nip;
SELECT inet_ntoa(@nip);
# delivers a wrong value, see bug#34037
+--replace_result ::1 localhost
SELECT USER();
+--replace_result ::1 localhost
SELECT current_user();
--disable_result_log
SHOW PROCESSLIST;
@@ -17,6 +19,7 @@ disconnect con1;
eval REVOKE ALL ON test.* FROM testuser@'$IPv6';
eval RENAME USER testuser@'$IPv6' to testuser1@'$IPv6';
eval SET PASSWORD FOR testuser1@'$IPv6' = PASSWORD ('9876');
+--replace_result ::1 localhost
SELECT USER();
eval DROP USER testuser1@'$IPv6';
diff --git a/mysql-test/r/constraints.result b/mysql-test/r/constraints.result
index 116efe429d5..46a718e4c42 100644
--- a/mysql-test/r/constraints.result
+++ b/mysql-test/r/constraints.result
@@ -3,7 +3,7 @@ create table t1 (a int check (a>0));
insert into t1 values (1);
insert into t1 values (0);
drop table t1;
-create table t1 (a int ,b int, check a>b);
+create table t1 (a int, b int, check (a>b));
insert into t1 values (1,0);
insert into t1 values (0,1);
drop table t1;
@@ -27,3 +27,19 @@ t1 CREATE TABLE `t1` (
UNIQUE KEY `key_2` (`a`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
+drop table if exists t_illegal;
+create table t_illegal (a int, b int, check a>b);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'a>b)' at line 1
+create table t_illegal (a int, b int, constraint abc check a>b);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'a>b)' at line 1
+create table t_illegal (a int, b int, constraint abc);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 1
+drop table if exists t_11714;
+create table t_11714(a int, b int);
+alter table t_11714 add constraint cons1;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
+drop table t_11714;
+CREATE TABLE t_illegal (col_1 INT CHECK something (whatever));
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'something (whatever))' at line 1
+CREATE TABLE t_illegal (col_1 INT CHECK something);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'something)' at line 1
diff --git a/mysql-test/r/foreign_key.result b/mysql-test/r/foreign_key.result
index ece53db2e9a..a6577dd376b 100644
--- a/mysql-test/r/foreign_key.result
+++ b/mysql-test/r/foreign_key.result
@@ -13,3 +13,45 @@ foreign key (a,b) references t3 (c,d) on update set null);
create index a on t1 (a);
create unique index b on t1 (a,b);
drop table t1;
+drop table if exists t_34455;
+create table t_34455 (
+a int not null,
+foreign key (a) references t3 (a) match full match partial);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'match partial)' at line 3
+create table t_34455 (
+a int not null,
+foreign key (a) references t3 (a) on delete set default match full);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'match full)' at line 3
+create table t_34455 (
+a int not null,
+foreign key (a) references t3 (a) on update set default match full);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'match full)' at line 3
+create table t_34455 (
+a int not null,
+foreign key (a) references t3 (a)
+on delete set default on delete set default);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'delete set default)' at line 4
+create table t_34455 (
+a int not null,
+foreign key (a) references t3 (a)
+on update set default on update set default);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'update set default)' at line 4
+create table t_34455 (a int not null);
+alter table t_34455
+add foreign key (a) references t3 (a) match full match partial);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'match partial)' at line 2
+alter table t_34455
+add foreign key (a) references t3 (a) on delete set default match full);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'match full)' at line 2
+alter table t_34455
+add foreign key (a) references t3 (a) on update set default match full);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'match full)' at line 2
+alter table t_34455
+add foreign key (a) references t3 (a)
+on delete set default on delete set default);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'delete set default)' at line 3
+alter table t_34455
+add foreign key (a) references t3 (a)
+on update set default on update set default);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'update set default)' at line 3
+drop table t_34455;
diff --git a/mysql-test/r/ipv4_as_ipv6_win.result b/mysql-test/r/ipv4_as_ipv6_win.result
deleted file mode 100644
index 45e23d4d7e6..00000000000
--- a/mysql-test/r/ipv4_as_ipv6_win.result
+++ /dev/null
@@ -1,32 +0,0 @@
-=============Test of '127.0.0.1' (IPv4) ===========================
-mysqld is alive
-CREATE USER testuser@'127.0.0.1' identified by '1234';
-GRANT ALL ON test.* TO testuser@'127.0.0.1';
-SHOW GRANTS FOR testuser@'127.0.0.1';
-Grants for testuser@127.0.0.1
-GRANT USAGE ON *.* TO 'testuser'@'127.0.0.1' IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF'
-GRANT ALL PRIVILEGES ON `test`.* TO 'testuser'@'127.0.0.1'
-SET @nip= inet_aton('127.0.0.1');
-SELECT @nip;
-@nip
-2130706433
-SELECT inet_ntoa(@nip);
-inet_ntoa(@nip)
-127.0.0.1
-SELECT USER();
-USER()
-root@127.0.0.1
-SELECT current_user();
-current_user()
-root@127.0.0.1
-SHOW PROCESSLIST;
-REVOKE ALL ON test.* FROM testuser@'127.0.0.1';
-RENAME USER testuser@'127.0.0.1' to testuser1@'127.0.0.1';
-SET PASSWORD FOR testuser1@'127.0.0.1' = PASSWORD ('9876');
-SELECT USER();
-USER()
-root@127.0.0.1
-DROP USER testuser1@'127.0.0.1';
-=============Test of '::1' ========================
-connect (con1, ::1, root, , test, MASTER_MYPORT);
-Got one of the listed errors
diff --git a/mysql-test/r/ipv6.result b/mysql-test/r/ipv6.result
index 566938296a9..1ff51fcc831 100644
--- a/mysql-test/r/ipv6.result
+++ b/mysql-test/r/ipv6.result
@@ -86,179 +86,3 @@ SELECT USER();
USER()
root@localhost
DROP USER testuser1@'0:0:0:0:0:0:0:1';
-=============Test of '127.0.0.1' (IPv4) ===========================
-mysqld is alive
-CREATE USER testuser@'127.0.0.1' identified by '1234';
-GRANT ALL ON test.* TO testuser@'127.0.0.1';
-SHOW GRANTS FOR testuser@'127.0.0.1';
-Grants for testuser@127.0.0.1
-GRANT USAGE ON *.* TO 'testuser'@'127.0.0.1' IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF'
-GRANT ALL PRIVILEGES ON `test`.* TO 'testuser'@'127.0.0.1'
-SET @nip= inet_aton('127.0.0.1');
-SELECT @nip;
-@nip
-2130706433
-SELECT inet_ntoa(@nip);
-inet_ntoa(@nip)
-127.0.0.1
-SELECT USER();
-USER()
-root@localhost
-SELECT current_user();
-current_user()
-root@localhost
-SHOW PROCESSLIST;
-REVOKE ALL ON test.* FROM testuser@'127.0.0.1';
-RENAME USER testuser@'127.0.0.1' to testuser1@'127.0.0.1';
-SET PASSWORD FOR testuser1@'127.0.0.1' = PASSWORD ('9876');
-SELECT USER();
-USER()
-root@localhost
-DROP USER testuser1@'127.0.0.1';
-=============Test of '0:0:0:0:0:FFFF:127.0.0.1' ===================
-mysqld is alive
-CREATE USER testuser@'0:0:0:0:0:FFFF:127.0.0.1' identified by '1234';
-GRANT ALL ON test.* TO testuser@'0:0:0:0:0:FFFF:127.0.0.1';
-SHOW GRANTS FOR testuser@'0:0:0:0:0:FFFF:127.0.0.1';
-Grants for testuser@0:0:0:0:0:FFFF:127.0.0.1
-GRANT USAGE ON *.* TO 'testuser'@'0:0:0:0:0:FFFF:127.0.0.1' IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF'
-GRANT ALL PRIVILEGES ON `test`.* TO 'testuser'@'0:0:0:0:0:FFFF:127.0.0.1'
-SET @nip= inet_aton('0:0:0:0:0:FFFF:127.0.0.1');
-SELECT @nip;
-@nip
-NULL
-SELECT inet_ntoa(@nip);
-inet_ntoa(@nip)
-NULL
-SELECT USER();
-USER()
-root@localhost
-SELECT current_user();
-current_user()
-root@localhost
-SHOW PROCESSLIST;
-REVOKE ALL ON test.* FROM testuser@'0:0:0:0:0:FFFF:127.0.0.1';
-RENAME USER testuser@'0:0:0:0:0:FFFF:127.0.0.1' to testuser1@'0:0:0:0:0:FFFF:127.0.0.1';
-SET PASSWORD FOR testuser1@'0:0:0:0:0:FFFF:127.0.0.1' = PASSWORD ('9876');
-SELECT USER();
-USER()
-root@localhost
-DROP USER testuser1@'0:0:0:0:0:FFFF:127.0.0.1';
-=============Test of '0000:0000:0000:0000:0000:FFFF:127.0.0.1' ====
-mysqld is alive
-CREATE USER testuser@'0000:0000:0000:0000:0000:FFFF:127.0.0.1' identified by '1234';
-GRANT ALL ON test.* TO testuser@'0000:0000:0000:0000:0000:FFFF:127.0.0.1';
-SHOW GRANTS FOR testuser@'0000:0000:0000:0000:0000:FFFF:127.0.0.1';
-Grants for testuser@0000:0000:0000:0000:0000:FFFF:127.0.0.1
-GRANT USAGE ON *.* TO 'testuser'@'0000:0000:0000:0000:0000:FFFF:127.0.0.1' IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF'
-GRANT ALL PRIVILEGES ON `test`.* TO 'testuser'@'0000:0000:0000:0000:0000:FFFF:127.0.0.1'
-SET @nip= inet_aton('0000:0000:0000:0000:0000:FFFF:127.0.0.1');
-SELECT @nip;
-@nip
-NULL
-SELECT inet_ntoa(@nip);
-inet_ntoa(@nip)
-NULL
-SELECT USER();
-USER()
-root@localhost
-SELECT current_user();
-current_user()
-root@localhost
-SHOW PROCESSLIST;
-REVOKE ALL ON test.* FROM testuser@'0000:0000:0000:0000:0000:FFFF:127.0.0.1';
-RENAME USER testuser@'0000:0000:0000:0000:0000:FFFF:127.0.0.1' to testuser1@'0000:0000:0000:0000:0000:FFFF:127.0.0.1';
-SET PASSWORD FOR testuser1@'0000:0000:0000:0000:0000:FFFF:127.0.0.1' = PASSWORD ('9876');
-SELECT USER();
-USER()
-root@localhost
-DROP USER testuser1@'0000:0000:0000:0000:0000:FFFF:127.0.0.1';
-=============Test of '0:0000:0000:0:0000:FFFF:127.0.0.1' ====
-mysqld is alive
-CREATE USER testuser@'0:0000:0000:0:0000:FFFF:127.0.0.1' identified by '1234';
-GRANT ALL ON test.* TO testuser@'0:0000:0000:0:0000:FFFF:127.0.0.1';
-SHOW GRANTS FOR testuser@'0:0000:0000:0:0000:FFFF:127.0.0.1';
-Grants for testuser@0:0000:0000:0:0000:FFFF:127.0.0.1
-GRANT USAGE ON *.* TO 'testuser'@'0:0000:0000:0:0000:FFFF:127.0.0.1' IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF'
-GRANT ALL PRIVILEGES ON `test`.* TO 'testuser'@'0:0000:0000:0:0000:FFFF:127.0.0.1'
-SET @nip= inet_aton('0:0000:0000:0:0000:FFFF:127.0.0.1');
-SELECT @nip;
-@nip
-NULL
-SELECT inet_ntoa(@nip);
-inet_ntoa(@nip)
-NULL
-SELECT USER();
-USER()
-root@localhost
-SELECT current_user();
-current_user()
-root@localhost
-SHOW PROCESSLIST;
-REVOKE ALL ON test.* FROM testuser@'0:0000:0000:0:0000:FFFF:127.0.0.1';
-RENAME USER testuser@'0:0000:0000:0:0000:FFFF:127.0.0.1' to testuser1@'0:0000:0000:0:0000:FFFF:127.0.0.1';
-SET PASSWORD FOR testuser1@'0:0000:0000:0:0000:FFFF:127.0.0.1' = PASSWORD ('9876');
-SELECT USER();
-USER()
-root@localhost
-DROP USER testuser1@'0:0000:0000:0:0000:FFFF:127.0.0.1';
-=============Test of '0::0000:FFFF:127.0.0.1' ====
-mysqld is alive
-CREATE USER testuser@'0::0000:FFFF:127.0.0.1' identified by '1234';
-GRANT ALL ON test.* TO testuser@'0::0000:FFFF:127.0.0.1';
-SHOW GRANTS FOR testuser@'0::0000:FFFF:127.0.0.1';
-Grants for testuser@0::0000:FFFF:127.0.0.1
-GRANT USAGE ON *.* TO 'testuser'@'0::0000:FFFF:127.0.0.1' IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF'
-GRANT ALL PRIVILEGES ON `test`.* TO 'testuser'@'0::0000:FFFF:127.0.0.1'
-SET @nip= inet_aton('0::0000:FFFF:127.0.0.1');
-SELECT @nip;
-@nip
-NULL
-SELECT inet_ntoa(@nip);
-inet_ntoa(@nip)
-NULL
-SELECT USER();
-USER()
-root@localhost
-SELECT current_user();
-current_user()
-root@localhost
-SHOW PROCESSLIST;
-REVOKE ALL ON test.* FROM testuser@'0::0000:FFFF:127.0.0.1';
-RENAME USER testuser@'0::0000:FFFF:127.0.0.1' to testuser1@'0::0000:FFFF:127.0.0.1';
-SET PASSWORD FOR testuser1@'0::0000:FFFF:127.0.0.1' = PASSWORD ('9876');
-SELECT USER();
-USER()
-root@localhost
-DROP USER testuser1@'0::0000:FFFF:127.0.0.1';
-=============Test of '0:0:0:0:0:FFFF:127.0.0.1/96' ================
-=============Test of '::FFFF:127.0.0.1' ===========================
-mysqld is alive
-CREATE USER testuser@'::FFFF:127.0.0.1' identified by '1234';
-GRANT ALL ON test.* TO testuser@'::FFFF:127.0.0.1';
-SHOW GRANTS FOR testuser@'::FFFF:127.0.0.1';
-Grants for testuser@::FFFF:127.0.0.1
-GRANT USAGE ON *.* TO 'testuser'@'::FFFF:127.0.0.1' IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF'
-GRANT ALL PRIVILEGES ON `test`.* TO 'testuser'@'::FFFF:127.0.0.1'
-SET @nip= inet_aton('::FFFF:127.0.0.1');
-SELECT @nip;
-@nip
-NULL
-SELECT inet_ntoa(@nip);
-inet_ntoa(@nip)
-NULL
-SELECT USER();
-USER()
-root@localhost
-SELECT current_user();
-current_user()
-root@localhost
-SHOW PROCESSLIST;
-REVOKE ALL ON test.* FROM testuser@'::FFFF:127.0.0.1';
-RENAME USER testuser@'::FFFF:127.0.0.1' to testuser1@'::FFFF:127.0.0.1';
-SET PASSWORD FOR testuser1@'::FFFF:127.0.0.1' = PASSWORD ('9876');
-SELECT USER();
-USER()
-root@localhost
-DROP USER testuser1@'::FFFF:127.0.0.1';
-=============Test of '::FFFF:127.0.0.1/96' ========================
diff --git a/mysql-test/r/ipv6_win.result b/mysql-test/r/ipv6_win.result
deleted file mode 100644
index 8082e8aa25e..00000000000
--- a/mysql-test/r/ipv6_win.result
+++ /dev/null
@@ -1,88 +0,0 @@
-=============Test of '::1' ========================================
-mysqld is alive
-CREATE USER testuser@'::1' identified by '1234';
-GRANT ALL ON test.* TO testuser@'::1';
-SHOW GRANTS FOR testuser@'::1';
-Grants for testuser@::1
-GRANT USAGE ON *.* TO 'testuser'@'::1' IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF'
-GRANT ALL PRIVILEGES ON `test`.* TO 'testuser'@'::1'
-SET @nip= inet_aton('::1');
-SELECT @nip;
-@nip
-NULL
-SELECT inet_ntoa(@nip);
-inet_ntoa(@nip)
-NULL
-SELECT USER();
-USER()
-root@::1
-SELECT current_user();
-current_user()
-root@::1
-SHOW PROCESSLIST;
-REVOKE ALL ON test.* FROM testuser@'::1';
-RENAME USER testuser@'::1' to testuser1@'::1';
-SET PASSWORD FOR testuser1@'::1' = PASSWORD ('9876');
-SELECT USER();
-USER()
-root@::1
-DROP USER testuser1@'::1';
-=============Test of '::1/128' ====================================
-=============Test of '0000:0000:0000:0000:0000:0000:0000:0001' ====
-mysqld is alive
-CREATE USER testuser@'0000:0000:0000:0000:0000:0000:0000:0001' identified by '1234';
-GRANT ALL ON test.* TO testuser@'0000:0000:0000:0000:0000:0000:0000:0001';
-SHOW GRANTS FOR testuser@'0000:0000:0000:0000:0000:0000:0000:0001';
-Grants for testuser@0000:0000:0000:0000:0000:0000:0000:0001
-GRANT USAGE ON *.* TO 'testuser'@'0000:0000:0000:0000:0000:0000:0000:0001' IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF'
-GRANT ALL PRIVILEGES ON `test`.* TO 'testuser'@'0000:0000:0000:0000:0000:0000:0000:0001'
-SET @nip= inet_aton('0000:0000:0000:0000:0000:0000:0000:0001');
-SELECT @nip;
-@nip
-NULL
-SELECT inet_ntoa(@nip);
-inet_ntoa(@nip)
-NULL
-SELECT USER();
-USER()
-root@::1
-SELECT current_user();
-current_user()
-root@::1
-SHOW PROCESSLIST;
-REVOKE ALL ON test.* FROM testuser@'0000:0000:0000:0000:0000:0000:0000:0001';
-RENAME USER testuser@'0000:0000:0000:0000:0000:0000:0000:0001' to testuser1@'0000:0000:0000:0000:0000:0000:0000:0001';
-SET PASSWORD FOR testuser1@'0000:0000:0000:0000:0000:0000:0000:0001' = PASSWORD ('9876');
-SELECT USER();
-USER()
-root@::1
-DROP USER testuser1@'0000:0000:0000:0000:0000:0000:0000:0001';
-=============Test of '0:0:0:0:0:0:0:1' ============================
-mysqld is alive
-CREATE USER testuser@'0:0:0:0:0:0:0:1' identified by '1234';
-GRANT ALL ON test.* TO testuser@'0:0:0:0:0:0:0:1';
-SHOW GRANTS FOR testuser@'0:0:0:0:0:0:0:1';
-Grants for testuser@0:0:0:0:0:0:0:1
-GRANT USAGE ON *.* TO 'testuser'@'0:0:0:0:0:0:0:1' IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF'
-GRANT ALL PRIVILEGES ON `test`.* TO 'testuser'@'0:0:0:0:0:0:0:1'
-SET @nip= inet_aton('0:0:0:0:0:0:0:1');
-SELECT @nip;
-@nip
-NULL
-SELECT inet_ntoa(@nip);
-inet_ntoa(@nip)
-NULL
-SELECT USER();
-USER()
-root@::1
-SELECT current_user();
-current_user()
-root@::1
-SHOW PROCESSLIST;
-REVOKE ALL ON test.* FROM testuser@'0:0:0:0:0:0:0:1';
-RENAME USER testuser@'0:0:0:0:0:0:0:1' to testuser1@'0:0:0:0:0:0:0:1';
-SET PASSWORD FOR testuser1@'0:0:0:0:0:0:0:1' = PASSWORD ('9876');
-SELECT USER();
-USER()
-root@::1
-DROP USER testuser1@'0:0:0:0:0:0:0:1';
diff --git a/mysql-test/r/show_profile.result b/mysql-test/r/show_profile.result
new file mode 100644
index 00000000000..67a07f6cfc9
--- /dev/null
+++ b/mysql-test/r/show_profile.result
@@ -0,0 +1,10 @@
+SET profiling = 1;
+SELECT 1;
+1
+1
+SHOW PROFILES;
+Query_ID Duration Query
+1 # SELECT 1
+SHOW PROFILE FOR QUERY 1;
+SHOW PROFILE CPU FOR QUERY 1;
+SET profiling = 0;
diff --git a/mysql-test/suite/binlog/r/binlog_row_mix_innodb_myisam.result b/mysql-test/suite/binlog/r/binlog_row_mix_innodb_myisam.result
index e0cb1b695be..d59e84c1e1e 100644
--- a/mysql-test/suite/binlog/r/binlog_row_mix_innodb_myisam.result
+++ b/mysql-test/suite/binlog/r/binlog_row_mix_innodb_myisam.result
@@ -744,8 +744,9 @@ ERROR 23000: Duplicate entry '2' for key 'PRIMARY'
show binlog events from <binlog_start>;
Log_name Pos Event_type Server_id End_log_pos Info
master-bin.000001 # Query # # BEGIN
-master-bin.000001 # Intvar # # INSERT_ID=3
-master-bin.000001 # Query # # use `test`; insert into t2 values (bug27417(2))
+master-bin.000001 # Table_map # # table_id: # (test.t2)
+master-bin.000001 # Table_map # # table_id: # (test.t1)
+master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
master-bin.000001 # Query # # COMMIT
select count(*) from t1 /* must be 3 */;
count(*)
@@ -761,8 +762,9 @@ count(*)
show binlog events from <binlog_start>;
Log_name Pos Event_type Server_id End_log_pos Info
master-bin.000001 # Query # # BEGIN
-master-bin.000001 # Intvar # # INSERT_ID=4
-master-bin.000001 # Query # # use `test`; delete from t2 where a=bug27417(3)
+master-bin.000001 # Table_map # # table_id: # (test.t2)
+master-bin.000001 # Table_map # # table_id: # (test.t1)
+master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
master-bin.000001 # Query # # COMMIT
select count(*) from t1 /* must be 5 */;
count(*)
@@ -784,6 +786,10 @@ insert into t2 values (bug27417(1));
ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
show binlog events from <binlog_start>;
Log_name Pos Event_type Server_id End_log_pos Info
+master-bin.000001 # Query # # BEGIN
+master-bin.000001 # Table_map # # table_id: # (test.t1)
+master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
+master-bin.000001 # Query # # COMMIT
select count(*) from t1 /* must be 1 */;
count(*)
1
@@ -795,6 +801,10 @@ insert into t2 select bug27417(1) union select bug27417(2);
ERROR 23000: Duplicate entry '2' for key 'PRIMARY'
show binlog events from <binlog_start>;
Log_name Pos Event_type Server_id End_log_pos Info
+master-bin.000001 # Query # # BEGIN
+master-bin.000001 # Table_map # # table_id: # (test.t1)
+master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
+master-bin.000001 # Query # # COMMIT
select count(*) from t1 /* must be 2 */;
count(*)
2
@@ -806,8 +816,11 @@ ERROR 23000: Duplicate entry '4' for key 'b'
show binlog events from <binlog_start>;
Log_name Pos Event_type Server_id End_log_pos Info
master-bin.000001 # Query # # BEGIN
-master-bin.000001 # Intvar # # INSERT_ID=4
-master-bin.000001 # Query # # use `test`; update t3 set b=b+bug27417(1)
+master-bin.000001 # Table_map # # table_id: # (test.t3)
+master-bin.000001 # Table_map # # table_id: # (test.t1)
+master-bin.000001 # Write_rows # # table_id: #
+master-bin.000001 # Update_rows # # table_id: #
+master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
master-bin.000001 # Query # # COMMIT
select count(*) from t1 /* must be 2 */;
count(*)
@@ -821,6 +834,10 @@ UPDATE t4,t3 SET t4.a=t3.a + bug27417(1) /* top level non-ta table */;
ERROR 23000: Duplicate entry '2' for key 'PRIMARY'
show binlog events from <binlog_start>;
Log_name Pos Event_type Server_id End_log_pos Info
+master-bin.000001 # Query # # BEGIN
+master-bin.000001 # Table_map # # table_id: # (test.t1)
+master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
+master-bin.000001 # Query # # COMMIT
select count(*) from t1 /* must be 4 */;
count(*)
4
@@ -834,7 +851,7 @@ UPDATE t3,t4 SET t3.a=t4.a + bug27417(1);
ERROR 23000: Duplicate entry '2' for key 'PRIMARY'
select count(*) from t1 /* must be 1 */;
count(*)
-1
+2
drop table t4;
delete from t1;
delete from t2;
@@ -848,6 +865,11 @@ delete from t2;
ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
show binlog events from <binlog_start>;
Log_name Pos Event_type Server_id End_log_pos Info
+master-bin.000001 # Query # # BEGIN
+master-bin.000001 # Table_map # # table_id: # (test.t3)
+master-bin.000001 # Table_map # # table_id: # (test.t1)
+master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
+master-bin.000001 # Query # # COMMIT
select count(*) from t1 /* must be 1 */;
count(*)
1
@@ -864,6 +886,10 @@ delete t2.* from t2,t5 where t2.a=t5.a + 1;
ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
show binlog events from <binlog_start>;
Log_name Pos Event_type Server_id End_log_pos Info
+master-bin.000001 # Query # # BEGIN
+master-bin.000001 # Table_map # # table_id: # (test.t1)
+master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
+master-bin.000001 # Query # # COMMIT
select count(*) from t1 /* must be 1 */;
count(*)
1
@@ -881,6 +907,10 @@ count(*)
2
show binlog events from <binlog_start>;
Log_name Pos Event_type Server_id End_log_pos Info
+master-bin.000001 # Query # # BEGIN
+master-bin.000001 # Table_map # # table_id: # (test.t1)
+master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
+master-bin.000001 # Query # # COMMIT
drop trigger trg_del_t2;
drop table t1,t2,t3,t4,t5;
drop function bug27417;
diff --git a/mysql-test/suite/binlog/r/binlog_stm_mix_innodb_myisam.result b/mysql-test/suite/binlog/r/binlog_stm_mix_innodb_myisam.result
index 11525df9c24..3cdefeac59b 100644
--- a/mysql-test/suite/binlog/r/binlog_stm_mix_innodb_myisam.result
+++ b/mysql-test/suite/binlog/r/binlog_stm_mix_innodb_myisam.result
@@ -519,10 +519,10 @@ end|
reset master;
insert into t2 values (bug27417(1));
Warnings:
-Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement updates two AUTO_INCREMENT columns. This is unsafe because the generated value cannot be predicted by slave.
+Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement invokes a trigger or a stored function that inserts into AUTO_INCREMENT column which is unsafe to binlog in STATEMENT format because slave may execute it non-deterministically.
insert into t2 select bug27417(2);
Warnings:
-Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement updates two AUTO_INCREMENT columns. This is unsafe because the generated value cannot be predicted by slave.
+Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement invokes a trigger or a stored function that inserts into AUTO_INCREMENT column which is unsafe to binlog in STATEMENT format because slave may execute it non-deterministically.
reset master;
insert into t2 values (bug27417(2));
ERROR 23000: Duplicate entry '2' for key 'PRIMARY'
@@ -542,7 +542,7 @@ count(*)
2
delete from t2 where a=bug27417(3);
Warnings:
-Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement updates two AUTO_INCREMENT columns. This is unsafe because the generated value cannot be predicted by slave.
+Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement invokes a trigger or a stored function that inserts into AUTO_INCREMENT column which is unsafe to binlog in STATEMENT format because slave may execute it non-deterministically.
select count(*) from t2 /* nothing got deleted */;
count(*)
2
@@ -559,7 +559,7 @@ count(*)
delete t2 from t2 where t2.a=bug27417(100) /* must not affect t2 */;
affected rows: 0
Warnings:
-Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement updates two AUTO_INCREMENT columns. This is unsafe because the generated value cannot be predicted by slave.
+Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement invokes a trigger or a stored function that inserts into AUTO_INCREMENT column which is unsafe to binlog in STATEMENT format because slave may execute it non-deterministically.
select count(*) from t1 /* must be 7 */;
count(*)
7
@@ -783,10 +783,10 @@ end|
reset master;
insert into t2 values (bug27417(1));
Warnings:
-Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement updates two AUTO_INCREMENT columns. This is unsafe because the generated value cannot be predicted by slave.
+Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement invokes a trigger or a stored function that inserts into AUTO_INCREMENT column which is unsafe to binlog in STATEMENT format because slave may execute it non-deterministically.
insert into t2 select bug27417(2);
Warnings:
-Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement updates two AUTO_INCREMENT columns. This is unsafe because the generated value cannot be predicted by slave.
+Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement invokes a trigger or a stored function that inserts into AUTO_INCREMENT column which is unsafe to binlog in STATEMENT format because slave may execute it non-deterministically.
reset master;
insert into t2 values (bug27417(2));
ERROR 23000: Duplicate entry '2' for key 'PRIMARY'
@@ -805,7 +805,7 @@ count(*)
2
delete from t2 where a=bug27417(3);
Warnings:
-Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement updates two AUTO_INCREMENT columns. This is unsafe because the generated value cannot be predicted by slave.
+Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement invokes a trigger or a stored function that inserts into AUTO_INCREMENT column which is unsafe to binlog in STATEMENT format because slave may execute it non-deterministically.
select count(*) from t2 /* nothing got deleted */;
count(*)
2
@@ -821,7 +821,7 @@ count(*)
delete t2 from t2 where t2.a=bug27417(100) /* must not affect t2 */;
affected rows: 0
Warnings:
-Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement updates two AUTO_INCREMENT columns. This is unsafe because the generated value cannot be predicted by slave.
+Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement invokes a trigger or a stored function that inserts into AUTO_INCREMENT column which is unsafe to binlog in STATEMENT format because slave may execute it non-deterministically.
select count(*) from t1 /* must be 7 */;
count(*)
7
diff --git a/mysql-test/suite/binlog/r/binlog_stm_unsafe_warning.result b/mysql-test/suite/binlog/r/binlog_stm_unsafe_warning.result
index c2445aa1d1a..e8fd7b82bc4 100644
--- a/mysql-test/suite/binlog/r/binlog_stm_unsafe_warning.result
+++ b/mysql-test/suite/binlog/r/binlog_stm_unsafe_warning.result
@@ -1,5 +1,6 @@
call mtr.add_suppression("Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement uses a LIMIT clause. This is unsafe because the set of rows included cannot be predicted. .*");
call mtr.add_suppression("Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement uses a system function whose value may differ on slave. .*");
+call mtr.add_suppression("Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement invokes a trigger or a stored function that inserts into AUTO_INCREMENT column");
### NOT filtered database => assertion: warnings ARE shown
DROP TABLE IF EXISTS t1;
CREATE TABLE t1 (a int, b int, primary key (a));
@@ -50,3 +51,29 @@ SET GLOBAL log_warnings = @old_log_warnings;
# Count the number of times the "Unsafe" message was printed
# to the error log.
Occurrences: 1
+DROP TABLE IF EXISTS t1, t2;
+CREATE TABLE t1 (a int);
+CREATE TABLE t2 (a int auto_increment primary key, b int);
+CREATE TRIGGER tr_bug50192 AFTER INSERT ON t1 FOR EACH ROW INSERT INTO t2 (b) VALUES (1);
+CREATE FUNCTION sf_bug50192() RETURNS INTEGER
+BEGIN
+INSERT INTO t2(b) VALUES(2);
+RETURN 1;
+END |
+INSERT INTO t1 VALUES (0);
+Warnings:
+Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement invokes a trigger or a stored function that inserts into AUTO_INCREMENT column which is unsafe to binlog in STATEMENT format because slave may execute it non-deterministically.
+SHOW WARNINGS;
+Level Code Message
+Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement invokes a trigger or a stored function that inserts into AUTO_INCREMENT column which is unsafe to binlog in STATEMENT format because slave may execute it non-deterministically.
+SELECT sf_bug50192();
+sf_bug50192()
+1
+Warnings:
+Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement invokes a trigger or a stored function that inserts into AUTO_INCREMENT column which is unsafe to binlog in STATEMENT format because slave may execute it non-deterministically.
+SHOW WARNINGS;
+Level Code Message
+Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement invokes a trigger or a stored function that inserts into AUTO_INCREMENT column which is unsafe to binlog in STATEMENT format because slave may execute it non-deterministically.
+DROP FUNCTION sf_bug50192;
+DROP TRIGGER tr_bug50192;
+DROP TABLE t1, t2;
diff --git a/mysql-test/suite/binlog/t/binlog_stm_unsafe_warning.test b/mysql-test/suite/binlog/t/binlog_stm_unsafe_warning.test
index 35235ce951a..874bb015a07 100644
--- a/mysql-test/suite/binlog/t/binlog_stm_unsafe_warning.test
+++ b/mysql-test/suite/binlog/t/binlog_stm_unsafe_warning.test
@@ -27,6 +27,7 @@
-- source include/have_binlog_format_statement.inc
call mtr.add_suppression("Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement uses a LIMIT clause. This is unsafe because the set of rows included cannot be predicted. .*");
call mtr.add_suppression("Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement uses a system function whose value may differ on slave. .*");
+call mtr.add_suppression("Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement invokes a trigger or a stored function that inserts into AUTO_INCREMENT column");
-- echo ### NOT filtered database => assertion: warnings ARE shown
@@ -117,3 +118,34 @@ perl;
print "Occurrences: $count\n";
close(FILE);
EOF
+
+# bug#50192: diplaying the unsafe warning comes out to the user warning stack
+
+-- disable_warnings
+DROP TABLE IF EXISTS t1, t2;
+-- enable_warnings
+
+CREATE TABLE t1 (a int);
+CREATE TABLE t2 (a int auto_increment primary key, b int);
+CREATE TRIGGER tr_bug50192 AFTER INSERT ON t1 FOR EACH ROW INSERT INTO t2 (b) VALUES (1);
+
+DELIMITER |;
+
+CREATE FUNCTION sf_bug50192() RETURNS INTEGER
+BEGIN
+ INSERT INTO t2(b) VALUES(2);
+ RETURN 1;
+END |
+
+DELIMITER ;|
+
+INSERT INTO t1 VALUES (0);
+SHOW WARNINGS;
+SELECT sf_bug50192();
+SHOW WARNINGS;
+
+# cleanup
+
+DROP FUNCTION sf_bug50192;
+DROP TRIGGER tr_bug50192;
+DROP TABLE t1, t2;
diff --git a/mysql-test/suite/parts/r/partition_innodb_status_file.result b/mysql-test/suite/parts/r/partition_innodb_status_file.result
new file mode 100644
index 00000000000..29b5a3b3766
--- /dev/null
+++ b/mysql-test/suite/parts/r/partition_innodb_status_file.result
@@ -0,0 +1,14 @@
+CREATE TABLE t1 (a INT) ENGINE = InnoDB PARTITION BY HASH(a);
+INSERT INTO t1 VALUES (0), (1), (2);
+START TRANSACTION;
+UPDATE t1 SET a = 5 WHERE a = 1;
+# Connection con1
+# InnoDB lock timeout and monitor thread runs every 15 seconds
+SET innodb_lock_wait_timeout = 20;
+START TRANSACTION;
+UPDATE t1 SET a = 3 WHERE a = 1;
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+COMMIT;
+# Connection default
+COMMIT;
+DROP TABLE t1;
diff --git a/mysql-test/suite/parts/t/partition_innodb_status_file-master.opt b/mysql-test/suite/parts/t/partition_innodb_status_file-master.opt
new file mode 100644
index 00000000000..779962e8fca
--- /dev/null
+++ b/mysql-test/suite/parts/t/partition_innodb_status_file-master.opt
@@ -0,0 +1 @@
+--innodb-status-file=1
diff --git a/mysql-test/suite/parts/t/partition_innodb_status_file.test b/mysql-test/suite/parts/t/partition_innodb_status_file.test
new file mode 100644
index 00000000000..f066ce5d485
--- /dev/null
+++ b/mysql-test/suite/parts/t/partition_innodb_status_file.test
@@ -0,0 +1,20 @@
+--source include/have_innodb.inc
+--source include/have_partition.inc
+
+CREATE TABLE t1 (a INT) ENGINE = InnoDB PARTITION BY HASH(a);
+INSERT INTO t1 VALUES (0), (1), (2);
+START TRANSACTION;
+UPDATE t1 SET a = 5 WHERE a = 1;
+connect (con1, localhost, root,,);
+--echo # Connection con1
+--echo # InnoDB lock timeout and monitor thread runs every 15 seconds
+SET innodb_lock_wait_timeout = 20;
+START TRANSACTION;
+--error ER_LOCK_WAIT_TIMEOUT
+UPDATE t1 SET a = 3 WHERE a = 1;
+COMMIT;
+disconnect con1;
+connection default;
+--echo # Connection default
+COMMIT;
+DROP TABLE t1;
diff --git a/mysql-test/suite/perfschema/r/aggregate.result b/mysql-test/suite/perfschema/r/aggregate.result
index 598f9297cc5..197378ca38f 100644
--- a/mysql-test/suite/perfschema/r/aggregate.result
+++ b/mysql-test/suite/perfschema/r/aggregate.result
@@ -16,6 +16,7 @@ b CHAR(100) DEFAULT 'initial value')
ENGINE=MyISAM;
insert into t1 (id) values (1), (2), (3), (4), (5), (6), (7), (8);
update performance_schema.SETUP_INSTRUMENTS SET enabled = 'NO';
+update performance_schema.SETUP_CONSUMERS set enabled = 'NO';
set @dump_all=FALSE;
"Verifying file aggregate consistency"
SELECT EVENT_NAME, e.COUNT_READ, SUM(i.COUNT_READ)
@@ -51,14 +52,14 @@ SELECT EVENT_NAME, e.SUM_TIMER_WAIT, SUM(i.SUM_TIMER_WAIT)
FROM performance_schema.EVENTS_WAITS_SUMMARY_BY_EVENT_NAME AS e
JOIN performance_schema.EVENTS_WAITS_SUMMARY_BY_INSTANCE AS i USING (EVENT_NAME)
GROUP BY EVENT_NAME
-HAVING (e.SUM_TIMER_WAIT <> SUM(i.SUM_TIMER_WAIT))
+HAVING (e.SUM_TIMER_WAIT < SUM(i.SUM_TIMER_WAIT))
OR @dump_all;
EVENT_NAME SUM_TIMER_WAIT SUM(i.SUM_TIMER_WAIT)
SELECT EVENT_NAME, e.MIN_TIMER_WAIT, MIN(i.MIN_TIMER_WAIT)
FROM performance_schema.EVENTS_WAITS_SUMMARY_BY_EVENT_NAME AS e
JOIN performance_schema.EVENTS_WAITS_SUMMARY_BY_INSTANCE AS i USING (EVENT_NAME)
GROUP BY EVENT_NAME
-HAVING (e.MIN_TIMER_WAIT <> MIN(i.MIN_TIMER_WAIT))
+HAVING (e.MIN_TIMER_WAIT > MIN(i.MIN_TIMER_WAIT))
AND (MIN(i.MIN_TIMER_WAIT) != 0)
OR @dump_all;
EVENT_NAME MIN_TIMER_WAIT MIN(i.MIN_TIMER_WAIT)
@@ -66,7 +67,7 @@ SELECT EVENT_NAME, e.MAX_TIMER_WAIT, MAX(i.MAX_TIMER_WAIT)
FROM performance_schema.EVENTS_WAITS_SUMMARY_BY_EVENT_NAME AS e
JOIN performance_schema.EVENTS_WAITS_SUMMARY_BY_INSTANCE AS i USING (EVENT_NAME)
GROUP BY EVENT_NAME
-HAVING (e.MAX_TIMER_WAIT <> MAX(i.MAX_TIMER_WAIT))
+HAVING (e.MAX_TIMER_WAIT < MAX(i.MAX_TIMER_WAIT))
OR @dump_all;
EVENT_NAME MAX_TIMER_WAIT MAX(i.MAX_TIMER_WAIT)
"Verifying waits aggregate consistency (thread)"
@@ -75,7 +76,7 @@ FROM performance_schema.EVENTS_WAITS_SUMMARY_BY_EVENT_NAME AS e
JOIN performance_schema.EVENTS_WAITS_SUMMARY_BY_THREAD_BY_EVENT_NAME AS t
USING (EVENT_NAME)
GROUP BY EVENT_NAME
-HAVING (e.SUM_TIMER_WAIT <> SUM(t.SUM_TIMER_WAIT))
+HAVING (e.SUM_TIMER_WAIT < SUM(t.SUM_TIMER_WAIT))
OR @dump_all;
EVENT_NAME SUM_TIMER_WAIT SUM(t.SUM_TIMER_WAIT)
SELECT EVENT_NAME, e.MIN_TIMER_WAIT, MIN(t.MIN_TIMER_WAIT)
@@ -83,7 +84,7 @@ FROM performance_schema.EVENTS_WAITS_SUMMARY_BY_EVENT_NAME AS e
JOIN performance_schema.EVENTS_WAITS_SUMMARY_BY_THREAD_BY_EVENT_NAME AS t
USING (EVENT_NAME)
GROUP BY EVENT_NAME
-HAVING (e.MIN_TIMER_WAIT <> MIN(t.MIN_TIMER_WAIT))
+HAVING (e.MIN_TIMER_WAIT > MIN(t.MIN_TIMER_WAIT))
AND (MIN(t.MIN_TIMER_WAIT) != 0)
OR @dump_all;
EVENT_NAME MIN_TIMER_WAIT MIN(t.MIN_TIMER_WAIT)
@@ -92,7 +93,7 @@ FROM performance_schema.EVENTS_WAITS_SUMMARY_BY_EVENT_NAME AS e
JOIN performance_schema.EVENTS_WAITS_SUMMARY_BY_THREAD_BY_EVENT_NAME AS t
USING (EVENT_NAME)
GROUP BY EVENT_NAME
-HAVING (e.MAX_TIMER_WAIT <> MAX(t.MAX_TIMER_WAIT))
+HAVING (e.MAX_TIMER_WAIT < MAX(t.MAX_TIMER_WAIT))
OR @dump_all;
EVENT_NAME MAX_TIMER_WAIT MAX(t.MAX_TIMER_WAIT)
update performance_schema.SETUP_CONSUMERS set enabled = 'YES';
diff --git a/mysql-test/suite/perfschema/r/dml_mutex_instances.result b/mysql-test/suite/perfschema/r/dml_mutex_instances.result
index 655ca811c06..862123b3450 100644
--- a/mysql-test/suite/perfschema/r/dml_mutex_instances.result
+++ b/mysql-test/suite/perfschema/r/dml_mutex_instances.result
@@ -1,6 +1,6 @@
select * from performance_schema.MUTEX_INSTANCES limit 1;
NAME OBJECT_INSTANCE_BEGIN LOCKED_BY_THREAD_ID
-# # NULL
+# # #
select * from performance_schema.MUTEX_INSTANCES
where name='FOO';
NAME OBJECT_INSTANCE_BEGIN LOCKED_BY_THREAD_ID
diff --git a/mysql-test/suite/perfschema/r/dml_rwlock_instances.result b/mysql-test/suite/perfschema/r/dml_rwlock_instances.result
index 62b5fbeaa8a..686007e58e9 100644
--- a/mysql-test/suite/perfschema/r/dml_rwlock_instances.result
+++ b/mysql-test/suite/perfschema/r/dml_rwlock_instances.result
@@ -1,6 +1,6 @@
select * from performance_schema.RWLOCK_INSTANCES limit 1;
NAME OBJECT_INSTANCE_BEGIN WRITE_LOCKED_BY_THREAD_ID READ_LOCKED_BY_COUNT
-# # NULL 0
+# # # #
select * from performance_schema.RWLOCK_INSTANCES
where name='FOO';
NAME OBJECT_INSTANCE_BEGIN WRITE_LOCKED_BY_THREAD_ID READ_LOCKED_BY_COUNT
diff --git a/mysql-test/suite/perfschema/r/dml_setup_instruments.result b/mysql-test/suite/perfschema/r/dml_setup_instruments.result
index 6d6651a5e1f..be7d8825364 100644
--- a/mysql-test/suite/perfschema/r/dml_setup_instruments.result
+++ b/mysql-test/suite/perfschema/r/dml_setup_instruments.result
@@ -16,7 +16,8 @@ wait/synch/mutex/sql/LOCK_delayed_create YES YES
wait/synch/mutex/sql/LOCK_delayed_insert YES YES
select * from performance_schema.SETUP_INSTRUMENTS
where name like 'Wait/Synch/Rwlock/sql/%'
- order by name limit 10;
+ and name not in ('wait/synch/rwlock/sql/CRYPTO_dynlock_value::lock')
+order by name limit 10;
NAME ENABLED TIMED
wait/synch/rwlock/sql/LOCK_dboptions YES YES
wait/synch/rwlock/sql/LOCK_grant YES YES
diff --git a/mysql-test/suite/perfschema/t/aggregate.test b/mysql-test/suite/perfschema/t/aggregate.test
index 7c01bdd0a4b..0fa4651ecda 100644
--- a/mysql-test/suite/perfschema/t/aggregate.test
+++ b/mysql-test/suite/perfschema/t/aggregate.test
@@ -1,4 +1,4 @@
-# Copyright (C) 2009 Sun Microsystems, Inc
+# Copyright (C) 2009-2010 Sun Microsystems, Inc
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -50,6 +50,8 @@ insert into t1 (id) values (1), (2), (3), (4), (5), (6), (7), (8);
# Stop recording data, so the select below don't add noise.
update performance_schema.SETUP_INSTRUMENTS SET enabled = 'NO';
+# Disable all consumers, for long standing waits
+update performance_schema.SETUP_CONSUMERS set enabled = 'NO';
# Helper to debug
set @dump_all=FALSE;
@@ -132,14 +134,14 @@ SELECT EVENT_NAME, e.SUM_TIMER_WAIT, SUM(i.SUM_TIMER_WAIT)
FROM performance_schema.EVENTS_WAITS_SUMMARY_BY_EVENT_NAME AS e
JOIN performance_schema.EVENTS_WAITS_SUMMARY_BY_INSTANCE AS i USING (EVENT_NAME)
GROUP BY EVENT_NAME
-HAVING (e.SUM_TIMER_WAIT <> SUM(i.SUM_TIMER_WAIT))
+HAVING (e.SUM_TIMER_WAIT < SUM(i.SUM_TIMER_WAIT))
OR @dump_all;
SELECT EVENT_NAME, e.MIN_TIMER_WAIT, MIN(i.MIN_TIMER_WAIT)
FROM performance_schema.EVENTS_WAITS_SUMMARY_BY_EVENT_NAME AS e
JOIN performance_schema.EVENTS_WAITS_SUMMARY_BY_INSTANCE AS i USING (EVENT_NAME)
GROUP BY EVENT_NAME
-HAVING (e.MIN_TIMER_WAIT <> MIN(i.MIN_TIMER_WAIT))
+HAVING (e.MIN_TIMER_WAIT > MIN(i.MIN_TIMER_WAIT))
AND (MIN(i.MIN_TIMER_WAIT) != 0)
OR @dump_all;
@@ -147,7 +149,7 @@ SELECT EVENT_NAME, e.MAX_TIMER_WAIT, MAX(i.MAX_TIMER_WAIT)
FROM performance_schema.EVENTS_WAITS_SUMMARY_BY_EVENT_NAME AS e
JOIN performance_schema.EVENTS_WAITS_SUMMARY_BY_INSTANCE AS i USING (EVENT_NAME)
GROUP BY EVENT_NAME
-HAVING (e.MAX_TIMER_WAIT <> MAX(i.MAX_TIMER_WAIT))
+HAVING (e.MAX_TIMER_WAIT < MAX(i.MAX_TIMER_WAIT))
OR @dump_all;
--echo "Verifying waits aggregate consistency (thread)"
@@ -157,7 +159,7 @@ FROM performance_schema.EVENTS_WAITS_SUMMARY_BY_EVENT_NAME AS e
JOIN performance_schema.EVENTS_WAITS_SUMMARY_BY_THREAD_BY_EVENT_NAME AS t
USING (EVENT_NAME)
GROUP BY EVENT_NAME
-HAVING (e.SUM_TIMER_WAIT <> SUM(t.SUM_TIMER_WAIT))
+HAVING (e.SUM_TIMER_WAIT < SUM(t.SUM_TIMER_WAIT))
OR @dump_all;
SELECT EVENT_NAME, e.MIN_TIMER_WAIT, MIN(t.MIN_TIMER_WAIT)
@@ -165,7 +167,7 @@ FROM performance_schema.EVENTS_WAITS_SUMMARY_BY_EVENT_NAME AS e
JOIN performance_schema.EVENTS_WAITS_SUMMARY_BY_THREAD_BY_EVENT_NAME AS t
USING (EVENT_NAME)
GROUP BY EVENT_NAME
-HAVING (e.MIN_TIMER_WAIT <> MIN(t.MIN_TIMER_WAIT))
+HAVING (e.MIN_TIMER_WAIT > MIN(t.MIN_TIMER_WAIT))
AND (MIN(t.MIN_TIMER_WAIT) != 0)
OR @dump_all;
@@ -174,7 +176,7 @@ FROM performance_schema.EVENTS_WAITS_SUMMARY_BY_EVENT_NAME AS e
JOIN performance_schema.EVENTS_WAITS_SUMMARY_BY_THREAD_BY_EVENT_NAME AS t
USING (EVENT_NAME)
GROUP BY EVENT_NAME
-HAVING (e.MAX_TIMER_WAIT <> MAX(t.MAX_TIMER_WAIT))
+HAVING (e.MAX_TIMER_WAIT < MAX(t.MAX_TIMER_WAIT))
OR @dump_all;
diff --git a/mysql-test/suite/perfschema/t/dml_mutex_instances.test b/mysql-test/suite/perfschema/t/dml_mutex_instances.test
index e3062c7b34c..0971c664eb8 100644
--- a/mysql-test/suite/perfschema/t/dml_mutex_instances.test
+++ b/mysql-test/suite/perfschema/t/dml_mutex_instances.test
@@ -18,7 +18,7 @@
--source include/not_embedded.inc
--source include/have_perfschema.inc
---replace_column 1 # 2 #
+--replace_column 1 # 2 # 3 #
select * from performance_schema.MUTEX_INSTANCES limit 1;
select * from performance_schema.MUTEX_INSTANCES
diff --git a/mysql-test/suite/perfschema/t/dml_rwlock_instances.test b/mysql-test/suite/perfschema/t/dml_rwlock_instances.test
index 251168237eb..33a42450681 100644
--- a/mysql-test/suite/perfschema/t/dml_rwlock_instances.test
+++ b/mysql-test/suite/perfschema/t/dml_rwlock_instances.test
@@ -18,7 +18,7 @@
--source include/not_embedded.inc
--source include/have_perfschema.inc
---replace_column 1 # 2 #
+--replace_column 1 # 2 # 3 # 4 #
select * from performance_schema.RWLOCK_INSTANCES limit 1;
select * from performance_schema.RWLOCK_INSTANCES
diff --git a/mysql-test/suite/perfschema/t/dml_setup_instruments.test b/mysql-test/suite/perfschema/t/dml_setup_instruments.test
index f737160cebd..b82cde15fb5 100644
--- a/mysql-test/suite/perfschema/t/dml_setup_instruments.test
+++ b/mysql-test/suite/perfschema/t/dml_setup_instruments.test
@@ -36,8 +36,11 @@ select * from performance_schema.SETUP_INSTRUMENTS
and name not in ('wait/synch/mutex/sql/DEBUG_SYNC::mutex')
order by name limit 10;
+# CRYPTO_dynlock_value::lock is dependent on the build (SSL)
+
select * from performance_schema.SETUP_INSTRUMENTS
where name like 'Wait/Synch/Rwlock/sql/%'
+ and name not in ('wait/synch/rwlock/sql/CRYPTO_dynlock_value::lock')
order by name limit 10;
# COND_handler_count is dependent on the build (Windows only)
diff --git a/mysql-test/suite/rpl/r/rpl_do_grant.result b/mysql-test/suite/rpl/r/rpl_do_grant.result
index 65c60acc651..9eecc1bab3f 100644
--- a/mysql-test/suite/rpl/r/rpl_do_grant.result
+++ b/mysql-test/suite/rpl/r/rpl_do_grant.result
@@ -89,6 +89,7 @@ show grants for rpl_do_grant2@localhost;
ERROR 42000: There is no such grant defined for user 'rpl_do_grant2' on host 'localhost'
show grants for rpl_do_grant2@localhost;
ERROR 42000: There is no such grant defined for user 'rpl_do_grant2' on host 'localhost'
+call mtr.add_suppression("Slave: Operation DROP USER failed for 'create_rout_db'@'localhost' Error_code: 1396");
DROP DATABASE IF EXISTS bug42217_db;
CREATE DATABASE bug42217_db;
GRANT CREATE ROUTINE ON bug42217_db.* TO 'create_rout_db'@'localhost'
@@ -166,9 +167,12 @@ DROP FUNCTION upgrade_del_func;
DROP FUNCTION upgrade_alter_func;
DROP DATABASE bug42217_db;
DROP USER 'create_rout_db'@'localhost';
-call mtr.add_suppression("Slave: Operation DROP USER failed for 'create_rout_db'@'localhost' Error_code: 1396");
-USE mtr;
-call mtr.add_suppression("Slave: Operation DROP USER failed for 'create_rout_db'@'localhost' Error_code: 1396");
+stop slave;
+drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
+reset master;
+reset slave;
+drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
+start slave;
######## BUG#49119 #######
### i) test case from the 'how to repeat section'
stop slave;
diff --git a/mysql-test/suite/rpl/r/rpl_ip_mix.result b/mysql-test/suite/rpl/r/rpl_ip_mix.result
index 11aa5a46cfa..ddd7a008a97 100644
--- a/mysql-test/suite/rpl/r/rpl_ip_mix.result
+++ b/mysql-test/suite/rpl/r/rpl_ip_mix.result
@@ -46,102 +46,6 @@ Master-Host: 0:0:0:0:0:0:0:1
disconnect slave;
disconnect master;
connection default;
-#################### IP: 127.0.0.1 ###########################
-connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 0:0:0:0:0:0:0:1
-change master to master_host='127.0.0.1';
-Master-Host: 127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 0:0:0:0:0:FFFF:127.0.0.1 ###########################
-connect (master,0:0:0:0:0:FFFF:127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 127.0.0.1
-change master to master_host='0:0:0:0:0:FFFF:127.0.0.1';
-Master-Host: 0:0:0:0:0:FFFF:127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 0000:0000:0000:0000:0000:FFFF:127.0.0.1 ###########################
-connect (master,0000:0000:0000:0000:0000:FFFF:127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 0:0:0:0:0:FFFF:127.0.0.1
-change master to master_host='0000:0000:0000:0000:0000:FFFF:127.0.0.1';
-Master-Host: 0000:0000:0000:0000:0000:FFFF:127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 0:0000:0000:0:0000:FFFF:127.0.0.1 ###########################
-connect (master,0:0000:0000:0:0000:FFFF:127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 0000:0000:0000:0000:0000:FFFF:127.0.0.1
-change master to master_host='0:0000:0000:0:0000:FFFF:127.0.0.1';
-Master-Host: 0:0000:0000:0:0000:FFFF:127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 0::0000:FFFF:127.0.0.1 ###########################
-connect (master,0::0000:FFFF:127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 0:0000:0000:0:0000:FFFF:127.0.0.1
-change master to master_host='0::0000:FFFF:127.0.0.1';
-Master-Host: 0::0000:FFFF:127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: ::FFFF:127.0.0.1 ###########################
-connect (master,::FFFF:127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 0::0000:FFFF:127.0.0.1
-change master to master_host='::FFFF:127.0.0.1';
-Master-Host: ::FFFF:127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
#################### IP: ::1 mix #######################
connect (master,::1,root,,test,MASTER_MYPORT);
connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
@@ -152,11 +56,11 @@ File Position Binlog_Do_DB Binlog_Ignore_DB
master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
connection slave;
reset slave;
-Master-Host: ::FFFF:127.0.0.1
+Master-Host: 0:0:0:0:0:0:0:1
change master to master_host='::1';
Master-Host: ::1
-change master to master_host='::FFFF:127.0.0.1';
-Master-Host: ::FFFF:127.0.0.1
+change master to master_host='127.0.0.1';
+Master-Host: 127.0.0.1
change master to master_host='0:0:0:0:0:0:0:1';
Master-Host: 0:0:0:0:0:0:0:1
disconnect slave;
diff --git a/mysql-test/suite/rpl/r/rpl_ip_mix2.result b/mysql-test/suite/rpl/r/rpl_ip_mix2.result
index e5cc3e1621d..e1011bf85ee 100644
--- a/mysql-test/suite/rpl/r/rpl_ip_mix2.result
+++ b/mysql-test/suite/rpl/r/rpl_ip_mix2.result
@@ -14,22 +14,6 @@ Master-Host: ::1
disconnect slave;
disconnect master;
connection default;
-#################### IP: ::1 ###########################
-connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,::1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: ::1
-change master to master_host='::1';
-Master-Host: ::1
-disconnect slave;
-disconnect master;
-connection default;
#################### IP: 0000:0000:0000:0000:0000:0000:0000:0001 ###########################
connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
connect (slave,0000:0000:0000:0000:0000:0000:0000:0001,root,,test,SLAVE_MYPORT);
@@ -62,102 +46,6 @@ Master-Host: 0:0:0:0:0:0:0:1
disconnect slave;
disconnect master;
connection default;
-#################### IP: 127.0.0.1 ###########################
-connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 0:0:0:0:0:0:0:1
-change master to master_host='127.0.0.1';
-Master-Host: 127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 0:0:0:0:0:FFFF:127.0.0.1 ###########################
-connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,0:0:0:0:0:FFFF:127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 127.0.0.1
-change master to master_host='0:0:0:0:0:FFFF:127.0.0.1';
-Master-Host: 0:0:0:0:0:FFFF:127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 0000:0000:0000:0000:0000:FFFF:127.0.0.1 ###########################
-connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,0000:0000:0000:0000:0000:FFFF:127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 0:0:0:0:0:FFFF:127.0.0.1
-change master to master_host='0000:0000:0000:0000:0000:FFFF:127.0.0.1';
-Master-Host: 0000:0000:0000:0000:0000:FFFF:127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 0:0000:0000:0:0000:FFFF:127.0.0.1 ###########################
-connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,0:0000:0000:0:0000:FFFF:127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 0000:0000:0000:0000:0000:FFFF:127.0.0.1
-change master to master_host='0:0000:0000:0:0000:FFFF:127.0.0.1';
-Master-Host: 0:0000:0000:0:0000:FFFF:127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 0::0000:FFFF:127.0.0.1 ###########################
-connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,0::0000:FFFF:127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 0:0000:0000:0:0000:FFFF:127.0.0.1
-change master to master_host='0::0000:FFFF:127.0.0.1';
-Master-Host: 0::0000:FFFF:127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: ::FFFF:127.0.0.1 ###########################
-connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,::FFFF:127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 0::0000:FFFF:127.0.0.1
-change master to master_host='::FFFF:127.0.0.1';
-Master-Host: ::FFFF:127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
#################### IP: ::1 mix #######################
connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
connect (slave,::1,root,,test,SLAVE_MYPORT);
@@ -168,11 +56,11 @@ File Position Binlog_Do_DB Binlog_Ignore_DB
master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
connection slave;
reset slave;
-Master-Host: ::FFFF:127.0.0.1
+Master-Host: 0:0:0:0:0:0:0:1
change master to master_host='::1';
Master-Host: ::1
-change master to master_host='::FFFF:127.0.0.1';
-Master-Host: ::FFFF:127.0.0.1
+change master to master_host='127.0.0.1';
+Master-Host: 127.0.0.1
change master to master_host='0:0:0:0:0:0:0:1';
Master-Host: 0:0:0:0:0:0:0:1
disconnect slave;
diff --git a/mysql-test/suite/rpl/r/rpl_ip_mix2_win.result b/mysql-test/suite/rpl/r/rpl_ip_mix2_win.result
deleted file mode 100644
index c7cec70ed6c..00000000000
--- a/mysql-test/suite/rpl/r/rpl_ip_mix2_win.result
+++ /dev/null
@@ -1,84 +0,0 @@
-#################### IP: ::1 ###########################
-connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,::1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: No such row
-change master to master_host='::1';
-Master-Host: ::1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 0000:0000:0000:0000:0000:0000:0000:0001 ###########################
-connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,0000:0000:0000:0000:0000:0000:0000:0001,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: ::1
-change master to master_host='0000:0000:0000:0000:0000:0000:0000:0001';
-Master-Host: 0000:0000:0000:0000:0000:0000:0000:0001
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 0:0:0:0:0:0:0:1 ###########################
-connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,0:0:0:0:0:0:0:1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 0000:0000:0000:0000:0000:0000:0000:0001
-change master to master_host='0:0:0:0:0:0:0:1';
-Master-Host: 0:0:0:0:0:0:0:1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 127.0.0.1 ###########################
-connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 0:0:0:0:0:0:0:1
-change master to master_host='127.0.0.1';
-Master-Host: 127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: ::1 mix #######################
-connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,::1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 127.0.0.1
-change master to master_host='::1';
-Master-Host: ::1
-change master to master_host='127.0.0.1';
-Master-Host: 127.0.0.1
-change master to master_host='0:0:0:0:0:0:0:1';
-Master-Host: 0:0:0:0:0:0:0:1
-disconnect slave;
-disconnect master;
-connection default;
diff --git a/mysql-test/suite/rpl/r/rpl_ip_mix_win.result b/mysql-test/suite/rpl/r/rpl_ip_mix_win.result
deleted file mode 100644
index a1d11e109e5..00000000000
--- a/mysql-test/suite/rpl/r/rpl_ip_mix_win.result
+++ /dev/null
@@ -1,84 +0,0 @@
-#################### IP: ::1 ###########################
-connect (master,::1,root,,test,MASTER_MYPORT);
-connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: No such row
-change master to master_host='::1';
-Master-Host: ::1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 0000:0000:0000:0000:0000:0000:0000:0001 ###########################
-connect (master,0000:0000:0000:0000:0000:0000:0000:0001,root,,test,MASTER_MYPORT);
-connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: ::1
-change master to master_host='0000:0000:0000:0000:0000:0000:0000:0001';
-Master-Host: 0000:0000:0000:0000:0000:0000:0000:0001
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 0:0:0:0:0:0:0:1 ###########################
-connect (master,0:0:0:0:0:0:0:1,root,,test,MASTER_MYPORT);
-connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 0000:0000:0000:0000:0000:0000:0000:0001
-change master to master_host='0:0:0:0:0:0:0:1';
-Master-Host: 0:0:0:0:0:0:0:1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 127.0.0.1 ###########################
-connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 0:0:0:0:0:0:0:1
-change master to master_host='127.0.0.1';
-Master-Host: 127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: ::1 mix #######################
-connect (master,::1,root,,test,MASTER_MYPORT);
-connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 127.0.0.1
-change master to master_host='::1';
-Master-Host: ::1
-change master to master_host='127.0.0.1';
-Master-Host: 127.0.0.1
-change master to master_host='0:0:0:0:0:0:0:1';
-Master-Host: 0:0:0:0:0:0:0:1
-disconnect slave;
-disconnect master;
-connection default;
diff --git a/mysql-test/suite/rpl/r/rpl_ipv4_as_ipv6.result b/mysql-test/suite/rpl/r/rpl_ipv4_as_ipv6.result
index 4168cff1e97..0393cfa483c 100644
--- a/mysql-test/suite/rpl/r/rpl_ipv4_as_ipv6.result
+++ b/mysql-test/suite/rpl/r/rpl_ipv4_as_ipv6.result
@@ -88,7 +88,7 @@ Master-Host: ::FFFF:127.0.0.1
disconnect slave;
disconnect master;
connection default;
-#################### IP: ::1 ###########################
+#################### IP: ::FFFF:127.0.0.1 ###########################
connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
connection master;
@@ -99,12 +99,12 @@ master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
connection slave;
reset slave;
Master-Host: ::FFFF:127.0.0.1
-change master to master_host='::1';
-Master-Host: ::1
change master to master_host='::FFFF:127.0.0.1';
Master-Host: ::FFFF:127.0.0.1
-change master to master_host='0:0:0:0:0:0:0:1';
-Master-Host: 0:0:0:0:0:0:0:1
+change master to master_host='127.0.0.1';
+Master-Host: 127.0.0.1
+change master to master_host='0:0000:0000:0:0000:FFFF:127.0.0.1';
+Master-Host: 0:0000:0000:0:0000:FFFF:127.0.0.1
disconnect slave;
disconnect master;
connection default;
diff --git a/mysql-test/suite/rpl/r/rpl_ipv4_as_ipv6_win.result b/mysql-test/suite/rpl/r/rpl_ipv4_as_ipv6_win.result
deleted file mode 100644
index a1e48ea6610..00000000000
--- a/mysql-test/suite/rpl/r/rpl_ipv4_as_ipv6_win.result
+++ /dev/null
@@ -1,35 +0,0 @@
-#################### IP: 127.0.0.1 ###########################
-connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-change master to master_host='127.0.0.1';
-Master-Host: 127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: ::1 ###########################
-connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 127.0.0.1
-change master to master_host='::1';
-Master-Host: ::1
-change master to master_host='127.0.0.1';
-Master-Host: 127.0.0.1
-change master to master_host='0:0:0:0:0:0:0:1';
-Master-Host: 0:0:0:0:0:0:0:1
-disconnect slave;
-disconnect master;
-connection default;
diff --git a/mysql-test/suite/rpl/r/rpl_ipv6.result b/mysql-test/suite/rpl/r/rpl_ipv6.result
index f46e60548a6..6ae946d197b 100644
--- a/mysql-test/suite/rpl/r/rpl_ipv6.result
+++ b/mysql-test/suite/rpl/r/rpl_ipv6.result
@@ -43,96 +43,6 @@ Master-Host: 0:0:0:0:0:0:0:1
disconnect slave;
disconnect master;
connection default;
-#################### IP: 127.0.0.1 ###########################
-connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-change master to master_host='127.0.0.1';
-Master-Host: 127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 0:0:0:0:0:FFFF:127.0.0.1 ###########################
-connect (master,0:0:0:0:0:FFFF:127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,0:0:0:0:0:FFFF:127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-change master to master_host='0:0:0:0:0:FFFF:127.0.0.1';
-Master-Host: 0:0:0:0:0:FFFF:127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 0000:0000:0000:0000:0000:FFFF:127.0.0.1 ###########################
-connect (master,0000:0000:0000:0000:0000:FFFF:127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,0000:0000:0000:0000:0000:FFFF:127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-change master to master_host='0000:0000:0000:0000:0000:FFFF:127.0.0.1';
-Master-Host: 0000:0000:0000:0000:0000:FFFF:127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 0:0000:0000:0:0000:FFFF:127.0.0.1 ###########################
-connect (master,0:0000:0000:0:0000:FFFF:127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,0:0000:0000:0:0000:FFFF:127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-change master to master_host='0:0000:0000:0:0000:FFFF:127.0.0.1';
-Master-Host: 0:0000:0000:0:0000:FFFF:127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 0::0000:FFFF:127.0.0.1 ###########################
-connect (master,0::0000:FFFF:127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,0::0000:FFFF:127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-change master to master_host='0::0000:FFFF:127.0.0.1';
-Master-Host: 0::0000:FFFF:127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: ::FFFF:127.0.0.1 ###########################
-connect (master,::FFFF:127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,::FFFF:127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-change master to master_host='::FFFF:127.0.0.1';
-Master-Host: ::FFFF:127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
#################### IP: ::1 mix #######################
connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
@@ -143,11 +53,11 @@ File Position Binlog_Do_DB Binlog_Ignore_DB
master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
connection slave;
reset slave;
-Master-Host: ::FFFF:127.0.0.1
+Master-Host: 0:0:0:0:0:0:0:1
change master to master_host='::1';
Master-Host: ::1
-change master to master_host='::FFFF:127.0.0.1';
-Master-Host: ::FFFF:127.0.0.1
+change master to master_host='127.0.0.1';
+Master-Host: 127.0.0.1
change master to master_host='0:0:0:0:0:0:0:1';
Master-Host: 0:0:0:0:0:0:0:1
disconnect slave;
diff --git a/mysql-test/suite/rpl/r/rpl_ipv6_win.result b/mysql-test/suite/rpl/r/rpl_ipv6_win.result
deleted file mode 100644
index 79dc8422161..00000000000
--- a/mysql-test/suite/rpl/r/rpl_ipv6_win.result
+++ /dev/null
@@ -1,80 +0,0 @@
-#################### IP: ::1 ###########################
-connect (master,::1,root,,test,MASTER_MYPORT);
-connect (slave,::1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-change master to master_host='::1';
-Master-Host: ::1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 0000:0000:0000:0000:0000:0000:0000:0001 ###########################
-connect (master,0000:0000:0000:0000:0000:0000:0000:0001,root,,test,MASTER_MYPORT);
-connect (slave,0000:0000:0000:0000:0000:0000:0000:0001,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-change master to master_host='0000:0000:0000:0000:0000:0000:0000:0001';
-Master-Host: 0000:0000:0000:0000:0000:0000:0000:0001
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 0:0:0:0:0:0:0:1 ###########################
-connect (master,0:0:0:0:0:0:0:1,root,,test,MASTER_MYPORT);
-connect (slave,0:0:0:0:0:0:0:1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-change master to master_host='0:0:0:0:0:0:0:1';
-Master-Host: 0:0:0:0:0:0:0:1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 127.0.0.1 ###########################
-connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-change master to master_host='127.0.0.1';
-Master-Host: 127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: ::1 mix #######################
-connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 127.0.0.1
-change master to master_host='::1';
-Master-Host: ::1
-change master to master_host='127.0.0.1';
-Master-Host: 127.0.0.1
-change master to master_host='0:0:0:0:0:0:0:1';
-Master-Host: 0:0:0:0:0:0:0:1
-disconnect slave;
-disconnect master;
-connection default;
diff --git a/mysql-test/suite/rpl/r/rpl_semi_sync.result b/mysql-test/suite/rpl/r/rpl_semi_sync.result
index 1e220b28d78..74eb14d33e0 100644
--- a/mysql-test/suite/rpl/r/rpl_semi_sync.result
+++ b/mysql-test/suite/rpl/r/rpl_semi_sync.result
@@ -120,8 +120,27 @@ min(a)
select max(a) from t1;
max(a)
300
+
+# BUG#50157
+# semi-sync replication crashes when replicating a transaction which
+# include 'CREATE TEMPORARY TABLE `MyISAM_t` SELECT * FROM `Innodb_t` ;
+[ on master ]
+SET SESSION AUTOCOMMIT= 0;
+CREATE TABLE t2(c1 INT) ENGINE=innodb;
+BEGIN;
+
+# Even though it is in a transaction, this statement is binlogged into binlog
+# file immediately.
+CREATE TEMPORARY TABLE t3 SELECT c1 FROM t2 where 1=1;
+
+# These statements will not be binlogged until the transaction is committed
+INSERT INTO t2 VALUES(11);
+INSERT INTO t2 VALUES(22);
+COMMIT;
+DROP TABLE t2, t3;
+SET SESSION AUTOCOMMIT= 1;
#
-# Test semi-sync master will switch OFF after one transacton
+# Test semi-sync master will switch OFF after one transaction
# timeout waiting for slave reply.
#
include/stop_slave.inc
@@ -135,7 +154,7 @@ Variable_name Value
Rpl_semi_sync_master_no_tx 0
show status like 'Rpl_semi_sync_master_yes_tx';
Variable_name Value
-Rpl_semi_sync_master_yes_tx 301
+Rpl_semi_sync_master_yes_tx 304
show status like 'Rpl_semi_sync_master_clients';
Variable_name Value
Rpl_semi_sync_master_clients 1
@@ -150,7 +169,7 @@ Variable_name Value
Rpl_semi_sync_master_no_tx 1
show status like 'Rpl_semi_sync_master_yes_tx';
Variable_name Value
-Rpl_semi_sync_master_yes_tx 301
+Rpl_semi_sync_master_yes_tx 304
insert into t1 values (100);
[ master status should be OFF ]
show status like 'Rpl_semi_sync_master_status';
@@ -161,7 +180,7 @@ Variable_name Value
Rpl_semi_sync_master_no_tx 302
show status like 'Rpl_semi_sync_master_yes_tx';
Variable_name Value
-Rpl_semi_sync_master_yes_tx 301
+Rpl_semi_sync_master_yes_tx 304
#
# Test semi-sync status on master will be ON again when slave catches up
#
@@ -194,7 +213,7 @@ Variable_name Value
Rpl_semi_sync_master_no_tx 302
show status like 'Rpl_semi_sync_master_yes_tx';
Variable_name Value
-Rpl_semi_sync_master_yes_tx 301
+Rpl_semi_sync_master_yes_tx 304
show status like 'Rpl_semi_sync_master_clients';
Variable_name Value
Rpl_semi_sync_master_clients 1
@@ -213,7 +232,7 @@ Variable_name Value
Rpl_semi_sync_master_no_tx 302
SHOW STATUS LIKE 'Rpl_semi_sync_master_yes_tx';
Variable_name Value
-Rpl_semi_sync_master_yes_tx 302
+Rpl_semi_sync_master_yes_tx 305
FLUSH NO_WRITE_TO_BINLOG STATUS;
[ Semi-sync master status variables after FLUSH STATUS ]
SHOW STATUS LIKE 'Rpl_semi_sync_master_no_tx';
diff --git a/mysql-test/suite/rpl/t/rpl_do_grant.test b/mysql-test/suite/rpl/t/rpl_do_grant.test
index f43ac3cf340..e3d7784429e 100644
--- a/mysql-test/suite/rpl/t/rpl_do_grant.test
+++ b/mysql-test/suite/rpl/t/rpl_do_grant.test
@@ -112,6 +112,9 @@ show grants for rpl_do_grant2@localhost;
# BUG42217 mysql.procs_priv does not get replicated
#####################################################
connection master;
+call mtr.add_suppression("Slave: Operation DROP USER failed for 'create_rout_db'@'localhost' Error_code: 1396");
+sync_slave_with_master;
+connection master;
--disable_warnings
DROP DATABASE IF EXISTS bug42217_db;
@@ -201,12 +204,19 @@ USE bug42217_db;
DROP FUNCTION upgrade_del_func;
DROP FUNCTION upgrade_alter_func;
DROP DATABASE bug42217_db;
+-- sync_slave_with_master
+-- connection master
+
+# user was already dropped in the slave before
+# so no need to wait for the slave to replicate
+# this statement (if it did and we later synced
+# the slave it would end up in an error anyway)
DROP USER 'create_rout_db'@'localhost';
-call mtr.add_suppression("Slave: Operation DROP USER failed for 'create_rout_db'@'localhost' Error_code: 1396");
-connection slave;
-USE mtr;
-call mtr.add_suppression("Slave: Operation DROP USER failed for 'create_rout_db'@'localhost' Error_code: 1396");
+# finish entire clean up (remove binlogs)
+# so that we leave a pristine environment for the
+# following tests
+-- source include/master-slave-reset.inc
# BUG#49119: Master crashes when executing 'REVOKE ... ON
# {PROCEDURE|FUNCTION} FROM ...'
diff --git a/mysql-test/suite/rpl/t/rpl_heartbeat_basic.test b/mysql-test/suite/rpl/t/rpl_heartbeat_basic.test
index fca8646dd05..838938388db 100644
--- a/mysql-test/suite/rpl/t/rpl_heartbeat_basic.test
+++ b/mysql-test/suite/rpl/t/rpl_heartbeat_basic.test
@@ -382,7 +382,7 @@ let $slave_param_comparison= =;
let $rcvd_heartbeats_before= query_get_value(SHOW STATUS LIKE 'slave_received_heartbeats', Value, 1);
# Flush logs every 0.1 second during 5 sec
--disable_query_log
-let $i=50;
+let $i=100;
while ($i) {
FLUSH LOGS;
dec $i;
diff --git a/mysql-test/suite/rpl/t/rpl_ip_mix.test b/mysql-test/suite/rpl/t/rpl_ip_mix.test
index 68aa2fc87a9..0852b3f4ff7 100644
--- a/mysql-test/suite/rpl/t/rpl_ip_mix.test
+++ b/mysql-test/suite/rpl/t/rpl_ip_mix.test
@@ -7,8 +7,6 @@
# (see corresponding cnf file)
#
--source include/check_ipv6.inc
-# Can't be tested with windows due to mixed format like 0::0000:FFFF:127.0.0.1
---source include/not_windows.inc
--source include/have_log_bin.inc
let $IPv6= ::1;
@@ -27,38 +25,6 @@ let $IPv6= 0:0:0:0:0:0:0:1;
--echo #################### IP: $IPv6 ###########################
--source include/rpl_ip_mix.inc
-let $IPv6= 127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix.inc
-
-let $IPv6= 0:0:0:0:0:FFFF:127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix.inc
-
-let $IPv6= 0000:0000:0000:0000:0000:FFFF:127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix.inc
-
-let $IPv6= 0:0000:0000:0:0000:FFFF:127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix.inc
-
-let $IPv6= 0::0000:FFFF:127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix.inc
-
-#let $IPv6= 0:0:0:0:0:FFFF:127.0.0.1/96;
-#--echo #################### IP: $IPv6 ###########################
-#--source include/rpl_ip_mix.inc
-
-let $IPv6= ::FFFF:127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix.inc
-
-#let $IPv6= ::FFFF:127.0.0.1/96;
-#--echo #################### IP: $IPv6 ###########################
-#--source include/rpl_ip_mix.inc
-
let $IPv6= ::1;
--echo #################### IP: $IPv6 mix #######################
--echo connect (master,$IPv6,root,,test,MASTER_MYPORT);
@@ -78,7 +44,7 @@ let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
eval change master to master_host='$IPv6';
let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
--echo Master-Host: $master_host
-eval change master to master_host='::FFFF:127.0.0.1';
+eval change master to master_host='127.0.0.1';
let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
--echo Master-Host: $master_host
eval change master to master_host='0:0:0:0:0:0:0:1';
diff --git a/mysql-test/suite/rpl/t/rpl_ip_mix2.test b/mysql-test/suite/rpl/t/rpl_ip_mix2.test
index d6435d710c1..11c648dece5 100644
--- a/mysql-test/suite/rpl/t/rpl_ip_mix2.test
+++ b/mysql-test/suite/rpl/t/rpl_ip_mix2.test
@@ -19,17 +19,11 @@ disconnect checkcon123456789;
--enable_abort_on_error
--enable_query_log
# end check
-
-# Can't be tested with windows due to mixed format like 0::0000:FFFF:127.0.0.1
---source include/not_windows.inc
--source include/have_log_bin.inc
let $IPv6= ::1;
--echo #################### IP: $IPv6 ###########################
--source include/rpl_ip_mix2.inc
-let $IPv6= ::1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix2.inc
let $IPv6= ::1/128;
#--echo #################### IP: $IPv6 ###########################
@@ -43,38 +37,6 @@ let $IPv6= 0:0:0:0:0:0:0:1;
--echo #################### IP: $IPv6 ###########################
--source include/rpl_ip_mix2.inc
-let $IPv6= 127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix2.inc
-
-let $IPv6= 0:0:0:0:0:FFFF:127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix2.inc
-
-let $IPv6= 0000:0000:0000:0000:0000:FFFF:127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix2.inc
-
-let $IPv6= 0:0000:0000:0:0000:FFFF:127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix2.inc
-
-let $IPv6= 0::0000:FFFF:127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix2.inc
-
-#let $IPv6= 0:0:0:0:0:FFFF:127.0.0.1/96;
-#--echo #################### IP: $IPv6 ###########################
-#--source include/rpl_ip_mix2.inc
-
-let $IPv6= ::FFFF:127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix2.inc
-
-#let $IPv6= ::FFFF:127.0.0.1/96;
-#--echo #################### IP: $IPv6 ###########################
-#--source include/rpl_ip_mix2.inc
-
let $IPv6= ::1;
--echo #################### IP: $IPv6 mix #######################
--echo connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
@@ -94,7 +56,7 @@ let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
eval change master to master_host='$IPv6';
let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
--echo Master-Host: $master_host
-eval change master to master_host='::FFFF:127.0.0.1';
+eval change master to master_host='127.0.0.1';
let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
--echo Master-Host: $master_host
eval change master to master_host='0:0:0:0:0:0:0:1';
diff --git a/mysql-test/suite/rpl/t/rpl_ip_mix2_win.cnf b/mysql-test/suite/rpl/t/rpl_ip_mix2_win.cnf
deleted file mode 100644
index 306df437bcc..00000000000
--- a/mysql-test/suite/rpl/t/rpl_ip_mix2_win.cnf
+++ /dev/null
@@ -1,56 +0,0 @@
-# Use default setting for mysqld processes
-!include include/default_mysqld.cnf
-!include include/default_client.cnf
-
-[mysqld.1]
-
-# Run the master.sh script before starting this process
-#!run-master-sh
-
-log-bin= master-bin
-
-loose-innodb
-
-skip-name-resolve
-bind-address= 0.0.0.0
-
-
-[mysqld.2]
-# Run the slave.sh script before starting this process
-#!run-slave-sh
-
-# Append <testname>-slave.opt file to the list of argument used when
-# starting the mysqld
-#!use-slave-opt
-
-log-bin= slave-bin
-relay-log= slave-relay-bin
-
-init-rpl-role= slave
-log-slave-updates
-master-retry-count= 10
-
-# Values reported by slave when it connect to master
-# and shows up in SHOW SLAVE STATUS;
-report-host= localhost
-report-port= @mysqld.2.port
-report-user= root
-
-skip-slave-start
-skip-name-resolve
-bind-address= ::
-
-# Directory where slaves find the dumps generated by "load data"
-# on the server. The path need to have constant length otherwise
-# test results will vary, thus a relative path is used.
-slave-load-tmpdir= ../../tmp
-
-loose-innodb
-
-[ENV]
-MASTER_MYPORT= @mysqld.1.port
-MASTER_MYSOCK= @mysqld.1.socket
-
-SLAVE_MYPORT= @mysqld.2.port
-SLAVE_MYSOCK= @mysqld.2.socket
-
diff --git a/mysql-test/suite/rpl/t/rpl_ip_mix2_win.test b/mysql-test/suite/rpl/t/rpl_ip_mix2_win.test
deleted file mode 100644
index f9a2022ddd4..00000000000
--- a/mysql-test/suite/rpl/t/rpl_ip_mix2_win.test
+++ /dev/null
@@ -1,78 +0,0 @@
-# Copyright (C) 2009 SUN Microsystems
-# All rights reserved. Use is subject to license terms.
-# Author: Horst Hunger
-# Nov. 19, 2009
-# Test of ipv6 format, especially "change master host=..."
-# Options: --skip-name-resolve, master: --bind-address=0.0.0.0, slave: --bind-address=::
-# (see corresponding cnf file)
-#
-# Check if ipv6 is available. If not, server is crashing (see BUG#48915).
---disable_query_log
---disable_abort_on_error
-connect (checkcon123456789,::1,root,,test,$SLAVE_MYPORT);
-if($mysql_errno)
-{
-skip wrong IP for slave;
-}
-connection default;
-disconnect checkcon123456789;
---enable_abort_on_error
---enable_query_log
-# end check
-
-# For windows due to missing the mixed format like 0::0000:FFFF:127.0.0.1
---source include/windows.inc
---source include/have_log_bin.inc
-
-let $IPv6= ::1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix2.inc
-
-let $IPv6= ::1/128;
-#--echo #################### IP: $IPv6 ###########################
-#--source include/rpl_ip_mix2.inc
-
-let $IPv6= 0000:0000:0000:0000:0000:0000:0000:0001;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix2.inc
-
-let $IPv6= 0:0:0:0:0:0:0:1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix2.inc
-
-let $IPv6= 127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix2.inc
-
-let $IPv6= ::1;
---echo #################### IP: $IPv6 mix #######################
---echo connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (master,127.0.0.1,root,,test,$MASTER_MYPORT);
---echo connect (slave,$IPv6,root,,test,SLAVE_MYPORT);
-connect (slave,$IPv6,root,,test,$SLAVE_MYPORT);
---echo connection master;
-connection master;
-reset master;
-source include/show_master_status.inc;
-save_master_pos;
---echo connection slave;
-connection slave;
-reset slave;
-let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
---echo Master-Host: $master_host
-eval change master to master_host='$IPv6';
-let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
---echo Master-Host: $master_host
-eval change master to master_host='127.0.0.1';
-let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
---echo Master-Host: $master_host
-eval change master to master_host='0:0:0:0:0:0:0:1';
-let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
---echo Master-Host: $master_host
---echo disconnect slave;
-disconnect slave;
---echo disconnect master;
-disconnect master;
---echo connection default;
-connection default;
---exit
diff --git a/mysql-test/suite/rpl/t/rpl_ip_mix_win.cnf b/mysql-test/suite/rpl/t/rpl_ip_mix_win.cnf
deleted file mode 100644
index 00e2637d822..00000000000
--- a/mysql-test/suite/rpl/t/rpl_ip_mix_win.cnf
+++ /dev/null
@@ -1,56 +0,0 @@
-# Use default setting for mysqld processes
-!include include/default_mysqld.cnf
-!include include/default_client.cnf
-
-[mysqld.1]
-
-# Run the master.sh script before starting this process
-#!run-master-sh
-
-log-bin= master-bin
-
-loose-innodb
-
-skip-name-resolve
-bind-address= ::
-
-
-[mysqld.2]
-# Run the slave.sh script before starting this process
-#!run-slave-sh
-
-# Append <testname>-slave.opt file to the list of argument used when
-# starting the mysqld
-#!use-slave-opt
-
-log-bin= slave-bin
-relay-log= slave-relay-bin
-
-init-rpl-role= slave
-log-slave-updates
-master-retry-count= 10
-
-# Values reported by slave when it connect to master
-# and shows up in SHOW SLAVE STATUS;
-report-host= localhost
-report-port= @mysqld.2.port
-report-user= root
-
-skip-slave-start
-skip-name-resolve
-bind-address= 0.0.0.0
-
-# Directory where slaves find the dumps generated by "load data"
-# on the server. The path need to have constant length otherwise
-# test results will vary, thus a relative path is used.
-slave-load-tmpdir= ../../tmp
-
-loose-innodb
-
-[ENV]
-MASTER_MYPORT= @mysqld.1.port
-MASTER_MYSOCK= @mysqld.1.socket
-
-SLAVE_MYPORT= @mysqld.2.port
-SLAVE_MYSOCK= @mysqld.2.socket
-
diff --git a/mysql-test/suite/rpl/t/rpl_ip_mix_win.test b/mysql-test/suite/rpl/t/rpl_ip_mix_win.test
deleted file mode 100644
index 7d78f71bd1b..00000000000
--- a/mysql-test/suite/rpl/t/rpl_ip_mix_win.test
+++ /dev/null
@@ -1,65 +0,0 @@
-# Copyright (C) 2009 SUN Microsystems
-# All rights reserved. Use is subject to license terms.
-# Author: Horst Hunger
-# Nov. 19, 2009
-# Test of ipv6 format, especially "change master host=..."
-# Options: --skip-name-resolve, master: --bind-address=::, slave: --bind-address=0.0.0.0
-# (see corresponding cnf file)
-#
---source include/check_ipv6.inc
-# For windows due to missing the mixed format like 0::0000:FFFF:127.0.0.1
---source include/windows.inc
---source include/have_log_bin.inc
-
-let $IPv6= ::1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix.inc
-
-let $IPv6= ::1/128;
-#--echo #################### IP: $IPv6 ###########################
-#--source include/rpl_ip_mix.inc
-
-let $IPv6= 0000:0000:0000:0000:0000:0000:0000:0001;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix.inc
-
-let $IPv6= 0:0:0:0:0:0:0:1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix.inc
-
-let $IPv6= 127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix.inc
-
-let $IPv6= ::1;
---echo #################### IP: $IPv6 mix #######################
---echo connect (master,$IPv6,root,,test,MASTER_MYPORT);
-connect (master,$IPv6,root,,test,$MASTER_MYPORT);
---echo connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connect (slave,127.0.0.1,root,,test,$SLAVE_MYPORT);
---echo connection master;
-connection master;
-reset master;
-source include/show_master_status.inc;
-save_master_pos;
---echo connection slave;
-connection slave;
-reset slave;
-let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
---echo Master-Host: $master_host
-eval change master to master_host='$IPv6';
-let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
---echo Master-Host: $master_host
-eval change master to master_host='127.0.0.1';
-let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
---echo Master-Host: $master_host
-eval change master to master_host='0:0:0:0:0:0:0:1';
-let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
---echo Master-Host: $master_host
---echo disconnect slave;
-disconnect slave;
---echo disconnect master;
-disconnect master;
---echo connection default;
-connection default;
---exit
diff --git a/mysql-test/suite/rpl/t/rpl_ipv4_as_ipv6.test b/mysql-test/suite/rpl/t/rpl_ipv4_as_ipv6.test
index f4e5ad6af7b..ecd5a754fdc 100644
--- a/mysql-test/suite/rpl/t/rpl_ipv4_as_ipv6.test
+++ b/mysql-test/suite/rpl/t/rpl_ipv4_as_ipv6.test
@@ -6,22 +6,7 @@
# Options: --skip-name-resolve, --bind-address=0.0.0.0 (see corresponding cnf file)
# for master and slave
#
-# Check if ipv4 is available.
---disable_query_log
---disable_abort_on_error
-connect (checkcon123456789,127.0.0.1,root,,test);
-if($mysql_errno)
-{
-skip wrong IP;
-}
-connection default;
-disconnect checkcon123456789;
---enable_abort_on_error
---enable_query_log
-# end check
-
-# Can't be tested with windows due to mixed format like 0::0000:FFFF:127.0.0.1
---source include/not_windows.inc
+--source include/have_ipv4_mapped.inc
--source include/have_log_bin.inc
let $IPv6= 127.0.0.1;
@@ -56,7 +41,7 @@ let $IPv6= ::FFFF:127.0.0.1;
#--echo #################### IP: $IPv6 ###########################
#--source include/rpl_ipv6.inc
-let $IPv6= ::1;
+let $IPv6= ::FFFF:127.0.0.1;
--echo #################### IP: $IPv6 ###########################
--echo connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
connect (master,127.0.0.1,root,,test,$MASTER_MYPORT);
@@ -75,10 +60,10 @@ let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
eval change master to master_host='$IPv6';
let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
--echo Master-Host: $master_host
-eval change master to master_host='::FFFF:127.0.0.1';
+eval change master to master_host='127.0.0.1';
let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
--echo Master-Host: $master_host
-eval change master to master_host='0:0:0:0:0:0:0:1';
+eval change master to master_host='0:0000:0000:0:0000:FFFF:127.0.0.1';
let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
--echo Master-Host: $master_host
--echo disconnect slave;
diff --git a/mysql-test/suite/rpl/t/rpl_ipv4_as_ipv6_win.cnf b/mysql-test/suite/rpl/t/rpl_ipv4_as_ipv6_win.cnf
deleted file mode 100644
index b646a4088ff..00000000000
--- a/mysql-test/suite/rpl/t/rpl_ipv4_as_ipv6_win.cnf
+++ /dev/null
@@ -1,56 +0,0 @@
-# Use default setting for mysqld processes
-!include include/default_mysqld.cnf
-!include include/default_client.cnf
-
-[mysqld.1]
-
-# Run the master.sh script before starting this process
-#!run-master-sh
-
-log-bin= master-bin
-
-loose-innodb
-
-skip-name-resolve
-bind-address= 0.0.0.0
-
-
-[mysqld.2]
-# Run the slave.sh script before starting this process
-#!run-slave-sh
-
-# Append <testname>-slave.opt file to the list of argument used when
-# starting the mysqld
-#!use-slave-opt
-
-log-bin= slave-bin
-relay-log= slave-relay-bin
-
-init-rpl-role= slave
-log-slave-updates
-master-retry-count= 10
-
-# Values reported by slave when it connect to master
-# and shows up in SHOW SLAVE STATUS;
-report-host= localhost
-report-port= @mysqld.2.port
-report-user= root
-
-skip-slave-start
-skip-name-resolve
-bind-address= 0.0.0.0
-
-# Directory where slaves find the dumps generated by "load data"
-# on the server. The path need to have constant length otherwise
-# test results will vary, thus a relative path is used.
-slave-load-tmpdir= ../../tmp
-
-loose-innodb
-
-[ENV]
-MASTER_MYPORT= @mysqld.1.port
-MASTER_MYSOCK= @mysqld.1.socket
-
-SLAVE_MYPORT= @mysqld.2.port
-SLAVE_MYSOCK= @mysqld.2.socket
-
diff --git a/mysql-test/suite/rpl/t/rpl_ipv4_as_ipv6_win.test b/mysql-test/suite/rpl/t/rpl_ipv4_as_ipv6_win.test
deleted file mode 100644
index db786536c2d..00000000000
--- a/mysql-test/suite/rpl/t/rpl_ipv4_as_ipv6_win.test
+++ /dev/null
@@ -1,63 +0,0 @@
-# Copyright (C) 2009 SUN Microsystems
-# All rights reserved. Use is subject to license terms.
-# Author: Horst Hunger
-# Nov. 19, 2009
-# Test of ipv4 (127.0.0.1) in ipv6 format, especially "change master host=..."
-# Options: --skip-name-resolve, --bind-address=0.0.0.0 (see corresponding cnf file)
-# for master and slave
-#
-# Check if ipv4 is available.
---disable_query_log
---disable_abort_on_error
-connect (checkcon123456789,127.0.0.1,root,,test);
-if($mysql_errno)
-{
-skip wrong IP;
-}
-connection default;
-disconnect checkcon123456789;
---enable_abort_on_error
---enable_query_log
-# end check
-
-# For windows due to missing the mixed format like 0::0000:FFFF:127.0.0.1
---source include/windows.inc
---source include/have_log_bin.inc
-
-let $IPv6= 127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ipv6.inc
-
-let $IPv6= ::1;
---echo #################### IP: $IPv6 ###########################
---echo connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (master,127.0.0.1,root,,test,$MASTER_MYPORT);
---echo connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connect (slave,127.0.0.1,root,,test,$SLAVE_MYPORT);
---echo connection master;
-connection master;
-reset master;
-source include/show_master_status.inc;
-save_master_pos;
---echo connection slave;
-connection slave;
-reset slave;
-let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
---echo Master-Host: $master_host
-eval change master to master_host='$IPv6';
-let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
---echo Master-Host: $master_host
-eval change master to master_host='127.0.0.1';
-let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
---echo Master-Host: $master_host
-eval change master to master_host='0:0:0:0:0:0:0:1';
-let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
---echo Master-Host: $master_host
---echo disconnect slave;
-disconnect slave;
---echo disconnect master;
-disconnect master;
---echo connection default;
-connection default;
---exit
-
diff --git a/mysql-test/suite/rpl/t/rpl_ipv6.test b/mysql-test/suite/rpl/t/rpl_ipv6.test
index 71fedcb4208..3eceedfd7a4 100644
--- a/mysql-test/suite/rpl/t/rpl_ipv6.test
+++ b/mysql-test/suite/rpl/t/rpl_ipv6.test
@@ -27,38 +27,6 @@ let $IPv6= 0:0:0:0:0:0:0:1;
--echo #################### IP: $IPv6 ###########################
--source include/rpl_ipv6.inc
-let $IPv6= 127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ipv6.inc
-
-let $IPv6= 0:0:0:0:0:FFFF:127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ipv6.inc
-
-let $IPv6= 0000:0000:0000:0000:0000:FFFF:127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ipv6.inc
-
-let $IPv6= 0:0000:0000:0:0000:FFFF:127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ipv6.inc
-
-let $IPv6= 0::0000:FFFF:127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ipv6.inc
-
-#let $IPv6= 0:0:0:0:0:FFFF:127.0.0.1/96;
-#--echo #################### IP: $IPv6 ###########################
-#--source include/rpl_ipv6.inc
-
-let $IPv6= ::FFFF:127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ipv6.inc
-
-#let $IPv6= ::FFFF:127.0.0.1/96;
-#--echo #################### IP: $IPv6 ###########################
-#--source include/rpl_ipv6.inc
-
let $IPv6= ::1;
--echo #################### IP: $IPv6 mix #######################
--echo connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
@@ -78,7 +46,7 @@ let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
eval change master to master_host='$IPv6';
let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
--echo Master-Host: $master_host
-eval change master to master_host='::FFFF:127.0.0.1';
+eval change master to master_host='127.0.0.1';
let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
--echo Master-Host: $master_host
eval change master to master_host='0:0:0:0:0:0:0:1';
diff --git a/mysql-test/suite/rpl/t/rpl_ipv6_win.cnf b/mysql-test/suite/rpl/t/rpl_ipv6_win.cnf
deleted file mode 100644
index c657e7c5115..00000000000
--- a/mysql-test/suite/rpl/t/rpl_ipv6_win.cnf
+++ /dev/null
@@ -1,56 +0,0 @@
-# Use default setting for mysqld processes
-!include include/default_mysqld.cnf
-!include include/default_client.cnf
-
-[mysqld.1]
-
-# Run the master.sh script before starting this process
-#!run-master-sh
-
-log-bin= master-bin
-
-loose-innodb
-
-skip-name-resolve
-bind-address= ::
-
-
-[mysqld.2]
-# Run the slave.sh script before starting this process
-#!run-slave-sh
-
-# Append <testname>-slave.opt file to the list of argument used when
-# starting the mysqld
-#!use-slave-opt
-
-log-bin= slave-bin
-relay-log= slave-relay-bin
-
-init-rpl-role= slave
-log-slave-updates
-master-retry-count= 10
-
-# Values reported by slave when it connect to master
-# and shows up in SHOW SLAVE STATUS;
-report-host= localhost
-report-port= @mysqld.2.port
-report-user= root
-
-skip-slave-start
-skip-name-resolve
-bind-address= ::
-
-# Directory where slaves find the dumps generated by "load data"
-# on the server. The path need to have constant length otherwise
-# test results will vary, thus a relative path is used.
-slave-load-tmpdir= ../../tmp
-
-loose-innodb
-
-[ENV]
-MASTER_MYPORT= @mysqld.1.port
-MASTER_MYSOCK= @mysqld.1.socket
-
-SLAVE_MYPORT= @mysqld.2.port
-SLAVE_MYSOCK= @mysqld.2.socket
-
diff --git a/mysql-test/suite/rpl/t/rpl_ipv6_win.test b/mysql-test/suite/rpl/t/rpl_ipv6_win.test
deleted file mode 100644
index 7c9d437541a..00000000000
--- a/mysql-test/suite/rpl/t/rpl_ipv6_win.test
+++ /dev/null
@@ -1,65 +0,0 @@
-# Copyright (C) 2009 SUN Microsystems
-# All rights reserved. Use is subject to license terms.
-# Author: Horst Hunger
-# Nov. 19, 2009
-# Test of ipv6 format, especially "change master host=..."
-# Options: --skip-name-resolve, --bind-address=:: (see corresponding cnf file)
-# for master and slave.
-#
---source include/check_ipv6.inc
-# For windows due to missing the mixed format like 0::0000:FFFF:127.0.0.1
---source include/windows.inc
---source include/have_log_bin.inc
-
-let $IPv6= ::1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ipv6.inc
-
-let $IPv6= ::1/128;
-#--echo #################### IP: $IPv6 ###########################
-#--source include/rpl_ipv6.inc
-
-let $IPv6= 0000:0000:0000:0000:0000:0000:0000:0001;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ipv6.inc
-
-let $IPv6= 0:0:0:0:0:0:0:1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ipv6.inc
-
-let $IPv6= 127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ipv6.inc
-
-let $IPv6= ::1;
---echo #################### IP: $IPv6 mix #######################
---echo connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (master,127.0.0.1,root,,test,$MASTER_MYPORT);
---echo connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connect (slave,127.0.0.1,root,,test,$SLAVE_MYPORT);
---echo connection master;
-connection master;
-reset master;
-source include/show_master_status.inc;
-save_master_pos;
---echo connection slave;
-connection slave;
-reset slave;
-let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
---echo Master-Host: $master_host
-eval change master to master_host='$IPv6';
-let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
---echo Master-Host: $master_host
-eval change master to master_host='127.0.0.1';
-let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
---echo Master-Host: $master_host
-eval change master to master_host='0:0:0:0:0:0:0:1';
-let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
---echo Master-Host: $master_host
---echo disconnect slave;
-disconnect slave;
---echo disconnect master;
-disconnect master;
---echo connection default;
-connection default;
---exit
diff --git a/mysql-test/suite/rpl/t/rpl_semi_sync.test b/mysql-test/suite/rpl/t/rpl_semi_sync.test
index 4900acc1e91..b04541aba21 100644
--- a/mysql-test/suite/rpl/t/rpl_semi_sync.test
+++ b/mysql-test/suite/rpl/t/rpl_semi_sync.test
@@ -11,6 +11,7 @@ disable_query_log;
connection master;
call mtr.add_suppression("Timeout waiting for reply of binlog");
call mtr.add_suppression("Read semi-sync reply");
+call mtr.add_suppression("Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT.");
connection slave;
call mtr.add_suppression("Master server does not support semi-sync");
call mtr.add_suppression("Semi-sync slave .* reply");
@@ -193,8 +194,38 @@ select count(distinct a) from t1;
select min(a) from t1;
select max(a) from t1;
+--echo
+--echo # BUG#50157
+--echo # semi-sync replication crashes when replicating a transaction which
+--echo # include 'CREATE TEMPORARY TABLE `MyISAM_t` SELECT * FROM `Innodb_t` ;
+
+connection master;
+echo [ on master ];
+SET SESSION AUTOCOMMIT= 0;
+CREATE TABLE t2(c1 INT) ENGINE=innodb;
+sync_slave_with_master;
+
+connection master;
+BEGIN;
+--echo
+--echo # Even though it is in a transaction, this statement is binlogged into binlog
+--echo # file immediately.
+--disable_warnings
+CREATE TEMPORARY TABLE t3 SELECT c1 FROM t2 where 1=1;
+--enable_warnings
+--echo
+--echo # These statements will not be binlogged until the transaction is committed
+INSERT INTO t2 VALUES(11);
+INSERT INTO t2 VALUES(22);
+COMMIT;
+
+DROP TABLE t2, t3;
+SET SESSION AUTOCOMMIT= 1;
+sync_slave_with_master;
+
+
--echo #
---echo # Test semi-sync master will switch OFF after one transacton
+--echo # Test semi-sync master will switch OFF after one transaction
--echo # timeout waiting for slave reply.
--echo #
connection slave;
diff --git a/mysql-test/suite/rpl/t/rpl_tmp_table_and_DDL.test b/mysql-test/suite/rpl/t/rpl_tmp_table_and_DDL.test
index 56924a2efe9..b3efb578b68 100644
--- a/mysql-test/suite/rpl/t/rpl_tmp_table_and_DDL.test
+++ b/mysql-test/suite/rpl/t/rpl_tmp_table_and_DDL.test
@@ -10,4 +10,5 @@ source include/have_binlog_format_row.inc;
LET $ENGINE_TYPE= MyISAM;
source extra/rpl_tests/rpl_tmp_table_and_DDL.test;
+sync_slave_with_master;
diff --git a/mysql-test/suite/sys_vars/r/delayed_insert_limit_func.result b/mysql-test/suite/sys_vars/r/delayed_insert_limit_func.result
index 0496efa4296..10d9f0d71c3 100644
--- a/mysql-test/suite/sys_vars/r/delayed_insert_limit_func.result
+++ b/mysql-test/suite/sys_vars/r/delayed_insert_limit_func.result
@@ -100,19 +100,19 @@ INSERT DELAYED INTO t1 VALUES('21');
INSERT DELAYED INTO t1 VALUES('22');|
** Connection con0 **
Asynchronous execute
-SELECT COUNT(*) = 22 FROM t1;
+SELECT COUNT(*) BETWEEN 6 AND 22 FROM t1;
** Connection default **
** Wait till con0 is blocked **
UNLOCK TABLES;
** Connection con1 **
** Connection con0 **
Asynchronous "reap" result
-COUNT(*) = 22
+COUNT(*) BETWEEN 6 AND 22
1
** Connection default**
Checking if the delayed insert gives the same result afterwards
-SELECT COUNT(*) = 22 FROM t1;
-COUNT(*) = 22
+SELECT COUNT(*) BETWEEN 6 AND 22 FROM t1;
+COUNT(*) BETWEEN 6 AND 22
1
** Connection default**
DROP TABLE t1;
diff --git a/mysql-test/suite/sys_vars/t/delayed_insert_limit_func.test b/mysql-test/suite/sys_vars/t/delayed_insert_limit_func.test
index 88f247135c8..abe41f021a6 100644
--- a/mysql-test/suite/sys_vars/t/delayed_insert_limit_func.test
+++ b/mysql-test/suite/sys_vars/t/delayed_insert_limit_func.test
@@ -205,7 +205,9 @@ let $wait_condition=
WHERE variable_name like 'Not_flushed_delayed_rows';
--source include/wait_condition.inc
--echo Asynchronous execute
-let $my_select= SELECT COUNT(*) = 22 FROM t1;
+# Due to performance and server behaveiour the test observes values between 6 and 22.
+# In any case the value must not be outside of that range.
+let $my_select= SELECT COUNT(*) BETWEEN 6 AND 22 FROM t1;
send;
eval $my_select;
diff --git a/mysql-test/t/constraints.test b/mysql-test/t/constraints.test
index ed268ab5846..70a95e5f16e 100644
--- a/mysql-test/t/constraints.test
+++ b/mysql-test/t/constraints.test
@@ -10,7 +10,7 @@ create table t1 (a int check (a>0));
insert into t1 values (1);
insert into t1 values (0);
drop table t1;
-create table t1 (a int ,b int, check a>b);
+create table t1 (a int, b int, check (a>b));
insert into t1 values (1,0);
insert into t1 values (0,1);
drop table t1;
@@ -29,3 +29,45 @@ show create table t1;
drop table t1;
# End of 4.1 tests
+
+#
+# Bug#35578 (Parser allows useless/illegal CREATE TABLE syntax)
+#
+
+--disable_warnings
+drop table if exists t_illegal;
+--enable_warnings
+
+--error ER_PARSE_ERROR
+create table t_illegal (a int, b int, check a>b);
+
+--error ER_PARSE_ERROR
+create table t_illegal (a int, b int, constraint abc check a>b);
+
+--error ER_PARSE_ERROR
+create table t_illegal (a int, b int, constraint abc);
+
+#
+# Bug#11714 (Non-sensical ALTER TABLE ADD CONSTRAINT allowed)
+#
+
+--disable_warnings
+drop table if exists t_11714;
+--enable_warnings
+
+create table t_11714(a int, b int);
+
+--error ER_PARSE_ERROR
+alter table t_11714 add constraint cons1;
+
+drop table t_11714;
+
+#
+# Bug#38696 (CREATE TABLE ... CHECK ... allows illegal syntax)
+
+--error ER_PARSE_ERROR
+CREATE TABLE t_illegal (col_1 INT CHECK something (whatever));
+
+--error ER_PARSE_ERROR
+CREATE TABLE t_illegal (col_1 INT CHECK something);
+
diff --git a/mysql-test/t/foreign_key.test b/mysql-test/t/foreign_key.test
index 0a3708e6dc8..2a6ab01f511 100644
--- a/mysql-test/t/foreign_key.test
+++ b/mysql-test/t/foreign_key.test
@@ -23,3 +23,75 @@ create unique index b on t1 (a,b);
drop table t1;
# End of 4.1 tests
+
+#
+# Bug#34455 (Ambiguous foreign keys syntax is accepted)
+#
+
+--disable_warnings
+drop table if exists t_34455;
+--enable_warnings
+
+# 2 match clauses, illegal
+--error ER_PARSE_ERROR
+create table t_34455 (
+ a int not null,
+ foreign key (a) references t3 (a) match full match partial);
+
+# match after on delete, illegal
+--error ER_PARSE_ERROR
+create table t_34455 (
+ a int not null,
+ foreign key (a) references t3 (a) on delete set default match full);
+
+# match after on update, illegal
+--error ER_PARSE_ERROR
+create table t_34455 (
+ a int not null,
+ foreign key (a) references t3 (a) on update set default match full);
+
+# 2 on delete clauses, illegal
+--error ER_PARSE_ERROR
+create table t_34455 (
+ a int not null,
+ foreign key (a) references t3 (a)
+ on delete set default on delete set default);
+
+# 2 on update clauses, illegal
+--error ER_PARSE_ERROR
+create table t_34455 (
+ a int not null,
+ foreign key (a) references t3 (a)
+ on update set default on update set default);
+
+create table t_34455 (a int not null);
+
+# 2 match clauses, illegal
+--error ER_PARSE_ERROR
+alter table t_34455
+ add foreign key (a) references t3 (a) match full match partial);
+
+# match after on delete, illegal
+--error ER_PARSE_ERROR
+alter table t_34455
+ add foreign key (a) references t3 (a) on delete set default match full);
+
+# match after on update, illegal
+--error ER_PARSE_ERROR
+alter table t_34455
+ add foreign key (a) references t3 (a) on update set default match full);
+
+# 2 on delete clauses, illegal
+--error ER_PARSE_ERROR
+alter table t_34455
+ add foreign key (a) references t3 (a)
+ on delete set default on delete set default);
+
+# 2 on update clauses, illegal
+--error ER_PARSE_ERROR
+alter table t_34455
+ add foreign key (a) references t3 (a)
+ on update set default on update set default);
+
+drop table t_34455;
+
diff --git a/mysql-test/t/ipv4_as_ipv6.test b/mysql-test/t/ipv4_as_ipv6.test
index 4f4e68e8bfc..ace3c286643 100644
--- a/mysql-test/t/ipv4_as_ipv6.test
+++ b/mysql-test/t/ipv4_as_ipv6.test
@@ -5,8 +5,7 @@
# Test of ipv4 (127.0.0.1) in ipv6 format
# Options: --skip-name-resolve, --bind-address=0.0.0.0 (see corresponding opt file).
#
-# Can't be tested with windows due to mixed format like 0::0000:FFFF:127.0.0.1
---source include/not_windows.inc
+--source include/have_ipv4_mapped.inc
# Can't be tested with embedded server
--source include/not_embedded.inc
diff --git a/mysql-test/t/ipv4_as_ipv6_win-master.opt b/mysql-test/t/ipv4_as_ipv6_win-master.opt
deleted file mode 100644
index f55a8e9209d..00000000000
--- a/mysql-test/t/ipv4_as_ipv6_win-master.opt
+++ /dev/null
@@ -1 +0,0 @@
---skip-name-resolve --bind-address=0.0.0.0
diff --git a/mysql-test/t/ipv4_as_ipv6_win.test b/mysql-test/t/ipv4_as_ipv6_win.test
deleted file mode 100644
index 04f908a119d..00000000000
--- a/mysql-test/t/ipv4_as_ipv6_win.test
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright (C) 2009 SUN Microsystems
-# All rights reserved. Use is subject to license terms.
-# Author: Horst Hunger
-# Nov. 19, 2009
-# Test of ipv4 (127.0.0.1) in ipv6 format
-# Options: --skip-name-resolve, --bind-address=0.0.0.0 (see corresponding opt file).
-#
-# For windows due to missing the mixed format like 0::0000:FFFF:127.0.0.1
---source include/windows.inc
-# Can't be tested with embedded server
---source include/not_embedded.inc
-
-# Save the initial number of concurrent sessions
---source include/count_sessions.inc
-
-echo =============Test of '127.0.0.1' (IPv4) ===========================;
-let $IPv6= 127.0.0.1;
---source include/ipv6_clients.inc
---source include/ipv6.inc
-
-echo =============Test of '::1' ========================;
-let $IPv6= ::1;
---echo connect (con1, $IPv6, root, , test, MASTER_MYPORT);
---disable_query_log
---error 2003,2006
-connect (con1, $IPv6, root, , test, $MASTER_MYPORT);
---enable_query_log
-connection default;
-
-# Wait till all disconnects are completed
---source include/wait_until_count_sessions.inc
diff --git a/mysql-test/t/ipv6.test b/mysql-test/t/ipv6.test
index a1515e9d533..5c08cde3746 100644
--- a/mysql-test/t/ipv6.test
+++ b/mysql-test/t/ipv6.test
@@ -6,9 +6,6 @@
# Options: --skip-name-resolve, --bind-address=:: (see corresponding opt file).
#
--source include/check_ipv6.inc
-
-# Can't be tested with windows due to the mixed format like 0:0:0:0:0:FFFF:127.0.0.1
---source include/not_windows.inc
# Can't be tested with embedded server
--source include/not_embedded.inc
@@ -35,45 +32,5 @@ let $IPv6= 0:0:0:0:0:0:0:1;
--source include/ipv6_clients.inc
--source include/ipv6.inc
-echo =============Test of '127.0.0.1' (IPv4) ===========================;
-let $IPv6= 127.0.0.1;
---source include/ipv6_clients.inc
---source include/ipv6.inc
-
-echo =============Test of '0:0:0:0:0:FFFF:127.0.0.1' ===================;
-let $IPv6= 0:0:0:0:0:FFFF:127.0.0.1;
---source include/ipv6_clients.inc
---source include/ipv6.inc
-
-echo =============Test of '0000:0000:0000:0000:0000:FFFF:127.0.0.1' ====;
-let $IPv6= 0000:0000:0000:0000:0000:FFFF:127.0.0.1;
---source include/ipv6_clients.inc
---source include/ipv6.inc
-
-echo =============Test of '0:0000:0000:0:0000:FFFF:127.0.0.1' ====;
-let $IPv6= 0:0000:0000:0:0000:FFFF:127.0.0.1;
---source include/ipv6_clients.inc
---source include/ipv6.inc
-
-echo =============Test of '0::0000:FFFF:127.0.0.1' ====;
-let $IPv6= 0::0000:FFFF:127.0.0.1;
---source include/ipv6_clients.inc
---source include/ipv6.inc
-
-echo =============Test of '0:0:0:0:0:FFFF:127.0.0.1/96' ================;
-let $IPv6= 0:0:0:0:0:FFFF:127.0.0.1/96;
-#--source include/ipv6_clients.inc
-#--source include/ipv6.inc
-
-echo =============Test of '::FFFF:127.0.0.1' ===========================;
-let $IPv6= ::FFFF:127.0.0.1;
---source include/ipv6_clients.inc
---source include/ipv6.inc
-
-echo =============Test of '::FFFF:127.0.0.1/96' ========================;
-let $IPv6= ::FFFF:127.0.0.1/96;
-#--source include/ipv6_clients.inc
-#--source include/ipv6.inc
-
# Wait till all disconnects are completed
--source include/wait_until_count_sessions.inc
diff --git a/mysql-test/t/ipv6_win-master.opt b/mysql-test/t/ipv6_win-master.opt
deleted file mode 100644
index d705811808c..00000000000
--- a/mysql-test/t/ipv6_win-master.opt
+++ /dev/null
@@ -1 +0,0 @@
---skip-name-resolve --bind-address=::
diff --git a/mysql-test/t/ipv6_win.test b/mysql-test/t/ipv6_win.test
deleted file mode 100644
index 86d867cc448..00000000000
--- a/mysql-test/t/ipv6_win.test
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright (C) 2009 SUN Microsystems
-# All rights reserved. Use is subject to license terms.
-# Author: Horst Hunger
-# Nov. 19, 2009
-# Test of ipv6 format
-# Options: --skip-name-resolve, --bind-address=:: (see corresponding opt file).
-#
---source include/check_ipv6.inc
-
-# For windows due to missing the mixed format like 0::0000:FFFF:127.0.0.1
---source include/windows.inc
-# Can't be tested with embedded server
---source include/not_embedded.inc
-
-# Save the initial number of concurrent sessions
---source include/count_sessions.inc
-
-echo =============Test of '::1' ========================================;
-let $IPv6= ::1;
---source include/ipv6_clients.inc
---source include/ipv6.inc
-
-echo =============Test of '::1/128' ====================================;
-let $IPv6= ::1/128;
-#--source include/ipv6_clients.inc
-#--source include/ipv6.inc
-
-echo =============Test of '0000:0000:0000:0000:0000:0000:0000:0001' ====;
-let $IPv6= 0000:0000:0000:0000:0000:0000:0000:0001;
---source include/ipv6_clients.inc
---source include/ipv6.inc
-
-echo =============Test of '0:0:0:0:0:0:0:1' ============================;
-let $IPv6= 0:0:0:0:0:0:0:1;
---source include/ipv6_clients.inc
---source include/ipv6.inc
-
-# Wait till all disconnects are completed
---source include/wait_until_count_sessions.inc
diff --git a/mysql-test/t/show_profile.test b/mysql-test/t/show_profile.test
new file mode 100644
index 00000000000..c20b29c40bf
--- /dev/null
+++ b/mysql-test/t/show_profile.test
@@ -0,0 +1,18 @@
+#
+# Test for show profiles
+# No meaningful check is possible.
+# So it only checks that SET profiling is possible and
+# that SHOW PROFILES, SHOW PROFILE FOR QUERY and SHOW PROFILE CPU FOR QUERY
+# do not cause syntax errors. It also increases code coverage for sql_profile.cc
+
+--source include/have_profiling.inc
+SET profiling = 1;
+SELECT 1;
+--replace_column 2 #
+SHOW PROFILES;
+--disable_result_log
+SHOW PROFILE FOR QUERY 1;
+SHOW PROFILE CPU FOR QUERY 1;
+--enable_result_log
+SET profiling = 0;
+