summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergei Golubchik <serg@mariadb.org>2017-09-21 22:02:21 +0200
committerSergei Golubchik <serg@mariadb.org>2017-09-21 22:02:21 +0200
commit2e3a16e3666ee1c4bdb15f9525eefe7e78ce1d91 (patch)
treeb6ae5d8147b45f46e2e9b46ab1c7c0954231b711
parentbb7a70c9551c1756b1d1736ca4f6a0a965795873 (diff)
parent8d0448d5075fe822e37f81b740e83f03ab318448 (diff)
downloadmariadb-git-2e3a16e3666ee1c4bdb15f9525eefe7e78ce1d91.tar.gz
Merge branch '10.0' into 10.1
-rw-r--r--cmake/CMakeLis.txt0
-rw-r--r--mysql-test/extra/rpl_tests/rpl_cant_read_event_incident.inc2
-rw-r--r--mysql-test/extra/rpl_tests/rpl_checksum.inc2
-rw-r--r--mysql-test/extra/rpl_tests/rpl_incident.inc2
-rw-r--r--mysql-test/extra/rpl_tests/rpl_init_slave_errors.inc2
-rw-r--r--mysql-test/extra/rpl_tests/rpl_loaddata.test2
-rw-r--r--mysql-test/extra/rpl_tests/rpl_packet.inc3
-rw-r--r--mysql-test/extra/rpl_tests/rpl_skip_replication.inc2
-rw-r--r--mysql-test/extra/rpl_tests/rpl_stm_relay_ign_space.inc2
-rw-r--r--mysql-test/extra/rpl_tests/rpl_sync.inc2
-rw-r--r--mysql-test/r/insert.result6
-rw-r--r--mysql-test/suite/engines/funcs/t/rpl_insert.test2
-rw-r--r--mysql-test/suite/innodb/t/innodb-index-online.test1
-rw-r--r--mysql-test/suite/parts/t/rpl_partition.test2
-rw-r--r--mysql-test/suite/roles/rpl_grant_revoke_current_role-8638.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_alter_extra_persistent.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_auto_increment_bug45679.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_begin_commit_rollback.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_blackhole.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_concurrency_error.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_conditional_comments.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_empty_master_host.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_extra_col_master_innodb.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_flush_logs.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_geometry.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_get_master_version_and_clock.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_grant.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_gtid_mdev4484.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_heartbeat_debug.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_innodb_bug68220.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_insert.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_invoked_features.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_loaddata_symlink.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_mariadb_slave_capability.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_mdev-11092.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_mdev8193.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_mixed_binlog_max_cache_size.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_mixed_implicit_commit_binlog.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_mixed_mixing_engines.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_non_direct_mixed_mixing_engines.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_not_null_innodb.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_not_null_myisam.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_performance_schema.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_read_only.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_report_port.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_row_binlog_max_cache_size.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_row_colSize.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_row_corruption.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_row_create_table.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_row_find_row.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_row_implicit_commit_binlog.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_row_index_choice.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_row_merge_engine.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_row_rec_comp_innodb.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_row_show_relaylog_events.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_row_tbl_metadata.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_row_trunc_temp.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_row_utf16.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_row_wide_table.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_savepoint.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_server_id_ignore.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_set_null_innodb.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_skip_error.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_skip_incident.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_slave_load_remove_tmpfile.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_slave_skip.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_slow_query_log.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_stm_binlog_max_cache_size.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_stm_drop_create_temp_table.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_stm_implicit_commit_binlog.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_stm_loadfile.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_stm_start_stop_slave.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_stm_user_variables.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_temp_table_mix_row.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_temporary_errors.test2
-rw-r--r--mysql-test/suite/rpl/t/sec_behind_master-5114.test2
-rw-r--r--mysql-test/t/create_or_replace2.test2
-rw-r--r--mysql-test/t/insert.test10
-rw-r--r--mysql-test/t/stat_tables_repl.test2
-rw-r--r--sql/log.cc2
-rw-r--r--sql/sql_class.h23
-rw-r--r--sql/table.cc34
-rw-r--r--storage/connect/CMakeLists.txt2
-rw-r--r--storage/connect/ha_connect.cc2
-rw-r--r--storage/connect/preparse.h2
-rw-r--r--storage/connect/tabmysql.h2
-rw-r--r--storage/connect/tabutil.cpp4
87 files changed, 144 insertions, 95 deletions
diff --git a/cmake/CMakeLis.txt b/cmake/CMakeLis.txt
deleted file mode 100644
index e69de29bb2d..00000000000
--- a/cmake/CMakeLis.txt
+++ /dev/null
diff --git a/mysql-test/extra/rpl_tests/rpl_cant_read_event_incident.inc b/mysql-test/extra/rpl_tests/rpl_cant_read_event_incident.inc
index a9534a999e2..7dfef023947 100644
--- a/mysql-test/extra/rpl_tests/rpl_cant_read_event_incident.inc
+++ b/mysql-test/extra/rpl_tests/rpl_cant_read_event_incident.inc
@@ -18,8 +18,8 @@
# and replication is started from it.
#
---source include/master-slave.inc
--source include/have_binlog_format_mixed.inc
+--source include/master-slave.inc
--connection slave
# Make sure the slave is stopped while we are messing with master.
diff --git a/mysql-test/extra/rpl_tests/rpl_checksum.inc b/mysql-test/extra/rpl_tests/rpl_checksum.inc
index 8423d2fc1cb..c77610522a1 100644
--- a/mysql-test/extra/rpl_tests/rpl_checksum.inc
+++ b/mysql-test/extra/rpl_tests/rpl_checksum.inc
@@ -7,9 +7,9 @@
# WL2540 replication events checksum
# Testing configuration parameters
---source include/master-slave.inc
--source include/have_debug.inc
--source include/have_binlog_format_mixed.inc
+--source include/master-slave.inc
call mtr.add_suppression('Slave can not handle replication events with the checksum that master is configured to log');
call mtr.add_suppression('Replication event checksum verification failed');
diff --git a/mysql-test/extra/rpl_tests/rpl_incident.inc b/mysql-test/extra/rpl_tests/rpl_incident.inc
index 189240e3b75..47b145214bc 100644
--- a/mysql-test/extra/rpl_tests/rpl_incident.inc
+++ b/mysql-test/extra/rpl_tests/rpl_incident.inc
@@ -4,8 +4,8 @@
# Please check all dependent tests after modifying it
#
---source include/master-slave.inc
--source include/have_debug.inc
+--source include/master-slave.inc
--echo **** On Master ****
CREATE TABLE t1 (a INT);
diff --git a/mysql-test/extra/rpl_tests/rpl_init_slave_errors.inc b/mysql-test/extra/rpl_tests/rpl_init_slave_errors.inc
index a8ac4e3cd6e..4fdea651edd 100644
--- a/mysql-test/extra/rpl_tests/rpl_init_slave_errors.inc
+++ b/mysql-test/extra/rpl_tests/rpl_init_slave_errors.inc
@@ -35,8 +35,8 @@
# Configuring the Environment
######################################################################
source include/have_debug.inc;
-source include/master-slave.inc;
source include/have_log_bin.inc;
+source include/master-slave.inc;
connection slave;
diff --git a/mysql-test/extra/rpl_tests/rpl_loaddata.test b/mysql-test/extra/rpl_tests/rpl_loaddata.test
index 67eb137bdf4..d04cefd175a 100644
--- a/mysql-test/extra/rpl_tests/rpl_loaddata.test
+++ b/mysql-test/extra/rpl_tests/rpl_loaddata.test
@@ -11,8 +11,8 @@
# check if START SLAVE, RESET SLAVE, CHANGE MASTER reset Last_slave_error and
# Last_slave_errno in SHOW SLAVE STATUS (1st and 3rd commands did not: bug 986)
--- source include/master-slave.inc
source include/have_innodb.inc;
+source include/master-slave.inc;
--disable_query_log
CALL mtr.add_suppression("Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT");
diff --git a/mysql-test/extra/rpl_tests/rpl_packet.inc b/mysql-test/extra/rpl_tests/rpl_packet.inc
index 41bb374b802..cbde486bcbb 100644
--- a/mysql-test/extra/rpl_tests/rpl_packet.inc
+++ b/mysql-test/extra/rpl_tests/rpl_packet.inc
@@ -15,8 +15,9 @@
# BUG#55322: SHOW BINLOG EVENTS increases @@SESSION.MAX_ALLOWED_PACKET
# max-out size db name
-source include/master-slave.inc;
source include/have_binlog_format_row.inc;
+source include/master-slave.inc;
+
call mtr.add_suppression("Slave I/O: Got a packet bigger than 'slave_max_allowed_packet' bytes, .*error.* 1153");
call mtr.add_suppression("Log entry on master is longer than slave_max_allowed_packet");
let $db= DB_NAME_OF_MAX_LENGTH_AKA_NAME_LEN_64_BYTES_____________________;
diff --git a/mysql-test/extra/rpl_tests/rpl_skip_replication.inc b/mysql-test/extra/rpl_tests/rpl_skip_replication.inc
index 14e3339ff5e..ac0beef414d 100644
--- a/mysql-test/extra/rpl_tests/rpl_skip_replication.inc
+++ b/mysql-test/extra/rpl_tests/rpl_skip_replication.inc
@@ -16,8 +16,8 @@
# so if it is needed, it should be set explicitly before each call.
#
---source include/master-slave.inc
--source include/have_innodb.inc
+--source include/master-slave.inc
connection slave;
# Test that SUPER is required to change @@replicate_events_marked_for_skip.
diff --git a/mysql-test/extra/rpl_tests/rpl_stm_relay_ign_space.inc b/mysql-test/extra/rpl_tests/rpl_stm_relay_ign_space.inc
index 82c4b1881bf..41339f539f8 100644
--- a/mysql-test/extra/rpl_tests/rpl_stm_relay_ign_space.inc
+++ b/mysql-test/extra/rpl_tests/rpl_stm_relay_ign_space.inc
@@ -25,8 +25,8 @@
# IO thread does not do it in an uncontrolled manner.
--source include/have_binlog_format_statement.inc
---source include/master-slave.inc
--source include/have_innodb.inc
+--source include/master-slave.inc
--disable_query_log
CREATE TABLE t1 (c1 TEXT) engine=InnoDB;
diff --git a/mysql-test/extra/rpl_tests/rpl_sync.inc b/mysql-test/extra/rpl_tests/rpl_sync.inc
index ede3c3c515f..1e2ec2ca83b 100644
--- a/mysql-test/extra/rpl_tests/rpl_sync.inc
+++ b/mysql-test/extra/rpl_tests/rpl_sync.inc
@@ -32,12 +32,12 @@
# Configuring the environment
########################################################################################
--echo =====Configuring the enviroment=======;
---source include/master-slave.inc
--source include/not_embedded.inc
--source include/not_valgrind.inc
--source include/have_debug.inc
--source include/have_innodb.inc
--source include/not_crashrep.inc
+--source include/master-slave.inc
call mtr.add_suppression('Attempting backtrace');
call mtr.add_suppression("Recovery from master pos .* and file master-bin.000001");
diff --git a/mysql-test/r/insert.result b/mysql-test/r/insert.result
index 59536021461..5a0b6b10db8 100644
--- a/mysql-test/r/insert.result
+++ b/mysql-test/r/insert.result
@@ -745,3 +745,9 @@ f1 f2
drop view v1;
drop table t1;
SET @@sql_mode= @save_mode;
+CREATE TABLE t1 (f INT);
+CREATE VIEW v1 AS SELECT * FROM t1 WHERE f <=> 'foo' WITH CHECK OPTION;
+REPLACE INTO v1 SET f = NULL;
+ERROR HY000: CHECK OPTION failed 'test.v1'
+DROP VIEW v1;
+DROP TABLE t1;
diff --git a/mysql-test/suite/engines/funcs/t/rpl_insert.test b/mysql-test/suite/engines/funcs/t/rpl_insert.test
index 763a484ea5d..f57a6e226d1 100644
--- a/mysql-test/suite/engines/funcs/t/rpl_insert.test
+++ b/mysql-test/suite/engines/funcs/t/rpl_insert.test
@@ -2,9 +2,9 @@
--echo # Bug#20821: INSERT DELAYED fails to write some rows to binlog
--echo #
---source include/master-slave.inc
--source include/not_embedded.inc
--source include/not_windows.inc
+--source include/master-slave.inc
--disable_warnings
CREATE SCHEMA IF NOT EXISTS mysqlslap;
diff --git a/mysql-test/suite/innodb/t/innodb-index-online.test b/mysql-test/suite/innodb/t/innodb-index-online.test
index efd700498c6..5509d985edc 100644
--- a/mysql-test/suite/innodb/t/innodb-index-online.test
+++ b/mysql-test/suite/innodb/t/innodb-index-online.test
@@ -1,5 +1,6 @@
--source include/innodb_page_size_small.inc
--source include/innodb_encrypt_log.inc
+--source include/have_debug.inc
--source include/have_debug_sync.inc
let $innodb_metrics_select=
diff --git a/mysql-test/suite/parts/t/rpl_partition.test b/mysql-test/suite/parts/t/rpl_partition.test
index e278b236f7b..cb6f84bbc71 100644
--- a/mysql-test/suite/parts/t/rpl_partition.test
+++ b/mysql-test/suite/parts/t/rpl_partition.test
@@ -1,7 +1,7 @@
--source include/have_partition.inc
--source include/have_innodb.inc
---source include/master-slave.inc
--source include/big_test.inc
+--source include/master-slave.inc
--vertical_results
diff --git a/mysql-test/suite/roles/rpl_grant_revoke_current_role-8638.test b/mysql-test/suite/roles/rpl_grant_revoke_current_role-8638.test
index 6a6c4f2a756..10e5e938884 100644
--- a/mysql-test/suite/roles/rpl_grant_revoke_current_role-8638.test
+++ b/mysql-test/suite/roles/rpl_grant_revoke_current_role-8638.test
@@ -1,5 +1,5 @@
---source include/master-slave.inc
--source include/have_binlog_format_mixed.inc
+--source include/master-slave.inc
--enable_connect_log
diff --git a/mysql-test/suite/rpl/t/rpl_alter_extra_persistent.test b/mysql-test/suite/rpl/t/rpl_alter_extra_persistent.test
index 3b2fff1cb13..4e604787c70 100644
--- a/mysql-test/suite/rpl/t/rpl_alter_extra_persistent.test
+++ b/mysql-test/suite/rpl/t/rpl_alter_extra_persistent.test
@@ -1,5 +1,5 @@
---source include/master-slave.inc
--source include/have_binlog_format_row.inc
+--source include/master-slave.inc
--enable_connect_log
--connection master
diff --git a/mysql-test/suite/rpl/t/rpl_auto_increment_bug45679.test b/mysql-test/suite/rpl/t/rpl_auto_increment_bug45679.test
index 6996e1c73c7..32f08be7c4d 100644
--- a/mysql-test/suite/rpl/t/rpl_auto_increment_bug45679.test
+++ b/mysql-test/suite/rpl/t/rpl_auto_increment_bug45679.test
@@ -5,9 +5,9 @@
# is replication unsafe.
#
-source include/master-slave.inc;
source include/have_binlog_format_mixed.inc;
source include/have_innodb.inc;
+source include/master-slave.inc;
call mtr.add_suppression('Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT.');
diff --git a/mysql-test/suite/rpl/t/rpl_begin_commit_rollback.test b/mysql-test/suite/rpl/t/rpl_begin_commit_rollback.test
index b4798691ca3..49fbe9af570 100644
--- a/mysql-test/suite/rpl/t/rpl_begin_commit_rollback.test
+++ b/mysql-test/suite/rpl/t/rpl_begin_commit_rollback.test
@@ -1,6 +1,6 @@
-source include/master-slave.inc;
source include/have_innodb.inc;
source include/have_binlog_format_statement.inc;
+source include/master-slave.inc;
connection slave;
call mtr.add_suppression("Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT");
diff --git a/mysql-test/suite/rpl/t/rpl_blackhole.test b/mysql-test/suite/rpl/t/rpl_blackhole.test
index 5f9b955aaa4..76b2e2421c9 100644
--- a/mysql-test/suite/rpl/t/rpl_blackhole.test
+++ b/mysql-test/suite/rpl/t/rpl_blackhole.test
@@ -15,8 +15,8 @@
# primary key lookup), and index/key with multiple matches (forcing an
# index search).
-source include/master-slave.inc;
source include/have_blackhole.inc;
+source include/master-slave.inc;
call mtr.add_suppression("Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT");
diff --git a/mysql-test/suite/rpl/t/rpl_concurrency_error.test b/mysql-test/suite/rpl/t/rpl_concurrency_error.test
index 15d5d5502a1..c5cebb953e4 100644
--- a/mysql-test/suite/rpl/t/rpl_concurrency_error.test
+++ b/mysql-test/suite/rpl/t/rpl_concurrency_error.test
@@ -17,9 +17,9 @@
# log, the error is ignored and only the non-transactional tables are changed.
###############################################################################
---source include/master-slave.inc
--source include/have_innodb.inc
--source include/have_binlog_format_statement.inc
+--source include/master-slave.inc
call mtr.add_suppression("Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT");
diff --git a/mysql-test/suite/rpl/t/rpl_conditional_comments.test b/mysql-test/suite/rpl/t/rpl_conditional_comments.test
index 0e2c108bf6e..bcc964a92c7 100644
--- a/mysql-test/suite/rpl/t/rpl_conditional_comments.test
+++ b/mysql-test/suite/rpl/t/rpl_conditional_comments.test
@@ -8,8 +8,8 @@
# will be binlogged as
# 'INSERT INTO t1 VALUES (1) /*!10000, (2)*/ /* 99999 ,(3)*/'.
###############################################################################
-source include/master-slave.inc;
source include/have_binlog_format_statement.inc;
+source include/master-slave.inc;
CREATE TABLE t1(c1 INT);
source include/show_binlog_events.inc;
diff --git a/mysql-test/suite/rpl/t/rpl_empty_master_host.test b/mysql-test/suite/rpl/t/rpl_empty_master_host.test
index 66d30375a59..0fc2d11a29d 100644
--- a/mysql-test/suite/rpl/t/rpl_empty_master_host.test
+++ b/mysql-test/suite/rpl/t/rpl_empty_master_host.test
@@ -16,8 +16,8 @@
# along the way if error/no error is thrown and/or if replication starts
# working when expected.
---source include/master-slave.inc
--source include/have_binlog_format_mixed.inc
+--source include/master-slave.inc
connection slave;
STOP SLAVE;
diff --git a/mysql-test/suite/rpl/t/rpl_extra_col_master_innodb.test b/mysql-test/suite/rpl/t/rpl_extra_col_master_innodb.test
index f48880b5dfa..201392346be 100644
--- a/mysql-test/suite/rpl/t/rpl_extra_col_master_innodb.test
+++ b/mysql-test/suite/rpl/t/rpl_extra_col_master_innodb.test
@@ -2,8 +2,8 @@
# Purpose: To test having extra columns on the master WL#3915
#############################################################
-- source include/have_binlog_format_row.inc
--- source include/master-slave.inc
-- source include/have_innodb.inc
+-- source include/master-slave.inc
let $engine_type = 'InnoDB';
--source extra/rpl_tests/rpl_extra_col_master.test
diff --git a/mysql-test/suite/rpl/t/rpl_flush_logs.test b/mysql-test/suite/rpl/t/rpl_flush_logs.test
index 1d19576d47c..6dad588f217 100644
--- a/mysql-test/suite/rpl/t/rpl_flush_logs.test
+++ b/mysql-test/suite/rpl/t/rpl_flush_logs.test
@@ -4,8 +4,8 @@
# works fine.
#
---source include/master-slave.inc
--source include/have_binlog_format_statement.inc
+--source include/master-slave.inc
connection master;
# Test 'flush error logs' statement.
diff --git a/mysql-test/suite/rpl/t/rpl_geometry.test b/mysql-test/suite/rpl/t/rpl_geometry.test
index 769c49c96b1..415732a0228 100644
--- a/mysql-test/suite/rpl/t/rpl_geometry.test
+++ b/mysql-test/suite/rpl/t/rpl_geometry.test
@@ -1,5 +1,5 @@
-source include/master-slave.inc;
source include/have_binlog_format_row.inc;
+source include/master-slave.inc;
#
# Bug#48776, Bug#43784
diff --git a/mysql-test/suite/rpl/t/rpl_get_master_version_and_clock.test b/mysql-test/suite/rpl/t/rpl_get_master_version_and_clock.test
index 17417a55b8c..dca32c30a94 100644
--- a/mysql-test/suite/rpl/t/rpl_get_master_version_and_clock.test
+++ b/mysql-test/suite/rpl/t/rpl_get_master_version_and_clock.test
@@ -8,9 +8,9 @@
# Finish the following tests by calling its common test script:
# extra/rpl_tests/rpl_get_master_version_and_clock.test.
-source include/master-slave.inc;
source include/have_debug.inc;
source include/have_debug_sync.inc;
+source include/master-slave.inc;
#
# The test is not supposed to have any binglog affairs.
diff --git a/mysql-test/suite/rpl/t/rpl_grant.test b/mysql-test/suite/rpl/t/rpl_grant.test
index 1091e5aab0d..b40d400afbd 100644
--- a/mysql-test/suite/rpl/t/rpl_grant.test
+++ b/mysql-test/suite/rpl/t/rpl_grant.test
@@ -1,7 +1,7 @@
# Tests of grants and users
-source include/master-slave.inc;
source include/not_embedded.inc;
+source include/master-slave.inc;
--echo **** On Master ****
connection master;
diff --git a/mysql-test/suite/rpl/t/rpl_gtid_mdev4484.test b/mysql-test/suite/rpl/t/rpl_gtid_mdev4484.test
index 43634ec1528..5b13a5e1fc1 100644
--- a/mysql-test/suite/rpl/t/rpl_gtid_mdev4484.test
+++ b/mysql-test/suite/rpl/t/rpl_gtid_mdev4484.test
@@ -1,6 +1,6 @@
---source include/master-slave.inc
--source include/have_innodb.inc
--source include/have_debug.inc
+--source include/master-slave.inc
CREATE TABLE t1 (i int) ENGINE=InnoDB;
diff --git a/mysql-test/suite/rpl/t/rpl_heartbeat_debug.test b/mysql-test/suite/rpl/t/rpl_heartbeat_debug.test
index 7cdf67d6532..6a426ed1e9f 100644
--- a/mysql-test/suite/rpl/t/rpl_heartbeat_debug.test
+++ b/mysql-test/suite/rpl/t/rpl_heartbeat_debug.test
@@ -1,7 +1,7 @@
# Testing master to slave heartbeat protocol, test cases that need debug build.
---source include/master-slave.inc
--source include/have_debug.inc
+--source include/master-slave.inc
connection slave;
--source include/stop_slave.inc
diff --git a/mysql-test/suite/rpl/t/rpl_innodb_bug68220.test b/mysql-test/suite/rpl/t/rpl_innodb_bug68220.test
index 76e7c60fd59..1e4f40a0019 100644
--- a/mysql-test/suite/rpl/t/rpl_innodb_bug68220.test
+++ b/mysql-test/suite/rpl/t/rpl_innodb_bug68220.test
@@ -1,6 +1,6 @@
--source include/have_innodb.inc
---source include/master-slave.inc
--source include/have_binlog_format_row.inc
+--source include/master-slave.inc
#
# Bug#68220: innodb_rows_updated is misleading on slave when *info_repository=TABLE
diff --git a/mysql-test/suite/rpl/t/rpl_insert.test b/mysql-test/suite/rpl/t/rpl_insert.test
index 2a29139ac48..48814508818 100644
--- a/mysql-test/suite/rpl/t/rpl_insert.test
+++ b/mysql-test/suite/rpl/t/rpl_insert.test
@@ -2,9 +2,9 @@
--echo # Bug#20821: INSERT DELAYED fails to write some rows to binlog
--echo #
---source include/master-slave.inc
--source include/not_embedded.inc
--source include/not_windows.inc
+--source include/master-slave.inc
disable_query_log;
call mtr.add_suppression("Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT");
diff --git a/mysql-test/suite/rpl/t/rpl_invoked_features.test b/mysql-test/suite/rpl/t/rpl_invoked_features.test
index 7770c36c397..91391cf8372 100644
--- a/mysql-test/suite/rpl/t/rpl_invoked_features.test
+++ b/mysql-test/suite/rpl/t/rpl_invoked_features.test
@@ -5,8 +5,8 @@
# Features for Replication.
#########################################
---source include/master-slave.inc
--source include/have_innodb.inc
+--source include/master-slave.inc
disable_query_log;
call mtr.add_suppression("Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT");
diff --git a/mysql-test/suite/rpl/t/rpl_loaddata_symlink.test b/mysql-test/suite/rpl/t/rpl_loaddata_symlink.test
index c73fa2897f3..e5ee400d231 100644
--- a/mysql-test/suite/rpl/t/rpl_loaddata_symlink.test
+++ b/mysql-test/suite/rpl/t/rpl_loaddata_symlink.test
@@ -4,8 +4,8 @@
# if the path of the load data file is a symbolic link.
#
--source include/not_windows.inc
---source include/master-slave.inc
--source include/have_binlog_format_statement.inc
+--source include/master-slave.inc
create table t1(a int not null auto_increment, b int, primary key(a) );
load data infile '../../std_data/rpl_loaddata.dat' into table t1;
diff --git a/mysql-test/suite/rpl/t/rpl_mariadb_slave_capability.test b/mysql-test/suite/rpl/t/rpl_mariadb_slave_capability.test
index 0e6608fd848..2761f169e83 100644
--- a/mysql-test/suite/rpl/t/rpl_mariadb_slave_capability.test
+++ b/mysql-test/suite/rpl/t/rpl_mariadb_slave_capability.test
@@ -1,8 +1,8 @@
---source include/master-slave.inc
--source include/have_debug.inc
--source include/have_debug_sync.inc
--source include/have_binlog_format_row.inc
--source include/have_innodb.inc
+--source include/master-slave.inc
connection master;
diff --git a/mysql-test/suite/rpl/t/rpl_mdev-11092.test b/mysql-test/suite/rpl/t/rpl_mdev-11092.test
index c8b2b7f2ad1..31a385b40e6 100644
--- a/mysql-test/suite/rpl/t/rpl_mdev-11092.test
+++ b/mysql-test/suite/rpl/t/rpl_mdev-11092.test
@@ -1,8 +1,8 @@
--source include/have_innodb.inc
---source include/master-slave.inc
--source include/not_embedded.inc
--source include/not_windows.inc
--source include/have_binlog_format_row.inc
+--source include/master-slave.inc
########################################################################################
call mtr.add_suppression("Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT");
diff --git a/mysql-test/suite/rpl/t/rpl_mdev8193.test b/mysql-test/suite/rpl/t/rpl_mdev8193.test
index 29c26bb3da4..dcad3e5f9b0 100644
--- a/mysql-test/suite/rpl/t/rpl_mdev8193.test
+++ b/mysql-test/suite/rpl/t/rpl_mdev8193.test
@@ -1,5 +1,5 @@
---source include/master-slave.inc
--source include/have_binlog_format_statement.inc
+--source include/master-slave.inc
--connection slave
diff --git a/mysql-test/suite/rpl/t/rpl_mixed_binlog_max_cache_size.test b/mysql-test/suite/rpl/t/rpl_mixed_binlog_max_cache_size.test
index 3850a84cbf1..81b01cc9140 100644
--- a/mysql-test/suite/rpl/t/rpl_mixed_binlog_max_cache_size.test
+++ b/mysql-test/suite/rpl/t/rpl_mixed_binlog_max_cache_size.test
@@ -1,8 +1,8 @@
--source include/have_innodb.inc
---source include/master-slave.inc
--source include/not_embedded.inc
--source include/not_windows.inc
--source include/have_binlog_format_mixed.inc
+--source include/master-slave.inc
--source extra/rpl_tests/rpl_binlog_max_cache_size.test
--source include/rpl_end.inc
diff --git a/mysql-test/suite/rpl/t/rpl_mixed_implicit_commit_binlog.test b/mysql-test/suite/rpl/t/rpl_mixed_implicit_commit_binlog.test
index b2e8308b34d..fa948f8f5fe 100644
--- a/mysql-test/suite/rpl/t/rpl_mixed_implicit_commit_binlog.test
+++ b/mysql-test/suite/rpl/t/rpl_mixed_implicit_commit_binlog.test
@@ -3,8 +3,8 @@
################################################################################
--source include/have_udf.inc
--source include/have_binlog_format_mixed.inc
---source include/master-slave.inc
--source include/have_innodb.inc
+--source include/master-slave.inc
--let $engine=Innodb
set session storage_engine=innodb;
diff --git a/mysql-test/suite/rpl/t/rpl_mixed_mixing_engines.test b/mysql-test/suite/rpl/t/rpl_mixed_mixing_engines.test
index 747374b89c2..a9c8f6fe3e1 100644
--- a/mysql-test/suite/rpl/t/rpl_mixed_mixing_engines.test
+++ b/mysql-test/suite/rpl/t/rpl_mixed_mixing_engines.test
@@ -3,8 +3,8 @@
# tables. For further details, please, read WL#2687 and WL#5072.
###################################################################################
--source include/have_binlog_format_mixed.inc
---source include/master-slave.inc
--source include/have_innodb.inc
+--source include/master-slave.inc
let $engine_type=Innodb;
let $database_name=test;
diff --git a/mysql-test/suite/rpl/t/rpl_non_direct_mixed_mixing_engines.test b/mysql-test/suite/rpl/t/rpl_non_direct_mixed_mixing_engines.test
index 8092ff141db..93ec9acf5ea 100644
--- a/mysql-test/suite/rpl/t/rpl_non_direct_mixed_mixing_engines.test
+++ b/mysql-test/suite/rpl/t/rpl_non_direct_mixed_mixing_engines.test
@@ -3,8 +3,8 @@
# tables. For further details, please, read WL#2687 and WL#5072.
###################################################################################
--source include/have_binlog_format_mixed.inc
---source include/master-slave.inc
--source include/have_innodb.inc
+--source include/master-slave.inc
--disable_query_log
SET SESSION binlog_direct_non_transactional_updates = OFF;
diff --git a/mysql-test/suite/rpl/t/rpl_not_null_innodb.test b/mysql-test/suite/rpl/t/rpl_not_null_innodb.test
index 1e67ba4eda1..6a1cc341060 100644
--- a/mysql-test/suite/rpl/t/rpl_not_null_innodb.test
+++ b/mysql-test/suite/rpl/t/rpl_not_null_innodb.test
@@ -11,9 +11,9 @@
# 3 - NULL --> NOT NULL ( sql-mode != STRICT and no failures)
#
#################################################################################
---source include/master-slave.inc
--source include/have_innodb.inc
--source include/have_binlog_format_row.inc
+--source include/master-slave.inc
let $engine=Innodb;
--source extra/rpl_tests/rpl_not_null.test
diff --git a/mysql-test/suite/rpl/t/rpl_not_null_myisam.test b/mysql-test/suite/rpl/t/rpl_not_null_myisam.test
index dcfaf006dad..6ef0b65d5ff 100644
--- a/mysql-test/suite/rpl/t/rpl_not_null_myisam.test
+++ b/mysql-test/suite/rpl/t/rpl_not_null_myisam.test
@@ -11,8 +11,8 @@
# 3 - NULL --> NOT NULL ( sql-mode != STRICT and no failures)
#
#################################################################################
---source include/master-slave.inc
--source include/have_binlog_format_row.inc
+--source include/master-slave.inc
let $engine=MyISAM;
--source extra/rpl_tests/rpl_not_null.test
diff --git a/mysql-test/suite/rpl/t/rpl_performance_schema.test b/mysql-test/suite/rpl/t/rpl_performance_schema.test
index 0562b0ea658..18aabe5272d 100644
--- a/mysql-test/suite/rpl/t/rpl_performance_schema.test
+++ b/mysql-test/suite/rpl/t/rpl_performance_schema.test
@@ -1,6 +1,6 @@
---source include/master-slave.inc
--source include/have_perfschema.inc
--source include/have_binlog_format_mixed.inc
+--source include/master-slave.inc
UPDATE performance_schema.setup_instruments SET ENABLED="NO";
diff --git a/mysql-test/suite/rpl/t/rpl_read_only.test b/mysql-test/suite/rpl/t/rpl_read_only.test
index fb92803847a..c4781bbbb3b 100644
--- a/mysql-test/suite/rpl/t/rpl_read_only.test
+++ b/mysql-test/suite/rpl/t/rpl_read_only.test
@@ -1,6 +1,6 @@
# Test case for BUG #11733
--- source include/master-slave.inc
-- source include/have_innodb.inc
+-- source include/master-slave.inc
call mtr.add_suppression("Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT");
diff --git a/mysql-test/suite/rpl/t/rpl_report_port.test b/mysql-test/suite/rpl/t/rpl_report_port.test
index 6e728a678ad..2a14d278d48 100644
--- a/mysql-test/suite/rpl/t/rpl_report_port.test
+++ b/mysql-test/suite/rpl/t/rpl_report_port.test
@@ -17,8 +17,8 @@
# case on doing SHOW SLAVE HOSTS on the master, we get the actual port number
# of the slave (ie. SLAVE_PORT).
-source include/master-slave.inc;
source include/have_binlog_format_mixed.inc;
+source include/master-slave.inc;
connection master;
diff --git a/mysql-test/suite/rpl/t/rpl_row_binlog_max_cache_size.test b/mysql-test/suite/rpl/t/rpl_row_binlog_max_cache_size.test
index 9c8489658f8..cc031d382e0 100644
--- a/mysql-test/suite/rpl/t/rpl_row_binlog_max_cache_size.test
+++ b/mysql-test/suite/rpl/t/rpl_row_binlog_max_cache_size.test
@@ -1,8 +1,8 @@
--source include/have_innodb.inc
---source include/master-slave.inc
--source include/not_embedded.inc
--source include/not_windows.inc
--source include/have_binlog_format_row.inc
+--source include/master-slave.inc
--source extra/rpl_tests/rpl_binlog_max_cache_size.test
--source include/rpl_end.inc
diff --git a/mysql-test/suite/rpl/t/rpl_row_colSize.test b/mysql-test/suite/rpl/t/rpl_row_colSize.test
index cdffe2e333b..21c68b55e92 100644
--- a/mysql-test/suite/rpl/t/rpl_row_colSize.test
+++ b/mysql-test/suite/rpl/t/rpl_row_colSize.test
@@ -6,8 +6,8 @@
# having columns that are smaller (shorter) than the slave. #
##################################################################
--- source include/master-slave.inc
-- source include/have_binlog_format_row.inc
+-- source include/master-slave.inc
--disable_warnings
DROP TABLE IF EXISTS t1;
diff --git a/mysql-test/suite/rpl/t/rpl_row_corruption.test b/mysql-test/suite/rpl/t/rpl_row_corruption.test
index e05273a2f9c..acf3964f0c5 100644
--- a/mysql-test/suite/rpl/t/rpl_row_corruption.test
+++ b/mysql-test/suite/rpl/t/rpl_row_corruption.test
@@ -1,7 +1,7 @@
#
---source include/master-slave.inc
--source include/have_debug.inc
--source include/have_binlog_format_row.inc
+--source include/master-slave.inc
# BUG#11753004: 44360: REPLICATION FAILED
diff --git a/mysql-test/suite/rpl/t/rpl_row_create_table.test b/mysql-test/suite/rpl/t/rpl_row_create_table.test
index da73d753dcd..03f9d6a953b 100644
--- a/mysql-test/suite/rpl/t/rpl_row_create_table.test
+++ b/mysql-test/suite/rpl/t/rpl_row_create_table.test
@@ -1,8 +1,8 @@
# Testing table creations for row-based replication.
--source include/have_binlog_format_row.inc
---source include/master-slave.inc
--source include/have_innodb.inc
+--source include/master-slave.inc
connection slave;
--source include/have_innodb.inc
connection master;
diff --git a/mysql-test/suite/rpl/t/rpl_row_find_row.test b/mysql-test/suite/rpl/t/rpl_row_find_row.test
index 7f633c5aa97..444706aca7f 100644
--- a/mysql-test/suite/rpl/t/rpl_row_find_row.test
+++ b/mysql-test/suite/rpl/t/rpl_row_find_row.test
@@ -16,8 +16,8 @@
# has been fixed.
#
--- source include/master-slave.inc
-- source include/have_binlog_format_row.inc
+-- source include/master-slave.inc
#
# Case #1: master has key, but slave has not.
diff --git a/mysql-test/suite/rpl/t/rpl_row_implicit_commit_binlog.test b/mysql-test/suite/rpl/t/rpl_row_implicit_commit_binlog.test
index 2b35f68ff63..6fdcd885930 100644
--- a/mysql-test/suite/rpl/t/rpl_row_implicit_commit_binlog.test
+++ b/mysql-test/suite/rpl/t/rpl_row_implicit_commit_binlog.test
@@ -3,8 +3,8 @@
################################################################################
--source include/have_udf.inc
--source include/have_binlog_format_row.inc
---source include/master-slave.inc
--source include/have_innodb.inc
+--source include/master-slave.inc
--let $engine=Innodb
set session storage_engine=innodb;
diff --git a/mysql-test/suite/rpl/t/rpl_row_index_choice.test b/mysql-test/suite/rpl/t/rpl_row_index_choice.test
index 6d4053f9737..0ad9b315d66 100644
--- a/mysql-test/suite/rpl/t/rpl_row_index_choice.test
+++ b/mysql-test/suite/rpl/t/rpl_row_index_choice.test
@@ -1,7 +1,7 @@
--source include/have_binlog_format_row.inc
---source include/master-slave.inc
--source include/have_debug.inc
--source include/have_innodb.inc
+--source include/master-slave.inc
# Bug#58997: Row-based replication breaks on table with only fulltext index:
connection master;
diff --git a/mysql-test/suite/rpl/t/rpl_row_merge_engine.test b/mysql-test/suite/rpl/t/rpl_row_merge_engine.test
index dcbb8b891d8..c28d4a89651 100644
--- a/mysql-test/suite/rpl/t/rpl_row_merge_engine.test
+++ b/mysql-test/suite/rpl/t/rpl_row_merge_engine.test
@@ -12,8 +12,8 @@
# deletes their contents through the merge table. Finally, the slave
# is synchronized with the master and (after the fix) it won't crash.
#
---source include/master-slave.inc
--source include/have_binlog_format_row.inc
+--source include/master-slave.inc
--connection master
CREATE TABLE t1 (a int) ENGINE=MyISAM;
diff --git a/mysql-test/suite/rpl/t/rpl_row_rec_comp_innodb.test b/mysql-test/suite/rpl/t/rpl_row_rec_comp_innodb.test
index 57d67c5c71b..b3808680db2 100644
--- a/mysql-test/suite/rpl/t/rpl_row_rec_comp_innodb.test
+++ b/mysql-test/suite/rpl/t/rpl_row_rec_comp_innodb.test
@@ -1,6 +1,6 @@
-- source include/have_binlog_format_row.inc
--- source include/master-slave.inc
-- source include/have_innodb.inc
+-- source include/master-slave.inc
#
# BUG#52868 Wrong handling of NULL value during update, replication out of sync
diff --git a/mysql-test/suite/rpl/t/rpl_row_show_relaylog_events.test b/mysql-test/suite/rpl/t/rpl_row_show_relaylog_events.test
index a78f7ad4271..0882d603203 100644
--- a/mysql-test/suite/rpl/t/rpl_row_show_relaylog_events.test
+++ b/mysql-test/suite/rpl/t/rpl_row_show_relaylog_events.test
@@ -12,8 +12,8 @@
# This test issues SHOW [BINLOG|RELAYLOG] EVENTS both on master and slave after
# some statements have been issued.
--- source include/master-slave.inc
-- source include/have_binlog_format_row.inc
+-- source include/master-slave.inc
-- source extra/rpl_tests/rpl_show_relaylog_events.inc
--source include/rpl_end.inc
diff --git a/mysql-test/suite/rpl/t/rpl_row_tbl_metadata.test b/mysql-test/suite/rpl/t/rpl_row_tbl_metadata.test
index e8ac74f0125..5bdd1ff8b6b 100644
--- a/mysql-test/suite/rpl/t/rpl_row_tbl_metadata.test
+++ b/mysql-test/suite/rpl/t/rpl_row_tbl_metadata.test
@@ -26,9 +26,9 @@
# with mysqlbinlog reporting that it was unable to succeed in
# reading the event.
--- source include/master-slave.inc
-- source include/have_innodb.inc
-- source include/have_binlog_format_row.inc
+-- source include/master-slave.inc
-- disable_warnings
DROP TABLE IF EXISTS `t1`;
diff --git a/mysql-test/suite/rpl/t/rpl_row_trunc_temp.test b/mysql-test/suite/rpl/t/rpl_row_trunc_temp.test
index 394bf949f72..a8d7f77d930 100644
--- a/mysql-test/suite/rpl/t/rpl_row_trunc_temp.test
+++ b/mysql-test/suite/rpl/t/rpl_row_trunc_temp.test
@@ -6,8 +6,8 @@
# table was binlogged in RBR.
#
---source include/master-slave.inc
--source include/have_binlog_format_row.inc
+--source include/master-slave.inc
#This statement is not binlogged in RBR.
CREATE TEMPORARY TABLE t1(c1 INTEGER);
diff --git a/mysql-test/suite/rpl/t/rpl_row_utf16.test b/mysql-test/suite/rpl/t/rpl_row_utf16.test
index e3e7a51c002..595a149e5e6 100644
--- a/mysql-test/suite/rpl/t/rpl_row_utf16.test
+++ b/mysql-test/suite/rpl/t/rpl_row_utf16.test
@@ -1,6 +1,6 @@
--- source include/master-slave.inc
-- source include/have_binlog_format_row.inc
-- source include/have_utf16.inc
+-- source include/master-slave.inc
#
# BUG#51716: Char column with utf16 character set gives wrong padding on slave
diff --git a/mysql-test/suite/rpl/t/rpl_row_wide_table.test b/mysql-test/suite/rpl/t/rpl_row_wide_table.test
index b1d16133096..01473f991bf 100644
--- a/mysql-test/suite/rpl/t/rpl_row_wide_table.test
+++ b/mysql-test/suite/rpl/t/rpl_row_wide_table.test
@@ -8,8 +8,8 @@
# in corrupt binlog
##################################################################
--- source include/master-slave.inc
-- source include/have_binlog_format_row.inc
+-- source include/master-slave.inc
--disable_warnings
DROP TABLE IF EXISTS t300;
diff --git a/mysql-test/suite/rpl/t/rpl_savepoint.test b/mysql-test/suite/rpl/t/rpl_savepoint.test
index 2aacd1fa81e..a61c506f12f 100644
--- a/mysql-test/suite/rpl/t/rpl_savepoint.test
+++ b/mysql-test/suite/rpl/t/rpl_savepoint.test
@@ -1,5 +1,5 @@
---source include/master-slave.inc
--source include/have_innodb.inc
+--source include/master-slave.inc
--echo #
--echo # Bug#50124 Rpl failure on DROP table with concurrent txn/non-txn
diff --git a/mysql-test/suite/rpl/t/rpl_server_id_ignore.test b/mysql-test/suite/rpl/t/rpl_server_id_ignore.test
index 1e6d46c9d40..537978f1701 100644
--- a/mysql-test/suite/rpl/t/rpl_server_id_ignore.test
+++ b/mysql-test/suite/rpl/t/rpl_server_id_ignore.test
@@ -17,8 +17,8 @@
# b. nullifying the list and resuming of taking binlog from the very beginning with
# executing events this time
-source include/master-slave.inc;
source include/have_binlog_format_mixed.inc;
+source include/master-slave.inc;
connection slave;
diff --git a/mysql-test/suite/rpl/t/rpl_set_null_innodb.test b/mysql-test/suite/rpl/t/rpl_set_null_innodb.test
index 2d0c34e1d0a..5ef10263498 100644
--- a/mysql-test/suite/rpl/t/rpl_set_null_innodb.test
+++ b/mysql-test/suite/rpl/t/rpl_set_null_innodb.test
@@ -1,6 +1,6 @@
-- source include/have_binlog_format_mixed_or_row.inc
--- source include/master-slave.inc
-- source include/have_innodb.inc
+-- source include/master-slave.inc
-- let $engine= InnoDB
-- source extra/rpl_tests/rpl_set_null.test
diff --git a/mysql-test/suite/rpl/t/rpl_skip_error.test b/mysql-test/suite/rpl/t/rpl_skip_error.test
index 4348675884b..6cf3113daf5 100644
--- a/mysql-test/suite/rpl/t/rpl_skip_error.test
+++ b/mysql-test/suite/rpl/t/rpl_skip_error.test
@@ -23,8 +23,8 @@
# bug in this test: BUG#30594: rpl.rpl_skip_error is nondeterministic:
# BUG#39393: slave-skip-errors does not work when using ROW based replication
-source include/master-slave.inc;
source include/have_innodb.inc;
+source include/master-slave.inc;
--echo ==== Test Without sql_mode=strict_trans_tables ====
diff --git a/mysql-test/suite/rpl/t/rpl_skip_incident.test b/mysql-test/suite/rpl/t/rpl_skip_incident.test
index 959fde9374e..50e466b1329 100644
--- a/mysql-test/suite/rpl/t/rpl_skip_incident.test
+++ b/mysql-test/suite/rpl/t/rpl_skip_incident.test
@@ -1,5 +1,5 @@
---source include/master-slave.inc
--source include/have_debug.inc
+--source include/master-slave.inc
--echo **** On Master ****
CREATE TABLE t1 (a INT);
diff --git a/mysql-test/suite/rpl/t/rpl_slave_load_remove_tmpfile.test b/mysql-test/suite/rpl/t/rpl_slave_load_remove_tmpfile.test
index b1af6e92c29..69319bad4a0 100644
--- a/mysql-test/suite/rpl/t/rpl_slave_load_remove_tmpfile.test
+++ b/mysql-test/suite/rpl/t/rpl_slave_load_remove_tmpfile.test
@@ -20,9 +20,9 @@
--source include/have_binlog_format_statement.inc
--source include/have_innodb.inc
--source include/have_debug.inc
---source include/master-slave.inc
--source include/not_embedded.inc
--source include/not_var_link.inc
+--source include/master-slave.inc
##########################################################################
# Loading data
diff --git a/mysql-test/suite/rpl/t/rpl_slave_skip.test b/mysql-test/suite/rpl/t/rpl_slave_skip.test
index f2129bd7f18..d64f394055c 100644
--- a/mysql-test/suite/rpl/t/rpl_slave_skip.test
+++ b/mysql-test/suite/rpl/t/rpl_slave_skip.test
@@ -4,8 +4,8 @@
# test for MIXED mode.
source include/have_binlog_format_mixed.inc;
-source include/master-slave.inc;
source include/have_innodb.inc;
+source include/master-slave.inc;
--echo **** On Slave ****
connection slave;
diff --git a/mysql-test/suite/rpl/t/rpl_slow_query_log.test b/mysql-test/suite/rpl/t/rpl_slow_query_log.test
index 3505883c58e..df88d42ed68 100644
--- a/mysql-test/suite/rpl/t/rpl_slow_query_log.test
+++ b/mysql-test/suite/rpl/t/rpl_slow_query_log.test
@@ -25,8 +25,8 @@
# Note that due to the sleep() command the insert is written to the binary
# log in row format.
-source include/master-slave.inc;
source include/have_binlog_format_statement.inc;
+source include/master-slave.inc;
CALL mtr.add_suppression("Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT");
call mtr.add_suppression("Slave SQL.*Request to stop slave SQL Thread received while applying a group that has non-transactional changes; waiting for completion of the group");
diff --git a/mysql-test/suite/rpl/t/rpl_stm_binlog_max_cache_size.test b/mysql-test/suite/rpl/t/rpl_stm_binlog_max_cache_size.test
index 352213304b6..93cc06111e4 100644
--- a/mysql-test/suite/rpl/t/rpl_stm_binlog_max_cache_size.test
+++ b/mysql-test/suite/rpl/t/rpl_stm_binlog_max_cache_size.test
@@ -1,8 +1,8 @@
--source include/have_innodb.inc
---source include/master-slave.inc
--source include/not_embedded.inc
--source include/not_windows.inc
--source include/have_binlog_format_statement.inc
+--source include/master-slave.inc
--source extra/rpl_tests/rpl_binlog_max_cache_size.test
--source include/rpl_end.inc
diff --git a/mysql-test/suite/rpl/t/rpl_stm_drop_create_temp_table.test b/mysql-test/suite/rpl/t/rpl_stm_drop_create_temp_table.test
index 7770fc77748..b395654a714 100644
--- a/mysql-test/suite/rpl/t/rpl_stm_drop_create_temp_table.test
+++ b/mysql-test/suite/rpl/t/rpl_stm_drop_create_temp_table.test
@@ -5,8 +5,8 @@
###################################################################################
--source include/big_test.inc
--source include/have_binlog_format_statement.inc
---source include/master-slave.inc
--source include/have_innodb.inc
+--source include/master-slave.inc
--source extra/rpl_tests/rpl_drop_create_temp_table.test
--source include/rpl_end.inc
diff --git a/mysql-test/suite/rpl/t/rpl_stm_implicit_commit_binlog.test b/mysql-test/suite/rpl/t/rpl_stm_implicit_commit_binlog.test
index 1e66b76abc8..774c87f551e 100644
--- a/mysql-test/suite/rpl/t/rpl_stm_implicit_commit_binlog.test
+++ b/mysql-test/suite/rpl/t/rpl_stm_implicit_commit_binlog.test
@@ -3,8 +3,8 @@
################################################################################
--source include/have_udf.inc
--source include/have_binlog_format_statement.inc
---source include/master-slave.inc
--source include/have_innodb.inc
+--source include/master-slave.inc
--let $engine=Innodb
set session storage_engine=innodb;
diff --git a/mysql-test/suite/rpl/t/rpl_stm_loadfile.test b/mysql-test/suite/rpl/t/rpl_stm_loadfile.test
index e82c951ce0c..016d3ed6090 100644
--- a/mysql-test/suite/rpl/t/rpl_stm_loadfile.test
+++ b/mysql-test/suite/rpl/t/rpl_stm_loadfile.test
@@ -12,8 +12,8 @@
##########
# Includes
--- source include/master-slave.inc
-- source include/have_binlog_format_statement.inc
+-- source include/master-slave.inc
disable_query_log;
call mtr.add_suppression("Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT");
diff --git a/mysql-test/suite/rpl/t/rpl_stm_start_stop_slave.test b/mysql-test/suite/rpl/t/rpl_stm_start_stop_slave.test
index dfe2e49bb90..76b2aed3f24 100644
--- a/mysql-test/suite/rpl/t/rpl_stm_start_stop_slave.test
+++ b/mysql-test/suite/rpl/t/rpl_stm_start_stop_slave.test
@@ -1,9 +1,9 @@
################################################################################
# Please, check ./extra/rpl_tests/rpl_start_stop_slave.test
################################################################################
---source include/master-slave.inc
--source include/have_binlog_format_statement.inc
--source include/have_innodb.inc
+--source include/master-slave.inc
# make innodb updates run fast
--connection slave
diff --git a/mysql-test/suite/rpl/t/rpl_stm_user_variables.test b/mysql-test/suite/rpl/t/rpl_stm_user_variables.test
index 64691a1b634..22a6600105e 100644
--- a/mysql-test/suite/rpl/t/rpl_stm_user_variables.test
+++ b/mysql-test/suite/rpl/t/rpl_stm_user_variables.test
@@ -2,8 +2,8 @@
# BUG#49562: SBR out of sync when using numeric data types + user variable
#
--- source include/master-slave.inc
-- source include/have_binlog_format_statement.inc
+-- source include/master-slave.inc
## Setup user variables for several numeric types, so that we get
## coverage on the User_var_log_event different val types
diff --git a/mysql-test/suite/rpl/t/rpl_temp_table_mix_row.test b/mysql-test/suite/rpl/t/rpl_temp_table_mix_row.test
index 57954698a2c..1cc975e6ad4 100644
--- a/mysql-test/suite/rpl/t/rpl_temp_table_mix_row.test
+++ b/mysql-test/suite/rpl/t/rpl_temp_table_mix_row.test
@@ -9,9 +9,9 @@
# 4: sync to slave and check the number of temp tables on slave.
#
-source include/master-slave.inc;
source include/have_binlog_format_mixed.inc;
source include/have_innodb.inc;
+source include/master-slave.inc;
--echo ==== Initialize ====
diff --git a/mysql-test/suite/rpl/t/rpl_temporary_errors.test b/mysql-test/suite/rpl/t/rpl_temporary_errors.test
index 250ccf4c1cd..4a532976787 100644
--- a/mysql-test/suite/rpl/t/rpl_temporary_errors.test
+++ b/mysql-test/suite/rpl/t/rpl_temporary_errors.test
@@ -1,6 +1,6 @@
source include/have_binlog_format_row.inc;
-source include/master-slave.inc;
source include/have_innodb.inc;
+source include/master-slave.inc;
call mtr.add_suppression("Deadlock found");
call mtr.add_suppression("Can't find record in 't.'");
diff --git a/mysql-test/suite/rpl/t/sec_behind_master-5114.test b/mysql-test/suite/rpl/t/sec_behind_master-5114.test
index ff8cab54c4f..d1d21bfa766 100644
--- a/mysql-test/suite/rpl/t/sec_behind_master-5114.test
+++ b/mysql-test/suite/rpl/t/sec_behind_master-5114.test
@@ -1,5 +1,5 @@
-source include/master-slave.inc;
source include/have_binlog_format_statement.inc;
+source include/master-slave.inc;
call mtr.add_suppression("Unsafe statement written to the binary log");
diff --git a/mysql-test/t/create_or_replace2.test b/mysql-test/t/create_or_replace2.test
index be1bd9a3d81..da451796e12 100644
--- a/mysql-test/t/create_or_replace2.test
+++ b/mysql-test/t/create_or_replace2.test
@@ -3,9 +3,9 @@
#
--source include/have_debug.inc
---source include/master-slave.inc
--source include/have_binlog_format_row.inc
--source include/have_xtradb.inc
+--source include/master-slave.inc
--disable_warnings
drop table if exists t1;
diff --git a/mysql-test/t/insert.test b/mysql-test/t/insert.test
index bec76fb5154..3092608f893 100644
--- a/mysql-test/t/insert.test
+++ b/mysql-test/t/insert.test
@@ -602,3 +602,13 @@ remove_file $MYSQLD_DATADIR/test/t1.txt;
drop view v1;
drop table t1;
SET @@sql_mode= @save_mode;
+
+#
+# MDEV-13861 Assertion `0' failed in Protocol::end_statement
+#
+CREATE TABLE t1 (f INT);
+CREATE VIEW v1 AS SELECT * FROM t1 WHERE f <=> 'foo' WITH CHECK OPTION;
+--error ER_VIEW_CHECK_FAILED
+REPLACE INTO v1 SET f = NULL;
+DROP VIEW v1;
+DROP TABLE t1;
diff --git a/mysql-test/t/stat_tables_repl.test b/mysql-test/t/stat_tables_repl.test
index 999c49d37cf..ac24c9dcbd7 100644
--- a/mysql-test/t/stat_tables_repl.test
+++ b/mysql-test/t/stat_tables_repl.test
@@ -1,6 +1,6 @@
--source include/have_stat_tables.inc
---source include/master-slave.inc
--source include/have_binlog_format_row.inc
+--source include/master-slave.inc
--echo #
--echo # Bug mdev-485: unexpected failure with replication of DROP/ALTER table
diff --git a/sql/log.cc b/sql/log.cc
index bb93b723a41..a9f486d88c1 100644
--- a/sql/log.cc
+++ b/sql/log.cc
@@ -9645,6 +9645,8 @@ binlog_background_thread(void *arg __attribute__((unused)))
{
THD_STAGE_INFO(thd, stage_binlog_processing_checkpoint_notify);
DEBUG_SYNC(thd, "binlog_background_thread_before_mark_xid_done");
+ /* Set the thread start time */
+ thd->set_time();
/* Grab next pointer first, as mark_xid_done() may free the element. */
next= queue->next_in_queue;
mysql_bin_log.mark_xid_done(queue->binlog_id, true);
diff --git a/sql/sql_class.h b/sql/sql_class.h
index f64e7cb5a3f..4556487bdfe 100644
--- a/sql/sql_class.h
+++ b/sql/sql_class.h
@@ -1549,6 +1549,29 @@ public:
/**
+ Implements the trivial error handler which counts errors as they happen.
+*/
+
+class Counting_error_handler : public Internal_error_handler
+{
+public:
+ int errors;
+ bool handle_condition(THD *thd,
+ uint sql_errno,
+ const char* sqlstate,
+ Sql_condition::enum_warning_level level,
+ const char* msg,
+ Sql_condition ** cond_hdl)
+ {
+ if (level == Sql_condition::WARN_LEVEL_ERROR)
+ errors++;
+ return false;
+ }
+ Counting_error_handler() : errors(0) {}
+};
+
+
+/**
This class is an internal error handler implementation for
DROP TABLE statements. The thing is that there may be warnings during
execution of these statements, which should not be exposed to the user.
diff --git a/sql/table.cc b/sql/table.cc
index 68961fbecaa..94b3bc9d526 100644
--- a/sql/table.cc
+++ b/sql/table.cc
@@ -4715,24 +4715,30 @@ void TABLE_LIST::cleanup_items()
int TABLE_LIST::view_check_option(THD *thd, bool ignore_failure)
{
- if (check_option && check_option->val_int() == 0)
+ if (check_option)
{
- TABLE_LIST *main_view= top_table();
- if (ignore_failure)
+ Counting_error_handler ceh;
+ thd->push_internal_handler(&ceh);
+ bool res= check_option->val_int() == 0;
+ thd->pop_internal_handler();
+ if (ceh.errors)
+ return(VIEW_CHECK_ERROR);
+ if (res)
{
- push_warning_printf(thd, Sql_condition::WARN_LEVEL_WARN,
- ER_VIEW_CHECK_FAILED,
- ER_THD(thd, ER_VIEW_CHECK_FAILED),
- main_view->view_db.str, main_view->view_name.str);
- return(VIEW_CHECK_SKIP);
+ TABLE_LIST *main_view= top_table();
+ if (ignore_failure)
+ {
+ push_warning_printf(thd, Sql_condition::WARN_LEVEL_WARN,
+ ER_VIEW_CHECK_FAILED,
+ ER_THD(thd, ER_VIEW_CHECK_FAILED),
+ main_view->view_db.str, main_view->view_name.str);
+ return(VIEW_CHECK_SKIP);
+ }
+ my_error(ER_VIEW_CHECK_FAILED, MYF(0), main_view->view_db.str,
+ main_view->view_name.str);
+ return(VIEW_CHECK_ERROR);
}
- my_error(ER_VIEW_CHECK_FAILED, MYF(0), main_view->view_db.str,
- main_view->view_name.str);
- return(VIEW_CHECK_ERROR);
}
- /* We check thd->error() because it can be set by conversion problem. */
- if (thd->is_error())
- return(VIEW_CHECK_ERROR);
return(VIEW_CHECK_OK);
}
diff --git a/storage/connect/CMakeLists.txt b/storage/connect/CMakeLists.txt
index f0f34c8eefc..1f687c3c8d8 100644
--- a/storage/connect/CMakeLists.txt
+++ b/storage/connect/CMakeLists.txt
@@ -247,7 +247,7 @@ ENDIF(CONNECT_WITH_ODBC)
#
# JDBC with MongoDB Java Driver included but disabled
#
-OPTION(CONNECT_WITH_MONGO "Compile CONNECT storage engine with MONGO support" ON)
+#OPTION(CONNECT_WITH_MONGO "Compile CONNECT storage engine with MONGO support" ON)
OPTION(CONNECT_WITH_JDBC "Compile CONNECT storage engine with JDBC support" ON)
IF(CONNECT_WITH_JDBC)
diff --git a/storage/connect/ha_connect.cc b/storage/connect/ha_connect.cc
index 0278211c620..692c7674eb6 100644
--- a/storage/connect/ha_connect.cc
+++ b/storage/connect/ha_connect.cc
@@ -5379,10 +5379,10 @@ static int connect_assisted_discovery(handlerton *, THD* thd,
#endif // __WIN__
//int hdr, mxe;
int port = 0, mxr = 0, rc = 0, mul = 0, lrecl = 0;
+ PCSZ tabtyp = NULL;
#if defined(ODBC_SUPPORT)
POPARM sop= NULL;
PCSZ ucnc= NULL;
- PCSZ tabtyp = NULL;
bool cnc= false;
int cto= -1, qto= -1;
#endif // ODBC_SUPPORT
diff --git a/storage/connect/preparse.h b/storage/connect/preparse.h
index f16624548fb..3db7a2af1cd 100644
--- a/storage/connect/preparse.h
+++ b/storage/connect/preparse.h
@@ -8,7 +8,7 @@
/***********************************************************************/
typedef struct _datpar {
const char *Format; // Points to format to decode
- char *Curp; // Points to current parsing position
+ const char *Curp; // Points to current parsing position
char *InFmt; // Start of input format
char *OutFmt; // Start of output format
int Index[8]; // Indexes of date values
diff --git a/storage/connect/tabmysql.h b/storage/connect/tabmysql.h
index 39fba87bcc9..4b61c7eb762 100644
--- a/storage/connect/tabmysql.h
+++ b/storage/connect/tabmysql.h
@@ -135,7 +135,7 @@ class TDBMYSQL : public TDBEXT {
int m_Rc; // Return code from command
//int AftRows; // The number of affected rows
int N; // The current table index
- int Port; // MySQL port number (0 = default)
+ unsigned Port; // MySQL port number (0 = default)
//int Nparm; // The number of statement parameters
//int Quoted; // The identifier quoting level
}; // end of class TDBMYSQL
diff --git a/storage/connect/tabutil.cpp b/storage/connect/tabutil.cpp
index a2c04e2cf62..af77c87ef8d 100644
--- a/storage/connect/tabutil.cpp
+++ b/storage/connect/tabutil.cpp
@@ -120,7 +120,7 @@ PQRYRES TabColumns(PGLOBAL g, THD *thd, const char *db,
FLD_REM, FLD_NO, FLD_CHARSET};
unsigned int length[] = {0, 4, 16, 4, 4, 4, 4, 4, 0, 32, 32};
PCSZ fmt;
- char *pn, *tn, *fld, *colname, *chset, v;
+ char *pn, *tn, *fld, *colname, v; //, *chset;
int i, n, ncol = sizeof(buftyp) / sizeof(int);
int prec, len, type, scale;
int zconv = GetConvSize();
@@ -185,7 +185,7 @@ PQRYRES TabColumns(PGLOBAL g, THD *thd, const char *db,
colname = (char *)fp->field_name;
crp->Kdata->SetValue(colname, i);
- chset = (char *)fp->charset()->name;
+// chset = (char *)fp->charset()->name;
// v = (!strcmp(chset, "binary")) ? 'B' : 0;
v = 0;