Merge lp:~akopytov/percona-xtrabackup/rebase-2.2-on-mysql-5.6.14 into lp:percona-xtrabackup/2.2

Proposed by Alexey Kopytov
Status: Merged
Approved by: Alexey Kopytov
Approved revision: no longer in the source branch.
Merged at revision: 4906
Proposed branch: lp:~akopytov/percona-xtrabackup/rebase-2.2-on-mysql-5.6.14
Merge into: lp:percona-xtrabackup/2.2
Prerequisite: lp:~akopytov/percona-xtrabackup/single-binary
Diff against target: 79920 lines (+26270/-13255) (has conflicts)
1493 files modified
BUILD/SETUP.sh (+2/-2)
BUILD/compile-pentium (+1/-1)
BUILD/compile-pentium-debug-max-no-ndb (+1/-1)
BUILD/compile-pentium-gcov (+1/-1)
BUILD/compile-pentium-gprof (+1/-1)
BUILD/compile-pentium-valgrind-max-no-ndb (+2/-2)
BUILD/compile-pentium64 (+2/-2)
CMakeLists.txt (+7/-3)
Docs/mysql.info (+1/-2)
INSTALL-SOURCE (+1/-2)
INSTALL-WIN-SOURCE (+1/-2)
README (+56/-56)
VERSION (+1/-1)
client/CMakeLists.txt (+3/-5)
client/completion_hash.h (+2/-2)
client/echo.c (+1/-1)
client/mysql.cc (+38/-13)
client/mysql_plugin.c (+1/-1)
client/mysql_upgrade.c (+66/-3)
client/mysqlbinlog.cc (+133/-6)
client/mysqldump.c (+67/-32)
client/mysqltest.cc (+9/-2)
client/sql_string.h (+2/-1)
cmake/build_configurations/compiler_options.cmake (+2/-2)
cmake/build_configurations/feature_set.cmake (+2/-2)
cmake/build_configurations/mysql_release.cmake (+1/-2)
cmake/dtrace.cmake (+2/-2)
cmake/install_macros.cmake (+10/-10)
cmake/mysql_version.cmake (+2/-1)
cmake/os/WindowsCache.cmake (+3/-2)
cmake/package_name.cmake (+13/-5)
cmake/readline.cmake (+60/-49)
cmd-line-utils/libedit/readline.c (+1/-1)
config.h.cmake (+2/-2)
configure.cmake (+3/-1)
dbug/dbug.c (+74/-32)
extra/charset2html.c (+1/-1)
extra/comp_err.c (+19/-1)
extra/yassl/COPYING (+2/-2)
extra/yassl/include/openssl/generate_prefix_files.pl (+1/-1)
extra/yassl/src/crypto_wrapper.cpp (+1/-1)
extra/yassl/src/make.bat (+1/-1)
extra/yassl/src/yassl_int.cpp (+1/-1)
extra/yassl/taocrypt/COPYING (+2/-2)
extra/yassl/taocrypt/benchmark/make.bat (+1/-1)
extra/yassl/taocrypt/src/algebra.cpp (+1/-1)
extra/yassl/taocrypt/src/integer.cpp (+1/-1)
extra/yassl/taocrypt/src/make.bat (+1/-1)
extra/yassl/taocrypt/test/make.bat (+1/-1)
extra/yassl/testsuite/make.bat (+1/-1)
include/atomic/rwlock.h (+1/-35)
include/big_endian.h (+2/-2)
include/byte_order_generic.h (+2/-2)
include/byte_order_generic_x86.h (+2/-2)
include/byte_order_generic_x86_64.h (+2/-2)
include/little_endian.h (+2/-2)
include/my_base.h (+3/-1)
include/my_bitmap.h (+1/-1)
include/my_compare.h (+1/-1)
include/my_dbug.h (+13/-2)
include/my_default.h (+2/-2)
include/my_getopt.h (+3/-0)
include/my_global.h (+5/-9)
include/my_md5.h (+1/-1)
include/my_pthread.h (+11/-2)
include/my_sys.h (+1/-6)
include/my_user.h (+1/-1)
include/my_xml.h (+1/-1)
include/mysql/innodb_priv.h (+1/-1)
include/mysql/plugin.h (+11/-0)
include/mysql/plugin_audit.h (+5/-1)
include/mysql/plugin_audit.h.pp (+4/-0)
include/mysql_time.h (+1/-1)
include/t_ctype.h (+1/-1)
include/typelib.h (+1/-1)
libmysql/CMakeLists.txt (+16/-4)
libmysql/authentication_win/common.cc (+1/-1)
libmysql/authentication_win/common.h (+1/-1)
libmysql/authentication_win/handshake.cc (+7/-8)
libmysql/authentication_win/handshake.h (+8/-8)
libmysql/authentication_win/handshake_client.cc (+1/-1)
libmysql/authentication_win/log_client.cc (+1/-1)
libmysql/authentication_win/plugin_client.cc (+1/-1)
libmysql/conf_to_src.c (+1/-1)
libmysql/libmysql.def (+7/-0)
libmysqld/examples/CMakeLists.txt (+3/-4)
libmysqld/examples/test-run (+1/-1)
libmysqld/lib_sql.cc (+10/-8)
mysql-test/collections/default.daily (+6/-5)
mysql-test/collections/default.daily-valgrind (+15/-0)
mysql-test/collections/default.experimental (+4/-3)
mysql-test/collections/default.push (+4/-4)
mysql-test/collections/default.push-valgrind (+2/-0)
mysql-test/collections/default.release.in (+1/-1)
mysql-test/collections/default.weekly (+15/-21)
mysql-test/collections/default.weekly-valgrind (+17/-0)
mysql-test/extra/binlog_tests/ctype_ucs_binlog.test (+1/-1)
mysql-test/extra/binlog_tests/mysqlbinlog_row_engine.inc (+4/-4)
mysql-test/extra/binlog_tests/mysqlbinlog_start_stop_2.inc (+1/-1)
mysql-test/extra/rpl_tests/rpl_conflicts.test (+8/-13)
mysql-test/extra/rpl_tests/rpl_extra_col_master.test (+5/-15)
mysql-test/extra/rpl_tests/rpl_extra_col_slave.test (+40/-43)
mysql-test/extra/rpl_tests/rpl_mts_crash_safe.test (+2/-0)
mysql-test/extra/rpl_tests/rpl_row_basic.test (+2/-6)
mysql-test/extra/rpl_tests/rpl_row_empty_imgs.test (+1/-1)
mysql-test/extra/rpl_tests/rpl_row_tabledefs.test (+3/-6)
mysql-test/extra/rpl_tests/rpl_stress_test.inc (+111/-0)
mysql-test/include/default_mysqld.cnf (+2/-2)
mysql-test/include/explain_json.inc (+1/-1)
mysql-test/include/handler.inc (+2/-3)
mysql-test/include/have_daemon_example_plugin.inc (+16/-0)
mysql-test/include/have_perfschema.inc (+1/-1)
mysql-test/include/have_plugin_auth.inc (+4/-5)
mysql-test/include/have_plugin_interface.inc (+4/-5)
mysql-test/include/have_plugin_server.inc (+4/-5)
mysql-test/include/have_valgrind.inc (+11/-0)
mysql-test/include/index_merge_delete.inc (+215/-0)
mysql-test/include/index_merge_insert-and-replace.inc (+137/-0)
mysql-test/include/index_merge_intersect_dml.inc (+197/-0)
mysql-test/include/index_merge_multi_col_setup.inc (+75/-0)
mysql-test/include/index_merge_single_col_setup.inc (+72/-0)
mysql-test/include/index_merge_update.inc (+130/-0)
mysql-test/include/install_semisync.inc (+39/-0)
mysql-test/include/mtr_warnings.sql (+4/-2)
mysql-test/include/restart_readonly_mysqld.inc (+21/-0)
mysql-test/include/rpl_stop_server.inc (+2/-2)
mysql-test/include/select.inc (+2/-0)
mysql-test/include/shutdown_mysqld.inc (+1/-1)
mysql-test/include/start_slave_sql.inc (+1/-1)
mysql-test/include/subquery.inc (+4/-0)
mysql-test/include/test_fieldsize.inc (+1/-2)
mysql-test/include/uninstall_semisync.inc (+23/-0)
mysql-test/lib/My/CoreDump.pm (+7/-3)
mysql-test/lib/My/SafeProcess/CMakeLists.txt (+16/-4)
mysql-test/lib/My/SafeProcess/safe_process.cc (+1/-1)
mysql-test/lib/My/SysInfo.pm (+2/-2)
mysql-test/lib/v1/mysql-test-run.pl (+5/-8)
mysql-test/mysql-test-run.pl (+13/-3)
mysql-test/purify.supp (+2/-2)
mysql-test/r/auth_rpl.result (+3/-3)
mysql-test/r/create.result (+3/-2)
mysql-test/r/derived.result (+1/-1)
mysql-test/r/distinct.result (+3/-3)
mysql-test/r/explain.result (+5/-1)
mysql-test/r/explain_json_all.result (+11/-15)
mysql-test/r/explain_json_none.result (+11/-15)
mysql-test/r/func_str.result (+2/-2)
mysql-test/r/group_by.result (+1/-1)
mysql-test/r/group_min_max.result (+5/-2)
mysql-test/r/handler_innodb.result (+8/-3)
mysql-test/r/handler_myisam.result (+8/-3)
mysql-test/r/heap.result (+1/-1)
mysql-test/r/index_merge_delete.result (+564/-0)
mysql-test/r/index_merge_insert-and-replace.result (+340/-0)
mysql-test/r/index_merge_intersect_dml.result (+144/-0)
mysql-test/r/index_merge_update.result (+328/-0)
mysql-test/r/innodb_explain_json_non_select_all.result (+70/-28)
mysql-test/r/innodb_explain_json_non_select_none.result (+70/-28)
mysql-test/r/innodb_explain_non_select_all.result (+28/-28)
mysql-test/r/innodb_explain_non_select_none.result (+28/-28)
mysql-test/r/log_tables.result (+1/-1)
mysql-test/r/mdl_sync.result (+5/-25)
mysql-test/r/myisam_explain_json_non_select_all.result (+70/-28)
mysql-test/r/myisam_explain_json_non_select_none.result (+70/-28)
mysql-test/r/myisam_explain_non_select_all.result (+28/-28)
mysql-test/r/myisam_explain_non_select_none.result (+28/-28)
mysql-test/r/myisam_row_rpl.result (+1/-1)
mysql-test/r/mysqld--help-notwin.result (+15/-5)
mysql-test/r/mysqld--help-win.result (+15/-5)
mysql-test/r/mysqldump.result (+1/-1)
mysql-test/r/olap.result (+17/-78)
mysql-test/r/partition_explicit_prune.result (+1/-1)
mysql-test/r/partition_locking.result (+40/-40)
mysql-test/r/partition_myisam.result (+2/-2)
mysql-test/r/partition_open_files_limit.result (+1/-1)
mysql-test/r/partition_pruning.result (+3/-3)
mysql-test/r/plugin.result (+81/-1)
mysql-test/r/plugin_auth.result (+2/-4)
mysql-test/r/plugin_auth_qa.result (+4/-2)
mysql-test/r/plugin_auth_qa_1.result (+2/-0)
mysql-test/r/plugin_auth_qa_2.result (+4/-22)
mysql-test/r/ps_grant.result (+1/-2)
mysql-test/r/rewrite_general_log.result (+3/-0)
mysql-test/r/rpl_mysqldump_slave.result (+2/-2)
mysql-test/r/select_all.result (+33/-3)
mysql-test/r/select_all_bka.result (+33/-3)
mysql-test/r/select_all_bka_nixbnl.result (+33/-3)
mysql-test/r/select_icp_mrr.result (+33/-3)
mysql-test/r/select_icp_mrr_bka.result (+33/-3)
mysql-test/r/select_icp_mrr_bka_nixbnl.result (+33/-3)
mysql-test/r/select_none.result (+33/-3)
mysql-test/r/select_none_bka.result (+33/-3)
mysql-test/r/select_none_bka_nixbnl.result (+33/-3)
mysql-test/r/sp_notembedded.result (+5/-3)
mysql-test/r/subquery_all.result (+6/-2)
mysql-test/r/subquery_all_bka.result (+6/-2)
mysql-test/r/subquery_all_bka_nixbnl.result (+6/-2)
mysql-test/r/subquery_nomat_nosj.result (+6/-2)
mysql-test/r/subquery_nomat_nosj_bka.result (+6/-2)
mysql-test/r/subquery_nomat_nosj_bka_nixbnl.result (+6/-2)
mysql-test/r/subquery_none.result (+6/-2)
mysql-test/r/subquery_none_bka.result (+6/-2)
mysql-test/r/subquery_none_bka_nixbnl.result (+6/-2)
mysql-test/r/table_definition_cache_functionality.result (+6/-6)
mysql-test/r/table_open_cache_functionality.result (+2/-2)
mysql-test/r/user_var.result (+6/-6)
mysql-test/suite/auth_sec/r/key_value_auth.result (+4/-4)
mysql-test/suite/auth_sec/r/server_withoutssl_client_withoutssl.result (+8/-16)
mysql-test/suite/auth_sec/r/server_withoutssl_client_withssl.result (+8/-0)
mysql-test/suite/auth_sec/t/key_value_auth.test (+4/-4)
mysql-test/suite/auth_sec/t/server_withoutssl_client_withoutssl.test (+6/-2)
mysql-test/suite/auth_sec/t/server_withoutssl_client_withssl.test (+3/-3)
mysql-test/suite/binlog/r/binlog_database.result (+1/-1)
mysql-test/suite/binlog/r/binlog_gtid_errors.result (+8/-3)
mysql-test/suite/binlog/r/binlog_gtid_mysqlbinlog_row.result (+1/-0)
mysql-test/suite/binlog/r/binlog_gtid_mysqlbinlog_row_innodb.result (+1399/-1368)
mysql-test/suite/binlog/r/binlog_gtid_mysqlbinlog_row_myisam.result (+1419/-1388)
mysql-test/suite/binlog/r/binlog_gtid_mysqlbinlog_start_stop.result (+139/-105)
mysql-test/suite/binlog/r/binlog_gtid_row_ctype_ucs.result (+2/-1)
mysql-test/suite/binlog/r/binlog_gtid_stm_ctype_ucs.result (+2/-1)
mysql-test/suite/binlog/r/binlog_index.result (+4/-0)
mysql-test/suite/binlog/r/binlog_innodb_row.result (+1/-1)
mysql-test/suite/binlog/r/binlog_max_extension.result (+3/-0)
mysql-test/suite/binlog/r/binlog_rewrite.result (+1/-1)
mysql-test/suite/binlog/r/binlog_row_binlog.result (+2/-2)
mysql-test/suite/binlog/r/binlog_row_drop_tmp_tbl.result (+6/-6)
mysql-test/suite/binlog/r/binlog_row_mix_innodb_myisam.result (+1/-1)
mysql-test/suite/binlog/r/binlog_stm_drop_tmp_tbl.result (+5/-5)
mysql-test/suite/binlog/t/binlog_gtid_errors.test (+7/-0)
mysql-test/suite/binlog/t/binlog_index.test (+3/-0)
mysql-test/suite/binlog/t/binlog_killed_simulate.test (+4/-5)
mysql-test/suite/binlog/t/binlog_max_extension.test (+3/-2)
mysql-test/suite/engines/funcs/r/rpl_row_until.result (+2/-2)
mysql-test/suite/funcs_1/datadict/processlist_priv.inc (+1/-1)
mysql-test/suite/funcs_1/r/is_columns_mysql.result (+4/-4)
mysql-test/suite/funcs_1/r/is_columns_mysql_embedded.result (+4/-4)
mysql-test/suite/funcs_1/r/is_tables_mysql.result (+1/-1)
mysql-test/suite/funcs_1/r/is_tables_mysql_embedded.result (+2/-2)
mysql-test/suite/funcs_1/r/processlist_priv_no_prot.result (+1/-1)
mysql-test/suite/funcs_1/r/processlist_priv_ps.result (+1/-1)
mysql-test/suite/innodb/r/innodb-wl6445-1.result (+6/-6)
mysql-test/suite/innodb/r/innodb-wl6445-2.result (+4/-2)
mysql-test/suite/innodb/r/innodb_bug13867871.result (+4/-2)
mysql-test/suite/innodb/r/innodb_monitor.result (+1/-0)
mysql-test/suite/innodb/r/innodb_mysql.result (+1/-1)
mysql-test/suite/innodb/t/innodb-wl6445-1.test (+6/-6)
mysql-test/suite/innodb/t/innodb-wl6445-2.test (+4/-3)
mysql-test/suite/innodb/t/innodb_bug13867871.test (+12/-2)
mysql-test/suite/innodb/t/innodb_page_size_func.test (+3/-2)
mysql-test/suite/innodb_fts/r/fulltext.result (+10/-14)
mysql-test/suite/innodb_fts/r/fulltext_left_join.result (+2/-4)
mysql-test/suite/innodb_fts/r/fulltext_misc.result (+1/-1)
mysql-test/suite/innodb_fts/r/fulltext_var.result (+1/-4)
mysql-test/suite/innodb_fts/r/innodb-fts-basic.result (+3/-0)
mysql-test/suite/innodb_fts/r/innodb_fts_misc.result (+87/-6)
mysql-test/suite/innodb_fts/r/innodb_fts_misc_1.result (+1/-1)
mysql-test/suite/innodb_fts/r/innodb_fts_plugin.result (+29/-0)
mysql-test/suite/innodb_fts/r/innodb_fts_proximity.result (+1/-0)
mysql-test/suite/innodb_fts/r/innodb_fts_result_cache_limit.result (+31/-0)
mysql-test/suite/innodb_fts/t/fulltext.test (+9/-6)
mysql-test/suite/innodb_fts/t/fulltext_left_join.test (+2/-0)
mysql-test/suite/innodb_fts/t/fulltext_misc.test (+1/-1)
mysql-test/suite/innodb_fts/t/fulltext_order_by.test (+1/-1)
mysql-test/suite/innodb_fts/t/fulltext_var.test (+2/-0)
mysql-test/suite/innodb_fts/t/innodb_fts_misc.test (+69/-1)
mysql-test/suite/innodb_fts/t/innodb_fts_misc_1.test (+1/-0)
mysql-test/suite/innodb_fts/t/innodb_fts_plugin.test (+45/-0)
mysql-test/suite/innodb_fts/t/innodb_fts_result_cache_limit.test (+52/-0)
mysql-test/suite/large_tests/r/rpl_slave_net_timeout.result (+2/-2)
mysql-test/suite/opt_trace/r/bugs_no_prot_none.result (+9/-9)
mysql-test/suite/opt_trace/r/bugs_ps_prot_none.result (+9/-9)
mysql-test/suite/opt_trace/r/eq_range_statistics.result (+2/-6)
mysql-test/suite/opt_trace/r/range_no_prot.result (+6/-8)
mysql-test/suite/opt_trace/r/range_ps_prot.result (+6/-8)
mysql-test/suite/opt_trace/r/subquery_no_prot.result (+2/-2)
mysql-test/suite/opt_trace/r/subquery_ps_prot.result (+2/-2)
mysql-test/suite/opt_trace/validate_json.py (+1/-1)
mysql-test/suite/parts/r/rpl-partition-dml-1-1-innodb.result (+1/-1)
mysql-test/suite/parts/r/rpl-partition-dml-1-1-myisam.result (+1/-1)
mysql-test/suite/parts/r/rpl_partition.result (+1/-1)
mysql-test/suite/perfschema/include/disable_instruments.inc (+23/-0)
mysql-test/suite/perfschema/include/enable_instruments.inc (+23/-0)
mysql-test/suite/perfschema/include/rpl_statements_truncate.inc (+15/-0)
mysql-test/suite/perfschema/include/sizing_auto.inc (+2/-2)
mysql-test/suite/perfschema/r/binlog_edge_row.result (+4/-0)
mysql-test/suite/perfschema/r/hostcache_ipv4_blocked.result (+215/-5)
mysql-test/suite/perfschema/r/hostcache_ipv6_blocked.result (+215/-5)
mysql-test/suite/perfschema/r/ortho_iter.result (+1/-1)
mysql-test/suite/perfschema/r/pfs_upgrade_event.result (+53/-53)
mysql-test/suite/perfschema/r/pfs_upgrade_func.result (+53/-53)
mysql-test/suite/perfschema/r/pfs_upgrade_proc.result (+53/-53)
mysql-test/suite/perfschema/r/pfs_upgrade_table.result (+53/-53)
mysql-test/suite/perfschema/r/pfs_upgrade_view.result (+53/-53)
mysql-test/suite/perfschema/r/privilege_table_io.result (+1/-1)
mysql-test/suite/perfschema/r/relaylog.result (+6/-2)
mysql-test/suite/perfschema/r/rpl_gtid_func.result (+1/-1)
mysql-test/suite/perfschema/r/rpl_statements.result (+244/-0)
mysql-test/suite/perfschema/r/setup_instruments_defaults.result (+34/-6)
mysql-test/suite/perfschema/r/sizing_default.result (+100/-100)
mysql-test/suite/perfschema/r/sizing_high.result (+17/-17)
mysql-test/suite/perfschema/r/sizing_low.result (+17/-17)
mysql-test/suite/perfschema/r/sizing_med.result (+17/-17)
mysql-test/suite/perfschema/r/sizing_off.result (+1/-1)
mysql-test/suite/perfschema/r/start_server_disable_idle.result (+1/-1)
mysql-test/suite/perfschema/r/start_server_disable_stages.result (+1/-1)
mysql-test/suite/perfschema/r/start_server_disable_statements.result (+1/-1)
mysql-test/suite/perfschema/r/start_server_disable_waits.result (+1/-1)
mysql-test/suite/perfschema/r/start_server_innodb.result (+1/-1)
mysql-test/suite/perfschema/r/start_server_no_account.result (+1/-1)
mysql-test/suite/perfschema/r/start_server_no_cond_class.result (+1/-1)
mysql-test/suite/perfschema/r/start_server_no_cond_inst.result (+1/-1)
mysql-test/suite/perfschema/r/start_server_no_file_class.result (+1/-1)
mysql-test/suite/perfschema/r/start_server_no_file_inst.result (+1/-1)
mysql-test/suite/perfschema/r/start_server_no_host.result (+1/-1)
mysql-test/suite/perfschema/r/start_server_no_mutex_class.result (+1/-1)
mysql-test/suite/perfschema/r/start_server_no_mutex_inst.result (+1/-1)
mysql-test/suite/perfschema/r/start_server_no_rwlock_class.result (+1/-1)
mysql-test/suite/perfschema/r/start_server_no_rwlock_inst.result (+1/-1)
mysql-test/suite/perfschema/r/start_server_no_setup_actors.result (+1/-1)
mysql-test/suite/perfschema/r/start_server_no_setup_objects.result (+1/-1)
mysql-test/suite/perfschema/r/start_server_no_socket_class.result (+1/-1)
mysql-test/suite/perfschema/r/start_server_no_socket_inst.result (+1/-1)
mysql-test/suite/perfschema/r/start_server_no_stage_class.result (+1/-1)
mysql-test/suite/perfschema/r/start_server_no_stages_history.result (+1/-1)
mysql-test/suite/perfschema/r/start_server_no_stages_history_long.result (+1/-1)
mysql-test/suite/perfschema/r/start_server_no_statements_history.result (+1/-1)
mysql-test/suite/perfschema/r/start_server_no_statements_history_long.result (+1/-1)
mysql-test/suite/perfschema/r/start_server_no_table_hdl.result (+1/-1)
mysql-test/suite/perfschema/r/start_server_no_table_inst.result (+1/-1)
mysql-test/suite/perfschema/r/start_server_no_thread_class.result (+1/-1)
mysql-test/suite/perfschema/r/start_server_no_thread_inst.result (+1/-1)
mysql-test/suite/perfschema/r/start_server_no_user.result (+1/-1)
mysql-test/suite/perfschema/r/start_server_no_waits_history.result (+1/-1)
mysql-test/suite/perfschema/r/start_server_no_waits_history_long.result (+1/-1)
mysql-test/suite/perfschema/r/start_server_off.result (+1/-1)
mysql-test/suite/perfschema/r/start_server_on.result (+1/-1)
mysql-test/suite/perfschema/r/table_aggregate_global_2u_2t.result (+1/-1)
mysql-test/suite/perfschema/r/table_aggregate_global_2u_3t.result (+1/-1)
mysql-test/suite/perfschema/r/table_aggregate_global_4u_2t.result (+1/-1)
mysql-test/suite/perfschema/r/table_aggregate_global_4u_3t.result (+1/-1)
mysql-test/suite/perfschema/r/table_aggregate_hist_2u_2t.result (+1/-1)
mysql-test/suite/perfschema/r/table_aggregate_hist_2u_3t.result (+1/-1)
mysql-test/suite/perfschema/r/table_aggregate_hist_4u_2t.result (+1/-1)
mysql-test/suite/perfschema/r/table_aggregate_hist_4u_3t.result (+1/-1)
mysql-test/suite/perfschema/r/table_aggregate_off.result (+1/-1)
mysql-test/suite/perfschema/r/table_aggregate_thread_2u_2t.result (+1/-1)
mysql-test/suite/perfschema/r/table_aggregate_thread_2u_3t.result (+1/-1)
mysql-test/suite/perfschema/r/table_aggregate_thread_4u_2t.result (+1/-1)
mysql-test/suite/perfschema/r/table_aggregate_thread_4u_3t.result (+1/-1)
mysql-test/suite/perfschema/r/table_io_aggregate_global_2u_2t.result (+1/-1)
mysql-test/suite/perfschema/r/table_io_aggregate_global_2u_3t.result (+1/-1)
mysql-test/suite/perfschema/r/table_io_aggregate_global_4u_2t.result (+1/-1)
mysql-test/suite/perfschema/r/table_io_aggregate_global_4u_3t.result (+1/-1)
mysql-test/suite/perfschema/r/table_io_aggregate_hist_2u_2t.result (+1/-1)
mysql-test/suite/perfschema/r/table_io_aggregate_hist_2u_3t.result (+1/-1)
mysql-test/suite/perfschema/r/table_io_aggregate_hist_4u_2t.result (+1/-1)
mysql-test/suite/perfschema/r/table_io_aggregate_hist_4u_3t.result (+1/-1)
mysql-test/suite/perfschema/r/table_io_aggregate_thread_2u_2t.result (+1/-1)
mysql-test/suite/perfschema/r/table_io_aggregate_thread_2u_3t.result (+1/-1)
mysql-test/suite/perfschema/r/table_io_aggregate_thread_4u_2t.result (+1/-1)
mysql-test/suite/perfschema/r/table_io_aggregate_thread_4u_3t.result (+1/-1)
mysql-test/suite/perfschema/r/table_lock_aggregate_global_2u_2t.result (+1/-1)
mysql-test/suite/perfschema/r/table_lock_aggregate_global_2u_3t.result (+1/-1)
mysql-test/suite/perfschema/r/table_lock_aggregate_global_4u_2t.result (+1/-1)
mysql-test/suite/perfschema/r/table_lock_aggregate_global_4u_3t.result (+1/-1)
mysql-test/suite/perfschema/r/table_lock_aggregate_hist_2u_2t.result (+1/-1)
mysql-test/suite/perfschema/r/table_lock_aggregate_hist_2u_3t.result (+1/-1)
mysql-test/suite/perfschema/r/table_lock_aggregate_hist_4u_2t.result (+1/-1)
mysql-test/suite/perfschema/r/table_lock_aggregate_hist_4u_3t.result (+1/-1)
mysql-test/suite/perfschema/r/table_lock_aggregate_thread_2u_2t.result (+1/-1)
mysql-test/suite/perfschema/r/table_lock_aggregate_thread_2u_3t.result (+1/-1)
mysql-test/suite/perfschema/r/table_lock_aggregate_thread_4u_2t.result (+1/-1)
mysql-test/suite/perfschema/r/table_lock_aggregate_thread_4u_3t.result (+1/-1)
mysql-test/suite/perfschema/t/hostcache_ipv4_blocked.test (+75/-6)
mysql-test/suite/perfschema/t/hostcache_ipv6_blocked.test (+75/-6)
mysql-test/suite/perfschema/t/rpl_statements-master.opt (+1/-0)
mysql-test/suite/perfschema/t/rpl_statements-slave.opt (+1/-0)
mysql-test/suite/perfschema/t/rpl_statements.test (+338/-0)
mysql-test/suite/perfschema/t/setup_instruments_defaults-master.opt (+19/-10)
mysql-test/suite/perfschema/t/setup_instruments_defaults.test (+52/-9)
mysql-test/suite/perfschema/t/sizing_default.cnf (+7/-4)
mysql-test/suite/perfschema/t/sizing_default.test (+22/-0)
mysql-test/suite/rpl/r/rpl_000010.result (+1/-1)
mysql-test/suite/rpl/r/rpl_000011.result (+1/-1)
mysql-test/suite/rpl/r/rpl_000013.result (+1/-1)
mysql-test/suite/rpl/r/rpl_000017.result (+1/-1)
mysql-test/suite/rpl/r/rpl_DML_error.result (+1/-1)
mysql-test/suite/rpl/r/rpl_EE_err.result (+1/-1)
mysql-test/suite/rpl/r/rpl_LD_INFILE.result (+1/-1)
mysql-test/suite/rpl/r/rpl_alter.result (+1/-1)
mysql-test/suite/rpl/r/rpl_alter_db.result (+1/-1)
mysql-test/suite/rpl/r/rpl_alter_repository.result (+3/-3)
mysql-test/suite/rpl/r/rpl_auto_increment.result (+1/-1)
mysql-test/suite/rpl/r/rpl_auto_increment_11932.result (+1/-1)
mysql-test/suite/rpl/r/rpl_auto_increment_bug33029.result (+1/-1)
mysql-test/suite/rpl/r/rpl_auto_increment_bug45679.result (+1/-1)
mysql-test/suite/rpl/r/rpl_auto_increment_update_failure.result (+1/-1)
mysql-test/suite/rpl/r/rpl_begin_commit_rollback.result (+1/-1)
mysql-test/suite/rpl/r/rpl_binlog_corruption.result (+1/-1)
mysql-test/suite/rpl/r/rpl_binlog_errors.result (+1/-1)
mysql-test/suite/rpl/r/rpl_binlog_gcommit_options.result (+1/-1)
mysql-test/suite/rpl/r/rpl_binlog_grant.result (+1/-1)
mysql-test/suite/rpl/r/rpl_binlog_index.result (+1/-1)
mysql-test/suite/rpl/r/rpl_bit.result (+1/-1)
mysql-test/suite/rpl/r/rpl_bit_npk.result (+1/-1)
mysql-test/suite/rpl/r/rpl_blackhole.result (+1/-1)
mysql-test/suite/rpl/r/rpl_bug26395.result (+1/-1)
mysql-test/suite/rpl/r/rpl_bug31076.result (+1/-1)
mysql-test/suite/rpl/r/rpl_bug33931.result (+2/-2)
mysql-test/suite/rpl/r/rpl_bug37426.result (+1/-1)
mysql-test/suite/rpl/r/rpl_bug38694.result (+1/-1)
mysql-test/suite/rpl/r/rpl_bug41902.result (+1/-1)
mysql-test/suite/rpl/r/rpl_change_master.result (+3/-3)
mysql-test/suite/rpl/r/rpl_change_master_crash_safe.result (+2/-2)
mysql-test/suite/rpl/r/rpl_change_master_dbug.result (+1/-1)
mysql-test/suite/rpl/r/rpl_charset.result (+1/-1)
mysql-test/suite/rpl/r/rpl_charset_sjis.result (+1/-1)
mysql-test/suite/rpl/r/rpl_checksum.result (+2/-2)
mysql-test/suite/rpl/r/rpl_checksum_cache.result (+1/-1)
mysql-test/suite/rpl/r/rpl_checksum_undef.result (+1/-1)
mysql-test/suite/rpl/r/rpl_circular_for_4_hosts.result (+12/-12)
mysql-test/suite/rpl/r/rpl_colSize.result (+1/-1)
mysql-test/suite/rpl/r/rpl_commit_after_flush.result (+1/-1)
mysql-test/suite/rpl/r/rpl_concurrency_error.result (+1/-1)
mysql-test/suite/rpl/r/rpl_conditional_comments.result (+1/-1)
mysql-test/suite/rpl/r/rpl_connection.result (+3/-3)
mysql-test/suite/rpl/r/rpl_corruption.result (+1/-1)
mysql-test/suite/rpl/r/rpl_crash_safe_master.result (+1/-1)
mysql-test/suite/rpl/r/rpl_create_database.result (+1/-1)
mysql-test/suite/rpl/r/rpl_create_if_not_exists.result (+1/-1)
mysql-test/suite/rpl/r/rpl_create_tmp_table_if_not_exists.result (+1/-1)
mysql-test/suite/rpl/r/rpl_cross_version.result (+1/-1)
mysql-test/suite/rpl/r/rpl_current_user.result (+2/-2)
mysql-test/suite/rpl/r/rpl_deadlock_innodb.result (+1/-1)
mysql-test/suite/rpl/r/rpl_delete_no_where.result (+1/-1)
mysql-test/suite/rpl/r/rpl_do_db_filter.result (+1/-1)
mysql-test/suite/rpl/r/rpl_do_grant.result (+1/-1)
mysql-test/suite/rpl/r/rpl_do_table_filter_insensitive.result (+1/-1)
mysql-test/suite/rpl/r/rpl_do_table_filter_sensitive.result (+1/-1)
mysql-test/suite/rpl/r/rpl_drop.result (+1/-1)
mysql-test/suite/rpl/r/rpl_drop_db.result (+1/-1)
mysql-test/suite/rpl/r/rpl_drop_temp.result (+1/-1)
mysql-test/suite/rpl/r/rpl_drop_view.result (+1/-1)
mysql-test/suite/rpl/r/rpl_dual_pos_advance.result (+2/-2)
mysql-test/suite/rpl/r/rpl_empty_master_host.result (+1/-1)
mysql-test/suite/rpl/r/rpl_err_ignoredtable.result (+1/-1)
mysql-test/suite/rpl/r/rpl_events.result (+1/-1)
mysql-test/suite/rpl/r/rpl_extra_col_master_innodb.result (+1/-6)
mysql-test/suite/rpl/r/rpl_extra_col_master_myisam.result (+1/-6)
mysql-test/suite/rpl/r/rpl_extra_col_slave_innodb.result (+26/-35)
mysql-test/suite/rpl/r/rpl_extra_col_slave_myisam.result (+26/-35)
mysql-test/suite/rpl/r/rpl_extra_row_data.result (+1/-1)
mysql-test/suite/rpl/r/rpl_failed_optimize.result (+1/-1)
mysql-test/suite/rpl/r/rpl_filter_database.result (+1/-1)
mysql-test/suite/rpl/r/rpl_filter_tables_not_exist.result (+1/-17)
mysql-test/suite/rpl/r/rpl_flush_logs.result (+1/-1)
mysql-test/suite/rpl/r/rpl_flushlog_loop.result (+2/-2)
mysql-test/suite/rpl/r/rpl_foreign_key_innodb.result (+1/-1)
mysql-test/suite/rpl/r/rpl_free_items.result (+1/-1)
mysql-test/suite/rpl/r/rpl_function_defaults.result (+1/-1)
mysql-test/suite/rpl/r/rpl_general_log.result (+1/-1)
mysql-test/suite/rpl/r/rpl_geometry.result (+1/-1)
mysql-test/suite/rpl/r/rpl_get_lock.result (+1/-1)
mysql-test/suite/rpl/r/rpl_get_master_version_and_clock.result (+1/-1)
mysql-test/suite/rpl/r/rpl_grant.result (+9/-8)
mysql-test/suite/rpl/r/rpl_grant_plugin.result (+1/-1)
mysql-test/suite/rpl/r/rpl_group_commit_deadlock.result (+33/-0)
mysql-test/suite/rpl/r/rpl_gtid_empty_group.result (+1/-1)
mysql-test/suite/rpl/r/rpl_gtid_execution.result (+1/-1)
mysql-test/suite/rpl/r/rpl_gtid_failover.result (+2/-2)
mysql-test/suite/rpl/r/rpl_gtid_mode.result (+1/-1)
mysql-test/suite/rpl/r/rpl_gtid_parallel.result (+1/-1)
mysql-test/suite/rpl/r/rpl_gtid_purged_fail_to_connect.result (+1/-1)
mysql-test/suite/rpl/r/rpl_gtid_purged_maintained.result (+1/-1)
mysql-test/suite/rpl/r/rpl_gtid_sql_until_before_after.result (+1/-1)
mysql-test/suite/rpl/r/rpl_heartbeat.result (+7/-7)
mysql-test/suite/rpl/r/rpl_heartbeat_2slaves.result (+3/-3)
mysql-test/suite/rpl/r/rpl_heartbeat_basic.result (+20/-20)
mysql-test/suite/rpl/r/rpl_heartbeat_ssl.result (+2/-2)
mysql-test/suite/rpl/r/rpl_idempotency.result (+1/-1)
mysql-test/suite/rpl/r/rpl_ignore_db_filter.result (+1/-1)
mysql-test/suite/rpl/r/rpl_ignore_grant.result (+1/-1)
mysql-test/suite/rpl/r/rpl_ignore_revoke.result (+1/-1)
mysql-test/suite/rpl/r/rpl_ignore_table.result (+1/-1)
mysql-test/suite/rpl/r/rpl_ignore_table_filter_insensitive.result (+1/-1)
mysql-test/suite/rpl/r/rpl_ignore_table_filter_sensitive.result (+1/-1)
mysql-test/suite/rpl/r/rpl_ignore_table_update.result (+1/-1)
mysql-test/suite/rpl/r/rpl_incident.result (+1/-1)
mysql-test/suite/rpl/r/rpl_init_slave.result (+1/-1)
mysql-test/suite/rpl/r/rpl_init_slave_errors.result (+1/-1)
mysql-test/suite/rpl/r/rpl_innodb_bug28430.result (+1/-1)
mysql-test/suite/rpl/r/rpl_innodb_bug30888.result (+1/-1)
mysql-test/suite/rpl/r/rpl_innodb_mixed_ddl.result (+1/-1)
mysql-test/suite/rpl/r/rpl_innodb_mixed_dml.result (+1/-1)
mysql-test/suite/rpl/r/rpl_insert.result (+1/-1)
mysql-test/suite/rpl/r/rpl_insert_id.result (+3/-3)
mysql-test/suite/rpl/r/rpl_insert_id_pk.result (+1/-1)
mysql-test/suite/rpl/r/rpl_insert_ignore.result (+1/-1)
mysql-test/suite/rpl/r/rpl_invoked_features.result (+1/-1)
mysql-test/suite/rpl/r/rpl_ip_mix.result (+1/-1)
mysql-test/suite/rpl/r/rpl_ip_mix2.result (+1/-1)
mysql-test/suite/rpl/r/rpl_ipv4_as_ipv6.result (+1/-1)
mysql-test/suite/rpl/r/rpl_ipv6.result (+1/-1)
mysql-test/suite/rpl/r/rpl_killed_ddl.result (+1/-1)
mysql-test/suite/rpl/r/rpl_known_bugs_detection.result (+1/-7)
mysql-test/suite/rpl/r/rpl_lcase_tblnames_rewrite_db.result (+1/-1)
mysql-test/suite/rpl/r/rpl_loaddata.result (+3/-3)
mysql-test/suite/rpl/r/rpl_loaddata_charset.result (+1/-1)
mysql-test/suite/rpl/r/rpl_loaddata_fatal.result (+1/-2)
mysql-test/suite/rpl/r/rpl_loaddata_m.result (+2/-2)
mysql-test/suite/rpl/r/rpl_loaddata_map.result (+1/-1)
mysql-test/suite/rpl/r/rpl_loaddata_s.result (+1/-1)
mysql-test/suite/rpl/r/rpl_loaddata_simple.result (+1/-1)
mysql-test/suite/rpl/r/rpl_loaddata_symlink.result (+1/-1)
mysql-test/suite/rpl/r/rpl_loaddatalocal.result (+1/-1)
mysql-test/suite/rpl/r/rpl_loadfile.result (+1/-1)
mysql-test/suite/rpl/r/rpl_locale.result (+1/-1)
mysql-test/suite/rpl/r/rpl_log_pos.result (+1/-1)
mysql-test/suite/rpl/r/rpl_manual_change_index_file.result (+1/-1)
mysql-test/suite/rpl/r/rpl_many_optimize.result (+1/-1)
mysql-test/suite/rpl/r/rpl_master_connection.result (+54/-54)
mysql-test/suite/rpl/r/rpl_master_pos_wait.result (+1/-1)
mysql-test/suite/rpl/r/rpl_migration_crash_safe.result (+1/-1)
mysql-test/suite/rpl/r/rpl_misc_functions.result (+1/-1)
mysql-test/suite/rpl/r/rpl_mix_found_rows.result (+1/-1)
mysql-test/suite/rpl/r/rpl_mix_insert_delayed.result (+1/-1)
mysql-test/suite/rpl/r/rpl_mixed_binlog_max_cache_size.result (+1/-1)
mysql-test/suite/rpl/r/rpl_mixed_bit_pk.result (+1/-1)
mysql-test/suite/rpl/r/rpl_mixed_ddl_dml.result (+1/-1)
mysql-test/suite/rpl/r/rpl_mixed_drop_create_temp_table.result (+29/-29)
mysql-test/suite/rpl/r/rpl_mixed_implicit_commit_binlog.result (+2/-2)
mysql-test/suite/rpl/r/rpl_mixed_mixing_engines.result (+13/-13)
mysql-test/suite/rpl/r/rpl_mts_debug.result (+1/-1)
mysql-test/suite/rpl/r/rpl_multi_delete.result (+1/-1)
mysql-test/suite/rpl/r/rpl_multi_delete2.result (+1/-1)
mysql-test/suite/rpl/r/rpl_multi_engine.result (+1/-1)
mysql-test/suite/rpl/r/rpl_multi_update.result (+1/-1)
mysql-test/suite/rpl/r/rpl_multi_update2.result (+1/-1)
mysql-test/suite/rpl/r/rpl_multi_update3.result (+1/-1)
mysql-test/suite/rpl/r/rpl_multi_update4.result (+1/-1)
mysql-test/suite/rpl/r/rpl_mysql_upgrade.result (+1/-1)
mysql-test/suite/rpl/r/rpl_mysqlbinlog_gtid_on.result (+1/-1)
mysql-test/suite/rpl/r/rpl_name_const.result (+1/-1)
mysql-test/suite/rpl/r/rpl_non_direct_mixed_mixing_engines.result (+13/-13)
mysql-test/suite/rpl/r/rpl_non_direct_row_mixing_engines.result (+13/-13)
mysql-test/suite/rpl/r/rpl_non_direct_stm_mixing_engines.result (+13/-13)
mysql-test/suite/rpl/r/rpl_nondeterministic_functions.result (+1/-1)
mysql-test/suite/rpl/r/rpl_not_null_innodb.result (+1/-1)
mysql-test/suite/rpl/r/rpl_not_null_myisam.result (+1/-1)
mysql-test/suite/rpl/r/rpl_optimize.result (+1/-1)
mysql-test/suite/rpl/r/rpl_packet.result (+1/-1)
mysql-test/suite/rpl/r/rpl_parallel.result (+1/-1)
mysql-test/suite/rpl/r/rpl_parallel_change_master.result (+2/-2)
mysql-test/suite/rpl/r/rpl_parallel_conf_limits.result (+1/-1)
mysql-test/suite/rpl/r/rpl_parallel_conflicts.result (+1/-1)
mysql-test/suite/rpl/r/rpl_parallel_ddl.result (+1/-1)
mysql-test/suite/rpl/r/rpl_parallel_innodb.result (+1/-1)
mysql-test/suite/rpl/r/rpl_parallel_load_data.result (+1/-1)
mysql-test/suite/rpl/r/rpl_parallel_multi_db.result (+1/-1)
mysql-test/suite/rpl/r/rpl_parallel_seconds_behind_master.result (+1/-1)
mysql-test/suite/rpl/r/rpl_parallel_show_binlog_events_purge_logs.result (+1/-1)
mysql-test/suite/rpl/r/rpl_parallel_start_stop.result (+3/-3)
mysql-test/suite/rpl/r/rpl_parallel_switch_sequential.result (+1/-1)
mysql-test/suite/rpl/r/rpl_parallel_temp_query.result (+1/-1)
mysql-test/suite/rpl/r/rpl_partition_archive.result (+1/-1)
mysql-test/suite/rpl/r/rpl_partition_innodb.result (+1/-1)
mysql-test/suite/rpl/r/rpl_partition_memory.result (+1/-1)
mysql-test/suite/rpl/r/rpl_partition_myisam.result (+1/-1)
mysql-test/suite/rpl/r/rpl_plugin_load.result (+1/-1)
mysql-test/suite/rpl/r/rpl_ps.result (+1/-1)
mysql-test/suite/rpl/r/rpl_rbr_to_sbr.result (+1/-1)
mysql-test/suite/rpl/r/rpl_read_old_relay_log_info.result (+1/-1)
mysql-test/suite/rpl/r/rpl_read_only.result (+1/-1)
mysql-test/suite/rpl/r/rpl_relay_space_innodb.result (+1/-1)
mysql-test/suite/rpl/r/rpl_relay_space_myisam.result (+1/-1)
mysql-test/suite/rpl/r/rpl_relayrotate.result (+1/-1)
mysql-test/suite/rpl/r/rpl_relayspace.result (+1/-1)
mysql-test/suite/rpl/r/rpl_replicate_do.result (+1/-1)
mysql-test/suite/rpl/r/rpl_replicate_ignore_db.result (+1/-1)
mysql-test/suite/rpl/r/rpl_report.result (+1/-1)
mysql-test/suite/rpl/r/rpl_report_port.result (+1/-1)
mysql-test/suite/rpl/r/rpl_rewrite_db_filter.result (+1/-1)
mysql-test/suite/rpl/r/rpl_rewrt_db.result (+1/-1)
mysql-test/suite/rpl/r/rpl_rotate_logs.result (+7/-1)
mysql-test/suite/rpl/r/rpl_rotate_purge_deadlock.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_001.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_4_bytes.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_NOW.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_USER.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_UUID.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_basic_11bugs.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_basic_2myisam.result (+3/-5)
mysql-test/suite/rpl/r/rpl_row_basic_3innodb.result (+3/-5)
mysql-test/suite/rpl/r/rpl_row_basic_8partition.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_basic_allow_batching.result (+3/-5)
mysql-test/suite/rpl/r/rpl_row_blob_innodb.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_blob_myisam.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_colSize.result (+1/-14)
mysql-test/suite/rpl/r/rpl_row_conflicts.result (+7/-5)
mysql-test/suite/rpl/r/rpl_row_corruption.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_crash_safe.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_delayed_ins.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_drop.result (+3/-3)
mysql-test/suite/rpl/r/rpl_row_drop_create_temp_table.result (+139/-139)
mysql-test/suite/rpl/r/rpl_row_event_max_size.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_find_row.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_flsh_tbls.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_func001.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_func002.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_func003.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_hash_scan.result (+4/-4)
mysql-test/suite/rpl/r/rpl_row_hash_scan_sanity.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_idempotency.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_ignorable_event.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_img_blobs.result (+2/-2)
mysql-test/suite/rpl/r/rpl_row_img_eng_full.result (+4/-4)
mysql-test/suite/rpl/r/rpl_row_img_eng_min.result (+2/-2)
mysql-test/suite/rpl/r/rpl_row_img_eng_noblob.result (+2/-2)
mysql-test/suite/rpl/r/rpl_row_img_idx_full.result (+2/-2)
mysql-test/suite/rpl/r/rpl_row_img_idx_min.result (+2/-2)
mysql-test/suite/rpl/r/rpl_row_img_idx_noblob.result (+2/-2)
mysql-test/suite/rpl/r/rpl_row_img_misc.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_img_sanity.result (+2/-2)
mysql-test/suite/rpl/r/rpl_row_implicit_commit_binlog.result (+2/-2)
mysql-test/suite/rpl/r/rpl_row_inexist_tbl.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_insert_delayed.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_lcase_tblnames.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_log.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_log_innodb.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_max_relay_size.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_merge_engine.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_mixing_engines.result (+13/-13)
mysql-test/suite/rpl/r/rpl_row_mts_crash_safe.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_mts_rec_crash_safe.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_mts_show_relaylog_events.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_mysqlbinlog.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_rec_comp_innodb.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_rec_comp_myisam.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_record_find_myisam.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_reset_slave.result (+8/-8)
mysql-test/suite/rpl/r/rpl_row_show_relaylog_events.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_sp001.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_sp002_innodb.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_sp003.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_sp005.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_sp006_InnoDB.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_sp007_innodb.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_sp008.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_sp009.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_sp010.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_sp011.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_sp012.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_tabledefs_2myisam.result (+1/-4)
mysql-test/suite/rpl/r/rpl_row_tabledefs_3innodb.result (+1/-4)
mysql-test/suite/rpl/r/rpl_row_tbl_metadata.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_trig001.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_trig002.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_trig003.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_trig004.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_trunc_temp.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_unsafe_funcs.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_until.result (+2/-2)
mysql-test/suite/rpl/r/rpl_row_utf16.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_utf32.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_view01.result (+1/-1)
mysql-test/suite/rpl/r/rpl_row_wide_table.result (+1/-1)
mysql-test/suite/rpl/r/rpl_savepoint.result (+1/-1)
mysql-test/suite/rpl/r/rpl_seconds_behind_master.result (+1/-1)
mysql-test/suite/rpl/r/rpl_semi_sync.result (+3/-3)
mysql-test/suite/rpl/r/rpl_semi_sync_deadlock.result (+19/-0)
mysql-test/suite/rpl/r/rpl_semi_sync_event.result (+1/-1)
mysql-test/suite/rpl/r/rpl_semi_sync_group_commit_deadlock.result (+36/-0)
mysql-test/suite/rpl/r/rpl_semi_sync_non_group_commit_deadlock.result (+38/-0)
mysql-test/suite/rpl/r/rpl_sequential.result (+1/-1)
mysql-test/suite/rpl/r/rpl_server_id1.result (+1/-1)
mysql-test/suite/rpl/r/rpl_server_id2.result (+1/-1)
mysql-test/suite/rpl/r/rpl_server_id_ignore.result (+2/-2)
mysql-test/suite/rpl/r/rpl_server_uuid.result (+2/-2)
mysql-test/suite/rpl/r/rpl_session_var.result (+1/-1)
mysql-test/suite/rpl/r/rpl_set_charset.result (+1/-1)
mysql-test/suite/rpl/r/rpl_set_null_innodb.result (+1/-1)
mysql-test/suite/rpl/r/rpl_set_null_myisam.result (+1/-1)
mysql-test/suite/rpl/r/rpl_show_errors.result (+2/-2)
mysql-test/suite/rpl/r/rpl_show_master_info_file.result (+1/-1)
mysql-test/suite/rpl/r/rpl_show_slave_hosts.result (+2/-2)
mysql-test/suite/rpl/r/rpl_show_slave_running.result (+1/-1)
mysql-test/suite/rpl/r/rpl_skip_ddl_errors_cli.result (+1/-1)
mysql-test/suite/rpl/r/rpl_skip_error.result (+1/-1)
mysql-test/suite/rpl/r/rpl_skip_incident.result (+1/-1)
mysql-test/suite/rpl/r/rpl_slave_grp_exec.result (+1/-1)
mysql-test/suite/rpl/r/rpl_slave_load_in.result (+1/-1)
mysql-test/suite/rpl/r/rpl_slave_load_remove_tmpfile.result (+2/-2)
mysql-test/suite/rpl/r/rpl_slave_load_tmpdir_not_exist.result (+1/-1)
mysql-test/suite/rpl/r/rpl_slave_skip.result (+1/-1)
mysql-test/suite/rpl/r/rpl_slave_start.result (+2/-2)
mysql-test/suite/rpl/r/rpl_slave_status.result (+3/-3)
mysql-test/suite/rpl/r/rpl_slow_query_log.result (+1/-1)
mysql-test/suite/rpl/r/rpl_sp.result (+1/-1)
mysql-test/suite/rpl/r/rpl_sp004.result (+1/-1)
mysql-test/suite/rpl/r/rpl_sp_effects.result (+1/-1)
mysql-test/suite/rpl/r/rpl_spec_variables.result (+1/-1)
mysql-test/suite/rpl/r/rpl_sporadic_master.result (+1/-1)
mysql-test/suite/rpl/r/rpl_ssl.result (+3/-3)
mysql-test/suite/rpl/r/rpl_ssl1.result (+3/-3)
mysql-test/suite/rpl/r/rpl_stm_000001.result (+1/-1)
mysql-test/suite/rpl/r/rpl_stm_EE_err2.result (+1/-1)
mysql-test/suite/rpl/r/rpl_stm_auto_increment_bug33029.result (+1/-1)
mysql-test/suite/rpl/r/rpl_stm_binlog_max_cache_size.result (+1/-1)
mysql-test/suite/rpl/r/rpl_stm_conflicts.result (+4/-3)
mysql-test/suite/rpl/r/rpl_stm_drop_create_temp_table.result (+29/-29)
mysql-test/suite/rpl/r/rpl_stm_flsh_tbls.result (+1/-1)
mysql-test/suite/rpl/r/rpl_stm_found_rows.result (+1/-1)
mysql-test/suite/rpl/r/rpl_stm_implicit_commit_binlog.result (+2/-2)
mysql-test/suite/rpl/r/rpl_stm_innodb.result (+1/-1)
mysql-test/suite/rpl/r/rpl_stm_insert_delayed.result (+1/-1)
mysql-test/suite/rpl/r/rpl_stm_lcase_tblnames.result (+1/-1)
mysql-test/suite/rpl/r/rpl_stm_loaddata_concurrent.result (+3/-3)
mysql-test/suite/rpl/r/rpl_stm_loadfile.result (+1/-1)
mysql-test/suite/rpl/r/rpl_stm_log.result (+1/-1)
mysql-test/suite/rpl/r/rpl_stm_max_relay_size.result (+1/-1)
mysql-test/suite/rpl/r/rpl_stm_mix_mts_show_relaylog_events.result (+1/-1)
mysql-test/suite/rpl/r/rpl_stm_mix_show_relaylog_events.result (+1/-1)
mysql-test/suite/rpl/r/rpl_stm_mixed_crash_safe.result (+1/-1)
mysql-test/suite/rpl/r/rpl_stm_mixed_mts_crash_safe.result (+1/-1)
mysql-test/suite/rpl/r/rpl_stm_mixed_mts_rec_crash_safe.result (+1/-1)
mysql-test/suite/rpl/r/rpl_stm_mixed_mts_rec_crash_safe_checksum.result (+1/-1)
mysql-test/suite/rpl/r/rpl_stm_mixed_mts_rec_crash_safe_small.result (+1/-1)
mysql-test/suite/rpl/r/rpl_stm_mixing_engines.result (+13/-13)
mysql-test/suite/rpl/r/rpl_stm_multi_query.result (+1/-1)
mysql-test/suite/rpl/r/rpl_stm_no_op.result (+1/-1)
mysql-test/suite/rpl/r/rpl_stm_relay_ign_space.result (+1/-1)
mysql-test/suite/rpl/r/rpl_stm_reset_slave.result (+8/-8)
mysql-test/suite/rpl/r/rpl_stm_sql_mode.result (+1/-1)
mysql-test/suite/rpl/r/rpl_stm_start_stop_slave.result (+1/-1)
mysql-test/suite/rpl/r/rpl_stm_stop_middle_group.result (+1/-1)
mysql-test/suite/rpl/r/rpl_stm_until.result (+2/-2)
mysql-test/suite/rpl/r/rpl_stm_user_variables.result (+1/-1)
mysql-test/suite/rpl/r/rpl_stop_slave.result (+1/-1)
mysql-test/suite/rpl/r/rpl_switch_stm_row_mixed.result (+1/-1)
mysql-test/suite/rpl/r/rpl_sync.result (+1/-1)
mysql-test/suite/rpl/r/rpl_temp_table.result (+1/-1)
mysql-test/suite/rpl/r/rpl_temp_table_mix_row.result (+4/-4)
mysql-test/suite/rpl/r/rpl_temporal_fractional.result (+1/-1)
mysql-test/suite/rpl/r/rpl_temporary.result (+1/-1)
mysql-test/suite/rpl/r/rpl_temporary_errors.result (+1/-1)
mysql-test/suite/rpl/r/rpl_test_framework.result (+158/-158)
mysql-test/suite/rpl/r/rpl_timezone.result (+1/-1)
mysql-test/suite/rpl/r/rpl_tmp_table_and_DDL.result (+1/-1)
mysql-test/suite/rpl/r/rpl_trigger.result (+1/-1)
mysql-test/suite/rpl/r/rpl_trunc_temp.result (+1/-1)
mysql-test/suite/rpl/r/rpl_truncate_2myisam.result (+1/-1)
mysql-test/suite/rpl/r/rpl_truncate_3innodb.result (+1/-1)
mysql-test/suite/rpl/r/rpl_typeconv.result (+1/-1)
mysql-test/suite/rpl/r/rpl_typeconv_innodb.result (+1/-1)
mysql-test/suite/rpl/r/rpl_udf.result (+1/-1)
mysql-test/suite/rpl/r/rpl_user.result (+1/-1)
mysql-test/suite/rpl/r/rpl_user_variables.result (+1/-1)
mysql-test/suite/rpl/r/rpl_variables.result (+1/-1)
mysql-test/suite/rpl/r/rpl_variables_stm.result (+1/-1)
mysql-test/suite/rpl/r/rpl_view.result (+1/-1)
mysql-test/suite/rpl/r/rpl_view_multi.result (+1/-1)
mysql-test/suite/rpl/t/rpl_binlog_errors.test (+3/-0)
mysql-test/suite/rpl/t/rpl_check_gtid-slave.opt (+0/-1)
mysql-test/suite/rpl/t/rpl_check_gtid.test (+8/-4)
mysql-test/suite/rpl/t/rpl_filter_tables_not_exist.test (+1/-6)
mysql-test/suite/rpl/t/rpl_grant.test (+9/-1)
mysql-test/suite/rpl/t/rpl_group_commit_deadlock.test (+38/-0)
mysql-test/suite/rpl/t/rpl_gtid_sql_until_before_after.test (+10/-0)
mysql-test/suite/rpl/t/rpl_known_bugs_detection.test (+2/-8)
mysql-test/suite/rpl/t/rpl_loaddata_fatal.test (+1/-2)
mysql-test/suite/rpl/t/rpl_loaddata_m.test (+1/-1)
mysql-test/suite/rpl/t/rpl_parallel_change_master.test (+1/-1)
mysql-test/suite/rpl/t/rpl_parallel_start_stop.test (+2/-2)
mysql-test/suite/rpl/t/rpl_rotate_logs.test (+3/-0)
mysql-test/suite/rpl/t/rpl_row_hash_scan.test (+3/-3)
mysql-test/suite/rpl/t/rpl_row_img_sanity.test (+1/-1)
mysql-test/suite/rpl/t/rpl_semi_sync_deadlock-master.opt (+1/-0)
mysql-test/suite/rpl/t/rpl_semi_sync_deadlock-slave.opt (+1/-0)
mysql-test/suite/rpl/t/rpl_semi_sync_deadlock.test (+102/-0)
mysql-test/suite/rpl/t/rpl_semi_sync_group_commit_deadlock-master.opt (+1/-0)
mysql-test/suite/rpl/t/rpl_semi_sync_group_commit_deadlock-slave.opt (+1/-0)
mysql-test/suite/rpl/t/rpl_semi_sync_group_commit_deadlock.test (+39/-0)
mysql-test/suite/rpl/t/rpl_semi_sync_non_group_commit_deadlock-master.opt (+1/-0)
mysql-test/suite/rpl/t/rpl_semi_sync_non_group_commit_deadlock-slave.opt (+1/-0)
mysql-test/suite/rpl/t/rpl_semi_sync_non_group_commit_deadlock.test (+42/-0)
mysql-test/suite/rpl/t/rpl_show_errors.test (+1/-1)
mysql-test/suite/rpl/t/rpl_slave_load_remove_tmpfile.test (+1/-1)
mysql-test/suite/rpl/t/rpl_slave_start.test (+1/-1)
mysql-test/suite/sys_vars/r/innodb_ft_result_cache_limit_basic.result (+32/-0)
mysql-test/suite/sys_vars/r/innodb_ft_total_cache_size_basic.result (+21/-0)
mysql-test/suite/sys_vars/r/innodb_log_checkpoint_now_basic.result (+79/-0)
mysql-test/suite/sys_vars/r/innodb_monitor_disable_basic.result (+1/-0)
mysql-test/suite/sys_vars/r/innodb_monitor_enable_basic.result (+1/-0)
mysql-test/suite/sys_vars/r/innodb_monitor_reset_all_basic.result (+1/-0)
mysql-test/suite/sys_vars/r/innodb_monitor_reset_basic.result (+1/-0)
mysql-test/suite/sys_vars/r/relay_log_basename_basic.result (+1/-1)
mysql-test/suite/sys_vars/r/relay_log_index_basic.result (+1/-1)
mysql-test/suite/sys_vars/r/rpl_init_slave_func.result (+3/-9)
mysql-test/suite/sys_vars/r/rpl_semi_sync_master_enabled_basic.result (+1/-1)
mysql-test/suite/sys_vars/r/rpl_semi_sync_slave_enabled_basic.result (+1/-1)
mysql-test/suite/sys_vars/r/rpl_stop_slave_timeout_basic.result (+93/-0)
mysql-test/suite/sys_vars/r/table_definition_cache_basic.result (+8/-8)
mysql-test/suite/sys_vars/r/table_open_cache_basic.result (+6/-6)
mysql-test/suite/sys_vars/t/innodb_ft_result_cache_limit_basic.test (+33/-0)
mysql-test/suite/sys_vars/t/innodb_ft_total_cache_size_basic.test (+22/-0)
mysql-test/suite/sys_vars/t/innodb_log_checkpoint_now_basic.test (+68/-0)
mysql-test/suite/sys_vars/t/pfs_digests_size_basic.test (+1/-1)
mysql-test/suite/sys_vars/t/pfs_session_connect_attrs_size_basic.test (+1/-1)
mysql-test/suite/sys_vars/t/rpl_init_slave_func.test (+6/-4)
mysql-test/suite/sys_vars/t/rpl_stop_slave_timeout_basic.test (+153/-0)
mysql-test/suite/sys_vars/t/secure_file_priv.test (+1/-1)
mysql-test/suite/sys_vars/t/table_definition_cache_basic.test (+4/-4)
mysql-test/suite/sys_vars/t/table_open_cache_basic.test (+3/-3)
mysql-test/t/audit_plugin.test (+1/-1)
mysql-test/t/bug12969156.test (+1/-0)
mysql-test/t/client_xml.test (+1/-1)
mysql-test/t/create.test (+1/-2)
mysql-test/t/distinct.test (+1/-1)
mysql-test/t/explain.test (+4/-0)
mysql-test/t/func_str.test (+4/-2)
mysql-test/t/group_min_max.test (+2/-0)
mysql-test/t/index_merge_delete.test (+14/-0)
mysql-test/t/index_merge_insert-and-replace.test (+13/-0)
mysql-test/t/index_merge_intersect_dml.test (+5/-0)
mysql-test/t/index_merge_update.test (+13/-0)
mysql-test/t/mdl_sync.test (+5/-51)
mysql-test/t/multi_plugin_load_add.test (+1/-0)
mysql-test/t/multi_plugin_load_add2.test (+1/-0)
mysql-test/t/mysql_upgrade.test (+3/-1)
mysql-test/t/mysqldump.test (+11/-11)
mysql-test/t/olap.test (+15/-0)
mysql-test/t/openssl_1.test (+6/-6)
mysql-test/t/partition_myisam.test (+2/-3)
mysql-test/t/partition_open_files_limit.test (+11/-3)
mysql-test/t/plugin.test (+52/-0)
mysql-test/t/plugin_auth.test (+2/-3)
mysql-test/t/plugin_auth_qa.test (+4/-2)
mysql-test/t/plugin_auth_qa_1.test (+2/-0)
mysql-test/t/plugin_auth_qa_2.test (+4/-4)
mysql-test/t/ps_grant.test (+1/-2)
mysql-test/t/rewrite_general_log.test (+3/-0)
mysql-test/t/sp_notembedded.test (+8/-12)
mysql-test/t/table_definition_cache_functionality.test (+3/-3)
mysql-test/t/table_open_cache_functionality.test (+1/-1)
mysql-test/valgrind.supp (+20/-1)
mysys/CMakeLists.txt (+6/-1)
mysys/mf_arr_appstr.c (+1/-1)
mysys/mf_iocache2.c (+4/-0)
mysys/mf_qsort2.c (+1/-1)
mysys/mf_same.c (+1/-1)
mysys/mf_soundex.c (+1/-1)
mysys/mf_wcomp.c (+1/-1)
mysys/mulalloc.c (+1/-1)
mysys/my_access.c (+1/-1)
mysys/my_alarm.c (+1/-1)
mysys/my_atomic.c (+1/-31)
mysys/my_bitmap.c (+1/-1)
mysys/my_compare.c (+1/-1)
mysys/my_crc32.c (+1/-1)
mysys/my_div.c (+1/-1)
mysys/my_fopen.c (+1/-1)
mysys/my_getpagesize.c (+1/-1)
mysys/my_getsystime.c (+1/-1)
mysys/my_handler_errors.h (+3/-1)
mysys/my_isnan.c (+2/-2)
mysys/my_libwrap.c (+1/-1)
mysys/my_memmem.c (+1/-1)
mysys/my_mkdir.c (+1/-1)
mysys/my_read.c (+8/-1)
mysys/my_symlink2.c (+1/-1)
mysys/my_winthread.c (+4/-2)
mysys/test_dir.c (+1/-1)
mysys/test_xml.c (+1/-1)
mysys/thr_alarm.c (+1/-1)
mysys/typelib.c (+1/-1)
mysys_ssl/crypt_genhash_impl.cc (+2/-2)
mysys_ssl/my_aes.cc (+50/-28)
mysys_ssl/my_default.cc (+1/-1)
mysys_ssl/my_getopt.cc (+49/-6)
mysys_ssl/my_rnd.cc (+19/-8)
packaging/WiX/CPackWixConfig.cmake (+1/-1)
packaging/rpm-uln/CMakeLists.txt (+3/-3)
packaging/rpm-uln/mysql-5.5-errno.patch (+0/-21)
packaging/rpm-uln/mysql-5.6-stack-guard.patch (+0/-143)
packaging/rpm-uln/mysql.spec.sh (+27/-15)
plugin/innodb_memcached/innodb_memcache/include/handler_api.h (+14/-2)
plugin/innodb_memcached/innodb_memcache/include/innodb_cb_api.h (+93/-20)
plugin/innodb_memcached/innodb_memcache/include/innodb_config.h (+1/-8)
plugin/innodb_memcached/innodb_memcache/include/innodb_engine.h (+3/-0)
plugin/innodb_memcached/innodb_memcache/src/handler_api.cc (+37/-2)
plugin/innodb_memcached/innodb_memcache/src/innodb_api.c (+456/-146)
plugin/innodb_memcached/innodb_memcache/src/innodb_config.c (+71/-6)
plugin/innodb_memcached/innodb_memcache/src/innodb_engine.c (+66/-24)
plugin/semisync/semisync_master.cc (+21/-21)
scripts/fill_help_tables.sql (+1/-1)
scripts/mysql_secure_installation.pl.in (+2/-1)
scripts/mysql_system_tables.sql (+21/-11)
scripts/mysql_system_tables_fix.sql (+8/-0)
scripts/mysql_test_data_timezone.sql (+1/-1)
scripts/mysqld_safe.sh (+1/-1)
sql-bench/CMakeLists.txt (+30/-22)
sql-common/client.c (+60/-6)
sql-common/client_authentication.cc (+6/-2)
sql-common/client_plugin.c (+32/-6)
sql-common/pack.c (+1/-1)
sql/binlog.cc (+428/-90)
sql/binlog.h (+17/-5)
sql/bounded_queue.h (+1/-1)
sql/debug_sync.cc (+1/-1)
sql/event_db_repository.cc (+16/-1)
sql/event_scheduler.cc (+51/-35)
sql/event_scheduler.h (+1/-1)
sql/events.cc (+4/-3)
sql/events.h (+1/-1)
sql/field.cc (+60/-3)
sql/field.h (+27/-9)
sql/field_conv.cc (+6/-3)
sql/filesort_utils.cc (+4/-1)
sql/global_threads.h (+2/-2)
sql/ha_ndbcluster_binlog.cc (+7/-1)
sql/ha_partition.cc (+85/-84)
sql/ha_partition.h (+1/-1)
sql/handler.cc (+32/-12)
sql/handler.h (+16/-3)
sql/hostname.cc (+3/-3)
sql/item.cc (+31/-11)
sql/item.h (+39/-9)
sql/item_cmpfunc.cc (+7/-11)
sql/item_cmpfunc.h (+6/-6)
sql/item_func.cc (+20/-2)
sql/item_func.h (+36/-0)
sql/item_geofunc.cc (+47/-60)
sql/item_subselect.cc (+63/-16)
sql/item_sum.cc (+77/-68)
sql/item_sum.h (+3/-2)
sql/key.cc (+9/-0)
sql/log.cc (+10/-5)
sql/log.h (+2/-1)
sql/log_event.cc (+311/-206)
sql/log_event.h (+58/-30)
sql/log_event_old.cc (+3/-0)
sql/mdl.cc (+7/-8)
sql/mem_root_array.h (+1/-1)
sql/mysqld.cc (+411/-221)
sql/mysqld.h (+11/-2)
sql/net_serv.cc (+1/-1)
sql/opt_explain.cc (+15/-0)
sql/opt_range.cc (+157/-129)
sql/opt_trace_Doxyfile (+1/-1)
sql/partition_info.cc (+3/-4)
sql/rpl_filter.cc (+6/-3)
sql/rpl_gtid.h (+9/-1)
sql/rpl_gtid_execution.cc (+120/-51)
sql/rpl_gtid_state.cc (+16/-1)
sql/rpl_handler.cc (+2/-2)
sql/rpl_info_dummy.cc (+1/-1)
sql/rpl_info_dummy.h (+1/-1)
sql/rpl_info_factory.cc (+28/-8)
sql/rpl_info_table.cc (+11/-7)
sql/rpl_info_table_access.cc (+15/-4)
sql/rpl_info_table_access.h (+2/-2)
sql/rpl_info_values.h (+1/-1)
sql/rpl_master.cc (+24/-2)
sql/rpl_record.cc (+5/-2)
sql/rpl_reporting.cc (+7/-3)
sql/rpl_reporting.h (+2/-2)
sql/rpl_rli.cc (+42/-39)
sql/rpl_rli.h (+1/-7)
sql/rpl_rli_pdb.cc (+75/-6)
sql/rpl_rli_pdb.h (+19/-1)
sql/rpl_slave.cc (+182/-40)
sql/rpl_utility.cc (+69/-17)
sql/rpl_utility.h (+14/-12)
sql/set_var.cc (+13/-10)
sql/share/CMakeLists.txt (+2/-2)
sql/share/charsets/Index.xml (+1/-1)
sql/share/charsets/armscii8.xml (+1/-1)
sql/share/charsets/ascii.xml (+1/-1)
sql/share/charsets/cp1250.xml (+1/-1)
sql/share/charsets/cp1256.xml (+1/-1)
sql/share/charsets/cp1257.xml (+1/-1)
sql/share/charsets/cp850.xml (+1/-1)
sql/share/charsets/cp852.xml (+1/-1)
sql/share/charsets/cp866.xml (+1/-1)
sql/share/charsets/dec8.xml (+1/-1)
sql/share/charsets/geostd8.xml (+1/-1)
sql/share/charsets/greek.xml (+1/-1)
sql/share/charsets/hebrew.xml (+1/-1)
sql/share/charsets/hp8.xml (+1/-1)
sql/share/charsets/keybcs2.xml (+1/-1)
sql/share/charsets/koi8r.xml (+1/-1)
sql/share/charsets/koi8u.xml (+1/-1)
sql/share/charsets/languages.html (+1/-1)
sql/share/charsets/latin1.xml (+1/-1)
sql/share/charsets/latin2.xml (+1/-1)
sql/share/charsets/latin5.xml (+1/-1)
sql/share/charsets/latin7.xml (+1/-1)
sql/share/charsets/macce.xml (+1/-1)
sql/share/charsets/macroman.xml (+1/-1)
sql/share/charsets/swe7.xml (+1/-1)
sql/share/errmsg-utf8.txt (+48/-5)
sql/signal_handler.cc (+2/-2)
sql/sp.cc (+8/-1)
sql/sp_head.cc (+13/-5)
sql/sp_instr.cc (+32/-16)
sql/sp_instr.h (+20/-2)
sql/sp_rcontext.cc (+81/-37)
sql/sp_rcontext.h (+29/-17)
sql/spatial.cc (+468/-677)
sql/spatial.h (+311/-114)
sql/sql_acl.cc (+451/-179)
sql/sql_admin.cc (+14/-2)
sql/sql_audit.cc (+5/-1)
sql/sql_audit.h (+66/-22)
sql/sql_base.cc (+53/-23)
sql/sql_base.h (+4/-2)
sql/sql_cache.cc (+18/-2)
sql/sql_class.cc (+152/-49)
sql/sql_class.h (+254/-76)
sql/sql_connect.cc (+27/-22)
sql/sql_db.cc (+8/-5)
sql/sql_delete.cc (+4/-1)
sql/sql_error.cc (+30/-36)
sql/sql_error.h (+3/-6)
sql/sql_executor.cc (+7/-8)
sql/sql_get_diagnostics.cc (+2/-2)
sql/sql_get_diagnostics.h (+2/-2)
sql/sql_handler.cc (+3/-0)
sql/sql_hset.h (+1/-1)
sql/sql_insert.cc (+140/-52)
sql/sql_insert.h (+1/-0)
sql/sql_lex.cc (+110/-16)
sql/sql_lex.h (+27/-3)
sql/sql_load.cc (+33/-4)
sql/sql_manager.cc (+6/-3)
sql/sql_optimizer.cc (+292/-181)
sql/sql_optimizer.h (+6/-14)
sql/sql_parse.cc (+123/-61)
sql/sql_partition.cc (+217/-151)
sql/sql_plugin.cc (+70/-2)
sql/sql_prepare.cc (+148/-31)
sql/sql_prepare.h (+3/-3)
sql/sql_rename.cc (+2/-2)
sql/sql_resolver.cc (+21/-8)
sql/sql_rewrite.cc (+39/-1)
sql/sql_select.cc (+70/-30)
sql/sql_select.h (+28/-5)
sql/sql_show.cc (+35/-18)
sql/sql_state.c (+1/-1)
sql/sql_string.h (+2/-1)
sql/sql_table.cc (+168/-95)
sql/sql_table.h (+3/-1)
sql/sql_test.cc (+5/-28)
sql/sql_tmp_table.cc (+9/-6)
sql/sql_union.cc (+60/-13)
sql/sql_update.cc (+26/-4)
sql/sql_view.cc (+4/-1)
sql/sql_yacc.yy (+86/-32)
sql/structs.h (+8/-1)
sql/sys_vars.cc (+24/-7)
sql/sys_vars.h (+18/-10)
sql/table.cc (+72/-14)
sql/table.h (+14/-0)
sql/transaction.cc (+69/-10)
sql/transaction.h (+4/-1)
storage/example/ha_example.cc (+29/-2)
storage/federated/ha_federated.cc (+1/-2)
storage/heap/_check.c (+1/-1)
storage/heap/_rectest.c (+1/-1)
storage/heap/hp_delete.c (+1/-1)
storage/heap/hp_extra.c (+1/-1)
storage/heap/hp_info.c (+1/-1)
storage/heap/hp_rfirst.c (+1/-1)
storage/heap/hp_rlast.c (+1/-1)
storage/heap/hp_rnext.c (+1/-1)
storage/heap/hp_rprev.c (+1/-1)
storage/heap/hp_rrnd.c (+1/-1)
storage/heap/hp_rsame.c (+1/-1)
storage/heap/hp_scan.c (+1/-1)
storage/heap/hp_update.c (+1/-1)
storage/innobase/api/api0api.cc (+113/-24)
storage/innobase/btr/btr0btr.cc (+194/-101)
storage/innobase/btr/btr0cur.cc (+12/-6)
storage/innobase/buf/buf0buddy.cc (+5/-0)
storage/innobase/buf/buf0buf.cc (+30/-45)
storage/innobase/buf/buf0dblwr.cc (+124/-82)
storage/innobase/buf/buf0flu.cc (+171/-133)
storage/innobase/buf/buf0lru.cc (+89/-75)
storage/innobase/buf/buf0rea.cc (+12/-13)
storage/innobase/compile-innodb (+3/-3)
storage/innobase/dict/dict0crea.cc (+9/-5)
storage/innobase/dict/dict0dict.cc (+149/-29)
storage/innobase/dict/dict0load.cc (+95/-39)
storage/innobase/dict/dict0mem.cc (+1/-5)
storage/innobase/dict/dict0stats.cc (+43/-46)
storage/innobase/dict/dict0stats_bg.cc (+1/-1)
storage/innobase/fil/fil0fil.cc (+291/-133)
storage/innobase/fsp/fsp0fsp.cc (+6/-1)
storage/innobase/fts/fts0ast.cc (+119/-45)
storage/innobase/fts/fts0blex.cc (+15/-15)
storage/innobase/fts/fts0config.cc (+3/-3)
storage/innobase/fts/fts0fts.cc (+174/-48)
storage/innobase/fts/fts0opt.cc (+56/-11)
storage/innobase/fts/fts0pars.cc (+367/-295)
storage/innobase/fts/fts0pars.y (+5/-1)
storage/innobase/fts/fts0que.cc (+724/-302)
storage/innobase/fts/fts0tlex.cc (+43/-38)
storage/innobase/fts/fts0tlex.l (+1/-1)
storage/innobase/handler/ha_innodb.cc (+281/-164)
storage/innobase/handler/handler0alter.cc (+30/-28)
storage/innobase/handler/i_s.cc (+39/-16)
storage/innobase/ibuf/ibuf0ibuf.cc (+55/-35)
storage/innobase/include/api0api.h (+3/-1)
storage/innobase/include/buf0buf.h (+9/-4)
storage/innobase/include/buf0buf.ic (+3/-3)
storage/innobase/include/buf0dblwr.h (+28/-22)
storage/innobase/include/buf0flu.h (+16/-11)
storage/innobase/include/buf0rea.h (+2/-2)
storage/innobase/include/buf0types.h (+2/-2)
storage/innobase/include/db0err.h (+2/-0)
storage/innobase/include/dict0crea.ic (+48/-11)
storage/innobase/include/dict0dict.h (+24/-9)
storage/innobase/include/dict0load.h (+26/-10)
storage/innobase/include/dict0mem.h (+1/-1)
storage/innobase/include/dict0priv.h (+4/-2)
storage/innobase/include/dict0priv.ic (+5/-3)
storage/innobase/include/dict0types.h (+16/-1)
storage/innobase/include/fil0fil.h (+13/-8)
storage/innobase/include/fts0ast.h (+7/-2)
storage/innobase/include/fts0blex.h (+3/-3)
storage/innobase/include/fts0fts.h (+29/-3)
storage/innobase/include/fts0pars.h (+13/-15)
storage/innobase/include/fts0tlex.h (+3/-3)
storage/innobase/include/fts0types.ic (+2/-1)
storage/innobase/include/ha_prototypes.h (+20/-0)
storage/innobase/include/handler0alter.h (+1/-1)
storage/innobase/include/ibuf0ibuf.ic (+2/-2)
storage/innobase/include/lock0lock.h (+21/-0)
storage/innobase/include/log0log.h (+3/-1)
storage/innobase/include/mtr0mtr.h (+3/-2)
storage/innobase/include/page0zip.ic (+1/-1)
storage/innobase/include/rem0rec.ic (+2/-2)
storage/innobase/include/srv0mon.h (+3/-2)
storage/innobase/include/trx0rec.h (+2/-2)
storage/innobase/include/trx0trx.h (+2/-2)
storage/innobase/include/trx0types.h (+4/-1)
storage/innobase/include/trx0undo.h (+2/-1)
storage/innobase/include/univ.i (+7/-4)
storage/innobase/lock/lock0lock.cc (+66/-9)
storage/innobase/lock/lock0wait.cc (+2/-1)
storage/innobase/log/log0log.cc (+16/-16)
storage/innobase/log/log0recv.cc (+54/-75)
storage/innobase/mem/mem0mem.cc (+5/-1)
storage/innobase/mtr/mtr0mtr.cc (+6/-3)
storage/innobase/os/os0file.cc (+8/-19)
storage/innobase/page/page0cur.cc (+5/-2)
storage/innobase/page/page0page.cc (+18/-12)
storage/innobase/page/page0zip.cc (+46/-29)
storage/innobase/pars/pars0pars.cc (+3/-3)
storage/innobase/read/read0read.cc (+2/-2)
storage/innobase/row/row0ext.cc (+23/-9)
storage/innobase/row/row0ftsort.cc (+2/-2)
storage/innobase/row/row0import.cc (+1/-1)
storage/innobase/row/row0ins.cc (+28/-6)
storage/innobase/row/row0log.cc (+27/-18)
storage/innobase/row/row0merge.cc (+61/-71)
storage/innobase/row/row0mysql.cc (+90/-17)
storage/innobase/row/row0purge.cc (+2/-1)
storage/innobase/row/row0quiesce.cc (+5/-4)
storage/innobase/row/row0sel.cc (+3/-4)
storage/innobase/row/row0uins.cc (+10/-8)
storage/innobase/row/row0umod.cc (+39/-5)
storage/innobase/row/row0upd.cc (+4/-0)
storage/innobase/srv/srv0mon.cc (+6/-2)
storage/innobase/srv/srv0srv.cc (+8/-4)
storage/innobase/srv/srv0start.cc (+88/-38)
storage/innobase/trx/trx0purge.cc (+1/-1)
storage/innobase/trx/trx0roll.cc (+11/-8)
storage/innobase/trx/trx0trx.cc (+111/-8)
storage/innobase/trx/trx0undo.cc (+10/-4)
storage/innobase/ut/ut0ut.cc (+2/-0)
storage/myisam/ft_stopwords.c (+1/-1)
storage/myisam/ftbench/Ecompare.pl (+1/-1)
storage/myisam/ftbench/Ecreate.pl (+1/-1)
storage/myisam/ftbench/Ereport.pl (+1/-1)
storage/myisam/ftbench/ft-test-run.sh (+2/-2)
storage/myisam/ha_myisam.h (+11/-3)
storage/myisam/mi_check.c (+7/-5)
storage/myisam/mi_checksum.c (+2/-3)
storage/myisam/mi_key.c (+2/-2)
storage/myisam/mi_packrec.c (+2/-2)
storage/myisam/mi_range.c (+1/-1)
storage/myisam/mi_rfirst.c (+1/-1)
storage/myisam/mi_rlast.c (+1/-1)
storage/myisam/mi_rrnd.c (+1/-1)
storage/myisam/mi_rsamepos.c (+1/-1)
storage/myisam/mi_test_all.sh (+2/-2)
storage/myisam/myisamchk.c (+1/-1)
storage/myisam/rt_index.c (+1/-1)
storage/myisam/rt_index.h (+1/-1)
storage/myisam/rt_key.c (+1/-1)
storage/myisam/rt_key.h (+1/-1)
storage/myisam/rt_mbr.c (+1/-1)
storage/myisam/rt_mbr.h (+1/-1)
storage/myisam/sp_defs.h (+1/-1)
storage/myisammrg/myrg_delete.c (+1/-1)
storage/myisammrg/myrg_locking.c (+1/-1)
storage/myisammrg/myrg_open.c (+1/-1)
storage/myisammrg/myrg_panic.c (+1/-1)
storage/myisammrg/myrg_range.c (+1/-1)
storage/myisammrg/myrg_records.c (+1/-1)
storage/myisammrg/myrg_rfirst.c (+1/-1)
storage/myisammrg/myrg_rlast.c (+1/-1)
storage/myisammrg/myrg_rnext.c (+1/-1)
storage/myisammrg/myrg_rnext_same.c (+1/-1)
storage/myisammrg/myrg_rprev.c (+1/-1)
storage/myisammrg/myrg_rrnd.c (+1/-1)
storage/myisammrg/myrg_rsame.c (+1/-1)
storage/myisammrg/myrg_update.c (+1/-1)
storage/myisammrg/myrg_write.c (+1/-1)
storage/ndb/include/kernel/signaldata/AlterIndxImpl.hpp (+1/-1)
storage/ndb/include/kernel/signaldata/BackupLockTab.hpp (+1/-1)
storage/ndb/include/kernel/signaldata/BuildIndxImpl.hpp (+1/-1)
storage/ndb/include/kernel/signaldata/CallbackSignal.hpp (+1/-1)
storage/ndb/include/kernel/signaldata/ConfigChange.hpp (+1/-1)
storage/ndb/include/kernel/signaldata/CopyData.hpp (+1/-1)
storage/ndb/include/kernel/signaldata/CreateHashMap.hpp (+1/-1)
storage/ndb/include/kernel/signaldata/CreateIndxImpl.hpp (+1/-1)
storage/ndb/include/kernel/signaldata/CreateNodegroup.hpp (+1/-1)
storage/ndb/include/kernel/signaldata/CreateNodegroupImpl.hpp (+1/-1)
storage/ndb/include/kernel/signaldata/CreateTrigImpl.hpp (+1/-1)
storage/ndb/include/kernel/signaldata/DataFileOrd.hpp (+1/-1)
storage/ndb/include/kernel/signaldata/DbinfoScan.hpp (+1/-1)
storage/ndb/include/kernel/signaldata/DictSignal.hpp (+1/-1)
storage/ndb/include/kernel/signaldata/DictTakeover.hpp (+1/-1)
storage/ndb/include/kernel/signaldata/DihScanTab.hpp (+1/-1)
storage/ndb/include/kernel/signaldata/DropIndxImpl.hpp (+1/-1)
storage/ndb/include/kernel/signaldata/DropNodegroup.hpp (+1/-1)
storage/ndb/include/kernel/signaldata/DropNodegroupImpl.hpp (+1/-1)
storage/ndb/include/kernel/signaldata/DropTrigImpl.hpp (+1/-1)
storage/ndb/include/kernel/signaldata/EnableCom.hpp (+1/-1)
storage/ndb/include/kernel/signaldata/HashMapImpl.hpp (+1/-1)
storage/ndb/include/kernel/signaldata/IndexStatSignal.hpp (+1/-1)
storage/ndb/include/kernel/signaldata/LqhTransReq.hpp (+1/-1)
storage/ndb/include/kernel/signaldata/ReleasePages.hpp (+1/-1)
storage/ndb/include/kernel/signaldata/SchemaTrans.hpp (+1/-1)
storage/ndb/include/kernel/signaldata/SchemaTransImpl.hpp (+1/-1)
storage/ndb/include/kernel/signaldata/StopForCrash.hpp (+1/-1)
storage/ndb/include/kernel/signaldata/TabCommit.hpp (+1/-1)
storage/ndb/include/portlib/NdbDir.hpp (+1/-1)
storage/ndb/include/util/HashMap.hpp (+1/-1)
storage/ndb/ndbapi-examples/ndbapi_multi_cursor/main.cpp (+1/-1)
storage/ndb/src/common/debugger/signaldata/AlterIndxImpl.cpp (+1/-1)
storage/ndb/src/common/debugger/signaldata/ApiVersion.cpp (+1/-1)
storage/ndb/src/common/debugger/signaldata/BuildIndx.cpp (+1/-1)
storage/ndb/src/common/debugger/signaldata/BuildIndxImpl.cpp (+1/-1)
storage/ndb/src/common/debugger/signaldata/CreateIndxImpl.cpp (+1/-1)
storage/ndb/src/common/debugger/signaldata/CreateTab.cpp (+1/-1)
storage/ndb/src/common/debugger/signaldata/CreateTable.cpp (+1/-1)
storage/ndb/src/common/debugger/signaldata/CreateTrigImpl.cpp (+1/-1)
storage/ndb/src/common/debugger/signaldata/DropIndxImpl.cpp (+1/-1)
storage/ndb/src/common/debugger/signaldata/DropTable.cpp (+1/-1)
storage/ndb/src/common/debugger/signaldata/DropTrigImpl.cpp (+1/-1)
storage/ndb/src/common/debugger/signaldata/GetTabInfo.cpp (+1/-1)
storage/ndb/src/common/debugger/signaldata/IndexStatSignal.cpp (+1/-1)
storage/ndb/src/common/debugger/signaldata/SchemaTrans.cpp (+1/-1)
storage/ndb/src/common/debugger/signaldata/SchemaTransImpl.cpp (+1/-1)
storage/ndb/src/common/portlib/NdbDir.cpp (+1/-1)
storage/ndb/src/common/util/HashMap.cpp (+1/-1)
storage/ndb/src/kernel/angel.cpp (+1/-1)
storage/ndb/src/kernel/angel.hpp (+1/-1)
storage/ndb/src/kernel/blocks/LocalProxy.cpp (+1/-1)
storage/ndb/src/kernel/blocks/LocalProxy.hpp (+1/-1)
storage/ndb/src/kernel/blocks/PgmanProxy.cpp (+1/-1)
storage/ndb/src/kernel/blocks/PgmanProxy.hpp (+1/-1)
storage/ndb/src/kernel/blocks/RestoreProxy.cpp (+1/-1)
storage/ndb/src/kernel/blocks/RestoreProxy.hpp (+1/-1)
storage/ndb/src/kernel/blocks/backup/BackupProxy.cpp (+1/-1)
storage/ndb/src/kernel/blocks/backup/BackupProxy.hpp (+1/-1)
storage/ndb/src/kernel/blocks/dbacc/DbaccProxy.cpp (+1/-1)
storage/ndb/src/kernel/blocks/dbacc/DbaccProxy.hpp (+1/-1)
storage/ndb/src/kernel/blocks/dbinfo/Dbinfo.cpp (+1/-1)
storage/ndb/src/kernel/blocks/dbinfo/Dbinfo.hpp (+1/-1)
storage/ndb/src/kernel/blocks/dblqh/DblqhCommon.cpp (+1/-1)
storage/ndb/src/kernel/blocks/dblqh/DblqhCommon.hpp (+1/-1)
storage/ndb/src/kernel/blocks/dblqh/DblqhProxy.cpp (+1/-1)
storage/ndb/src/kernel/blocks/dblqh/DblqhProxy.hpp (+1/-1)
storage/ndb/src/kernel/blocks/dbspj/DbspjProxy.hpp (+1/-1)
storage/ndb/src/kernel/blocks/dbtup/DbtupClient.cpp (+1/-1)
storage/ndb/src/kernel/blocks/dbtup/DbtupProxy.cpp (+1/-1)
storage/ndb/src/kernel/blocks/dbtup/DbtupProxy.hpp (+1/-1)
storage/ndb/src/kernel/blocks/dbtux/DbtuxProxy.cpp (+1/-1)
storage/ndb/src/kernel/blocks/dbtux/DbtuxProxy.hpp (+1/-1)
storage/ndb/src/kernel/blocks/ndbfs/AsyncIoThread.cpp (+1/-1)
storage/ndb/src/kernel/blocks/ndbfs/AsyncIoThread.hpp (+1/-1)
storage/ndb/src/kernel/ndbd.cpp (+1/-1)
storage/ndb/src/kernel/ndbd.hpp (+1/-1)
storage/ndb/src/kernel/vm/ArenaPool.cpp (+1/-1)
storage/ndb/src/kernel/vm/ArenaPool.hpp (+1/-1)
storage/ndb/src/kernel/vm/GlobalData.cpp (+1/-1)
storage/ndb/src/kernel/vm/LongSignal.cpp (+1/-1)
storage/ndb/src/kernel/vm/LongSignalImpl.hpp (+1/-1)
storage/ndb/src/kernel/vm/LongSignal_mt.cpp (+1/-1)
storage/ndb/src/kernel/vm/LongSignal_nonmt.cpp (+1/-1)
storage/ndb/src/kernel/vm/NdbSeqLock.hpp (+1/-1)
storage/ndb/src/kernel/vm/SafeMutex.cpp (+1/-1)
storage/ndb/src/kernel/vm/SafeMutex.hpp (+1/-1)
storage/ndb/src/kernel/vm/SimplePropertiesSection_mt.cpp (+1/-1)
storage/ndb/src/kernel/vm/SimplePropertiesSection_nonmt.cpp (+1/-1)
storage/ndb/src/kernel/vm/SimulatedBlock_mt.cpp (+1/-1)
storage/ndb/src/kernel/vm/SimulatedBlock_nonmt.cpp (+1/-1)
storage/ndb/src/kernel/vm/TransporterCallbackKernel.hpp (+1/-1)
storage/ndb/src/kernel/vm/TransporterCallback_mt.cpp (+1/-1)
storage/ndb/src/kernel/vm/TransporterCallback_nonmt.cpp (+1/-1)
storage/ndb/src/kernel/vm/mt-asm.h (+1/-1)
storage/ndb/src/kernel/vm/mt.cpp (+1/-1)
storage/ndb/src/kernel/vm/mt.hpp (+1/-1)
storage/ndb/src/mgmsrv/ConfigManager.cpp (+1/-1)
storage/ndb/src/mgmsrv/ConfigManager.hpp (+1/-1)
storage/ndb/src/mgmsrv/ConfigSubscriber.hpp (+1/-1)
storage/ndb/src/mgmsrv/Defragger.hpp (+1/-1)
storage/ndb/src/mgmsrv/MgmtThread.hpp (+1/-1)
storage/ndb/src/ndbapi/NdbIndexStatImpl.cpp (+1/-1)
storage/ndb/src/ndbapi/NdbIndexStatImpl.hpp (+1/-1)
storage/ndb/src/ndbapi/NdbQueryBuilder.hpp (+1/-1)
storage/ndb/src/ndbapi/NdbQueryOperation.hpp (+1/-1)
storage/ndb/src/ndbapi/NdbQueryOperationImpl.hpp (+1/-1)
storage/ndb/test/include/NdbMgmd.hpp (+1/-1)
storage/ndb/test/include/SocketInputStream2.hpp (+1/-1)
storage/ndb/test/ndbapi/reorg_tab.cpp (+1/-1)
storage/ndb/test/ndbapi/testLimits.cpp (+1/-1)
storage/ndb/test/ndbapi/testNativeDefault.cpp (+1/-1)
storage/ndb/test/ndbapi/testSingleUserMode.cpp (+1/-1)
storage/ndb/test/src/SocketInputStream2.cpp (+1/-1)
storage/ndb/test/tools/test_spj.cpp (+1/-1)
storage/ndb/tools/ndb_dist_priv.sql (+1/-1)
storage/ndb/tools/ndb_dump_frm_data.cpp (+1/-1)
storage/ndb/tools/ndb_index_stat.cpp (+1/-1)
storage/perfschema/cursor_by_account.cc (+1/-1)
storage/perfschema/cursor_by_account.h (+1/-1)
storage/perfschema/cursor_by_host.cc (+1/-1)
storage/perfschema/cursor_by_host.h (+1/-1)
storage/perfschema/cursor_by_thread.cc (+1/-1)
storage/perfschema/cursor_by_thread.h (+1/-1)
storage/perfschema/cursor_by_user.cc (+1/-1)
storage/perfschema/cursor_by_user.h (+1/-1)
storage/perfschema/pfs.cc (+92/-70)
storage/perfschema/pfs_account.cc (+59/-54)
storage/perfschema/pfs_account.h (+7/-7)
storage/perfschema/pfs_digest.cc (+25/-11)
storage/perfschema/pfs_digest.h (+4/-4)
storage/perfschema/pfs_events_stages.cc (+17/-3)
storage/perfschema/pfs_events_statements.cc (+17/-3)
storage/perfschema/pfs_events_waits.cc (+17/-3)
storage/perfschema/pfs_host.cc (+10/-2)
storage/perfschema/pfs_host.h (+3/-2)
storage/perfschema/pfs_instr.cc (+153/-79)
storage/perfschema/pfs_instr.h (+81/-24)
storage/perfschema/pfs_instr_class.cc (+6/-2)
storage/perfschema/pfs_instr_class.h (+9/-2)
storage/perfschema/pfs_setup_object.cc (+1/-1)
storage/perfschema/pfs_stat.h (+6/-1)
storage/perfschema/pfs_user.cc (+1/-1)
storage/perfschema/pfs_user.h (+1/-1)
storage/perfschema/table_esgs_by_account_by_event_name.cc (+1/-1)
storage/perfschema/table_esgs_by_account_by_event_name.h (+1/-1)
storage/perfschema/table_esgs_by_host_by_event_name.cc (+1/-1)
storage/perfschema/table_esgs_by_host_by_event_name.h (+1/-1)
storage/perfschema/table_esgs_by_user_by_event_name.cc (+1/-1)
storage/perfschema/table_esgs_by_user_by_event_name.h (+1/-1)
storage/perfschema/table_esms_by_account_by_event_name.cc (+1/-1)
storage/perfschema/table_esms_by_account_by_event_name.h (+1/-1)
storage/perfschema/table_esms_by_digest.cc (+1/-1)
storage/perfschema/table_esms_by_digest.h (+1/-1)
storage/perfschema/table_esms_by_host_by_event_name.cc (+1/-1)
storage/perfschema/table_esms_by_host_by_event_name.h (+1/-1)
storage/perfschema/table_esms_by_user_by_event_name.cc (+1/-1)
storage/perfschema/table_esms_by_user_by_event_name.h (+1/-1)
storage/perfschema/table_events_statements.cc (+9/-3)
storage/perfschema/table_ews_by_account_by_event_name.cc (+1/-1)
storage/perfschema/table_ews_by_account_by_event_name.h (+1/-1)
storage/perfschema/table_ews_by_host_by_event_name.cc (+1/-1)
storage/perfschema/table_ews_by_host_by_event_name.h (+1/-1)
storage/perfschema/table_ews_by_user_by_event_name.cc (+1/-1)
storage/perfschema/table_ews_by_user_by_event_name.h (+1/-1)
storage/perfschema/table_helper.cc (+16/-7)
storage/perfschema/table_helper.h (+3/-3)
storage/perfschema/table_os_global_by_type.cc (+1/-1)
storage/perfschema/table_os_global_by_type.h (+1/-1)
storage/perfschema/table_threads.cc (+54/-33)
storage/perfschema/table_tiws_by_table.cc (+1/-1)
storage/perfschema/table_tiws_by_table.h (+1/-1)
storage/perfschema/table_tlws_by_table.cc (+1/-1)
storage/perfschema/table_tlws_by_table.h (+1/-1)
storage/perfschema/unittest/CMakeLists.txt (+2/-2)
storage/perfschema/unittest/stub_pfs_defaults.h (+1/-1)
storage/perfschema/unittest/stub_server_misc.h (+1/-1)
strings/conf_to_src.c (+1/-1)
strings/decimal.c (+1/-1)
strings/my_strtoll10.c (+2/-2)
strings/t_ctype.h (+1/-1)
strings/xml.c (+1/-1)
support-files/MacOSX/Description.plist.sh (+1/-1)
support-files/MacOSX/Info.plist.sh (+1/-1)
support-files/MacOSX/MySQLCOM (+1/-1)
support-files/MacOSX/ReadMe.txt (+1/-2)
support-files/MacOSX/StartupItem.Description.plist (+1/-1)
support-files/MacOSX/StartupItem.Info.plist (+1/-1)
support-files/MacOSX/StartupItem.postinstall (+1/-1)
support-files/MacOSX/StartupParameters.plist.sh (+1/-1)
support-files/MacOSX/mwar-wrapper (+1/-1)
support-files/MacOSX/mwcc-wrapper (+1/-1)
support-files/MacOSX/postflight.sh (+2/-2)
support-files/MacOSX/preflight.sh (+2/-2)
support-files/MySQL-shared-compat.spec.sh (+3/-3)
support-files/RHEL4-SElinux/mysql.fc (+1/-1)
support-files/RHEL4-SElinux/mysql.te (+1/-1)
support-files/build-tags (+1/-1)
support-files/compiler_warnings.supp (+1/-1)
support-files/mysql.m4 (+2/-2)
support-files/mysql.server.sh (+7/-1)
support-files/mysql.spec.sh (+74/-92)
tests/connect_test.c (+1/-1)
tests/deadlock_test.c (+1/-1)
tests/drop_test.pl (+1/-1)
tests/export.pl (+1/-1)
tests/fork2_test.pl (+1/-1)
tests/fork_big.pl (+1/-1)
tests/fork_big2.pl (+1/-1)
tests/index_corrupt.pl (+1/-1)
tests/insert_and_repair.pl (+1/-1)
tests/insert_test.c (+1/-1)
tests/list_test.c (+1/-1)
tests/lock_test.pl (+1/-1)
tests/mysql_client_fw.c (+1/-1)
tests/mysql_client_test.c (+229/-165)
tests/pmail.pl (+1/-1)
tests/rename_test.pl (+1/-1)
tests/select_test.c (+1/-1)
tests/showdb_test.c (+1/-1)
tests/ssl_test.c (+1/-1)
tests/table_types.pl (+1/-1)
tests/test_delayed_insert.pl (+1/-1)
tests/truncate.pl (+1/-1)
unittest/gunit/CMakeLists.txt (+9/-2)
unittest/gunit/alignment-t.cc (+2/-2)
unittest/gunit/bounded_queue-t.cc (+1/-1)
unittest/gunit/bounds_checked_array-t.cc (+1/-1)
unittest/gunit/byteorder-t.cc (+2/-2)
unittest/gunit/client_string-t.cc (+2/-2)
unittest/gunit/cost_estimate-t.cc (+1/-1)
unittest/gunit/dbug-t.cc (+85/-2)
unittest/gunit/decimal-t.cc (+2/-2)
unittest/gunit/dynarray-t.cc (+7/-2)
unittest/gunit/explain_filename-t.cc (+193/-0)
unittest/gunit/field-t.cc (+1/-1)
unittest/gunit/field_date-t.cc (+1/-1)
unittest/gunit/field_datetime-t.cc (+1/-1)
unittest/gunit/field_long-t.cc (+1/-1)
unittest/gunit/field_newdecimal-t.cc (+1/-1)
unittest/gunit/field_temporal_utils.h (+1/-1)
unittest/gunit/filesort_buffer-t.cc (+2/-2)
unittest/gunit/filesort_compare-t.cc (+2/-2)
unittest/gunit/get_diagnostics-t.cc (+6/-7)
unittest/gunit/handler-t.cc (+2/-2)
unittest/gunit/handler-t.h (+2/-2)
unittest/gunit/item-t.cc (+1/-1)
unittest/gunit/join_tab_sort-t.cc (+1/-1)
unittest/gunit/log_throttle-t.cc (+247/-0)
unittest/gunit/make_sortkey-t.cc (+2/-2)
unittest/gunit/mdl-t.cc (+3/-34)
unittest/gunit/mock_create_field.h (+1/-1)
unittest/gunit/mock_field_timestamp.h (+1/-1)
unittest/gunit/mock_field_timestampf.h (+1/-1)
unittest/gunit/my_decimal-t.cc (+1/-1)
unittest/gunit/my_error-t.cc (+2/-2)
unittest/gunit/my_fileutils-t.cc (+38/-38)
unittest/gunit/my_regex-t.cc (+1/-1)
unittest/gunit/mysys_my_rdtsc-t.cc (+2/-2)
unittest/gunit/mysys_my_vsnprintf-t.cc (+0/-2)
unittest/gunit/opt_range-t.cc (+1/-1)
unittest/gunit/segfault-t.cc (+5/-2)
unittest/gunit/sql_string-t.cc (+2/-2)
unittest/gunit/stdcxx-t.cc (+2/-2)
unittest/gunit/string-tests.cc (+2/-2)
unittest/gunit/strtoll-t.cc (+48/-0)
unittest/gunit/test_mdl_context_owner.h (+1/-1)
unittest/gunit/test_utils.cc (+1/-1)
unittest/gunit/test_utils.h (+1/-1)
unittest/gunit/yassl/yassl-t.cc (+2/-2)
unittest/mytap/tap.c (+1/-1)
unittest/mytap/tap.h (+1/-1)
vio/viossl.c (+85/-20)
Contents conflict in storage/innobase/xtrabackup/Makefile
Text conflict in storage/innobase/xtrabackup/test/run.sh
Text conflict in storage/innobase/xtrabackup/utils/build-dpkg.sh
Text conflict in storage/innobase/xtrabackup/utils/xtrabackup.spec
To merge this branch: bzr merge lp:~akopytov/percona-xtrabackup/rebase-2.2-on-mysql-5.6.14
Reviewer Review Type Date Requested Status
Laurynas Biveinis (community) Approve
Alexey Kopytov (community) Approve
Review via email: mp+196856@code.launchpad.net
To post a comment you must log in.
Revision history for this message
Alexey Kopytov (akopytov) wrote :

compact_compressed failures is most likely an upstream bug. Reported as bug #1255476 for further investigation.

review: Approve
Revision history for this message
Laurynas Biveinis (laurynas-biveinis) wrote :

I have not reviewed the whole diff (80000 lines; 13000 lines for
InnoDB) for any possible XtraBackup issues. I have reviewed a diff
of diffs between this MP diff and MySQL 5.6.11-5.6.14 diff only.

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'BUILD/SETUP.sh'
2--- BUILD/SETUP.sh 2013-02-26 05:45:28 +0000
3+++ BUILD/SETUP.sh 2013-11-27 10:38:56 +0000
4@@ -14,8 +14,8 @@
5 #
6 # You should have received a copy of the GNU Library General Public
7 # License along with this library; if not, write to the Free
8-# Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
9-# MA 02111-1307, USA
10+# Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
11+# MA 02110-1301, USA
12
13 ########################################################################
14
15
16=== modified file 'BUILD/compile-pentium'
17--- BUILD/compile-pentium 2013-02-26 05:45:28 +0000
18+++ BUILD/compile-pentium 2013-11-27 10:38:56 +0000
19@@ -13,7 +13,7 @@
20 #
21 # You should have received a copy of the GNU General Public License
22 # along with this program; if not, write to the Free Software
23-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
24+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
25
26 path=`dirname $0`
27 cmake $path/.. -DWITH_DEBUG=0
28
29=== modified file 'BUILD/compile-pentium-debug-max-no-ndb'
30--- BUILD/compile-pentium-debug-max-no-ndb 2013-02-26 05:45:28 +0000
31+++ BUILD/compile-pentium-debug-max-no-ndb 2013-11-27 10:38:56 +0000
32@@ -13,7 +13,7 @@
33 #
34 # You should have received a copy of the GNU General Public License
35 # along with this program; if not, write to the Free Software
36-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
37+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
38
39 path=`dirname $0`
40 cmake $path/.. -DWITH_DEBUG=1 -DWITH_NDBCLUSTER=0
41
42=== modified file 'BUILD/compile-pentium-gcov'
43--- BUILD/compile-pentium-gcov 2012-03-23 09:29:43 +0000
44+++ BUILD/compile-pentium-gcov 2013-11-27 10:38:56 +0000
45@@ -13,7 +13,7 @@
46 #
47 # You should have received a copy of the GNU General Public License
48 # along with this program; if not, write to the Free Software
49-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
50+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
51
52 path=`dirname $0`
53 cmake $path/.. -DWITH_DEBUG=1 -DENABLE_GCOV=ON
54
55=== modified file 'BUILD/compile-pentium-gprof'
56--- BUILD/compile-pentium-gprof 2012-03-23 09:29:43 +0000
57+++ BUILD/compile-pentium-gprof 2013-11-27 10:38:56 +0000
58@@ -13,7 +13,7 @@
59 #
60 # You should have received a copy of the GNU General Public License
61 # along with this program; if not, write to the Free Software
62-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
63+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
64
65 path=`dirname $0`
66 cmake $path/.. -DWITH_DEBUG=0 -DENABLE_GPROF=ON
67
68=== modified file 'BUILD/compile-pentium-valgrind-max-no-ndb'
69--- BUILD/compile-pentium-valgrind-max-no-ndb 2012-03-23 09:29:43 +0000
70+++ BUILD/compile-pentium-valgrind-max-no-ndb 2013-11-27 10:38:56 +0000
71@@ -14,8 +14,8 @@
72 #
73 # You should have received a copy of the GNU Library General Public
74 # License along with this library; if not, write to the Free
75-# Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
76-# MA 02111-1307, USA
77+# Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
78+# MA 02110-1301, USA
79
80 path=`dirname $0`
81 cmake $path/.. -DWITH_DEBUG=1 -DWITH_VALGRIND=1 \
82
83=== modified file 'BUILD/compile-pentium64'
84--- BUILD/compile-pentium64 2012-03-23 09:29:43 +0000
85+++ BUILD/compile-pentium64 2013-11-27 10:38:56 +0000
86@@ -14,8 +14,8 @@
87 #
88 # You should have received a copy of the GNU Library General Public
89 # License along with this library; if not, write to the Free
90-# Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
91-# MA 02111-1307, USA
92+# Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
93+# MA 02110-1301, USA
94
95 path=`dirname $0`
96 cmake $path/.. -DCMAKE_CXX_FLAGS=-m64 -DCMAKE_C_FLAGS=-m64
97
98=== modified file 'CMakeLists.txt'
99--- CMakeLists.txt 2013-11-27 10:38:46 +0000
100+++ CMakeLists.txt 2013-11-27 10:38:56 +0000
101@@ -1,4 +1,4 @@
102-# Copyright (c) 2006, 2012, Oracle and/or its affiliates. All rights reserved.
103+# Copyright (c) 2006, 2013, Oracle and/or its affiliates. All rights reserved.
104 #
105 # This program is free software; you can redistribute it and/or modify
106 # it under the terms of the GNU General Public License as published by
107@@ -335,8 +335,8 @@
108 MYSQL_CHECK_ZLIB_WITH_COMPRESS()
109 # Add bundled yassl/taocrypt or system openssl.
110 MYSQL_CHECK_SSL()
111-# Add readline or libedit.
112-MYSQL_CHECK_READLINE()
113+# Add system/bundled editline.
114+MYSQL_CHECK_EDITLINE()
115 # Add libevent
116 MYSQL_CHECK_LIBEVENT()
117
118@@ -388,6 +388,10 @@
119 ADD_SUBDIRECTORY(unittest/examples)
120 ADD_SUBDIRECTORY(unittest/mytap)
121 ADD_SUBDIRECTORY(unittest/mytap/t)
122+ # Visual Studio 11 needs this extra flag in order to compile gmock.
123+ IF(WIN32)
124+ ADD_DEFINITIONS( /D _VARIADIC_MAX=10 )
125+ ENDIF()
126 ADD_SUBDIRECTORY(unittest/gunit)
127 ENDIF()
128
129
130=== modified file 'Docs/mysql.info'
131--- Docs/mysql.info 2007-11-02 11:29:13 +0000
132+++ Docs/mysql.info 2013-11-27 10:38:56 +0000
133@@ -1,4 +1,3 @@
134
135 The MySQL Reference Manual is available in various formats on
136-http://dev.mysql.com/doc; if you're interested in the DocBook XML
137-sources go to http://svn.mysql.com.
138+http://dev.mysql.com/doc.
139
140=== modified file 'INSTALL-SOURCE'
141--- INSTALL-SOURCE 2012-03-22 15:16:11 +0000
142+++ INSTALL-SOURCE 2013-11-27 10:38:56 +0000
143@@ -4,5 +4,4 @@
144 http://dev.mysql.com/doc/refman/5.5/en/source-installation.html
145
146 The MySQL Reference Manual is also available in various formats on
147-http://dev.mysql.com/doc; if you're interested in the DocBook XML
148-sources go to http://svn.mysql.com.
149+http://dev.mysql.com/doc.
150
151=== modified file 'INSTALL-WIN-SOURCE'
152--- INSTALL-WIN-SOURCE 2012-03-22 15:16:11 +0000
153+++ INSTALL-WIN-SOURCE 2013-11-27 10:38:56 +0000
154@@ -5,5 +5,4 @@
155 http://dev.mysql.com/doc/refman/5.5/en/source-installation.html
156
157 The MySQL Reference Manual is also available in various formats on
158-http://dev.mysql.com/doc; if you're interested in the DocBook XML
159-sources go to http://svn.mysql.com.
160+http://dev.mysql.com/doc.
161
162=== modified file 'README'
163--- README 2013-01-01 02:38:33 +0000
164+++ README 2013-11-27 10:38:56 +0000
165@@ -1,56 +1,56 @@
166-MySQL Server 5.6
167-
168-This is a release of MySQL, a dual-license SQL database server.
169-For the avoidance of doubt, this particular copy of the software
170-is released under the version 2 of the GNU General Public License.
171-MySQL is brought to you by Oracle.
172-
173-Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
174-
175-License information can be found in the COPYING file.
176-
177-MySQL FOSS License Exception
178-We want free and open source software applications under certain
179-licenses to be able to use specified GPL-licensed MySQL client
180-libraries despite the fact that not all such FOSS licenses are
181-compatible with version 2 of the GNU General Public License.
182-Therefore there are special exceptions to the terms and conditions
183-of the GPLv2 as applied to these client libraries, which are
184-identified and described in more detail in the FOSS License
185-Exception at
186-<http://www.mysql.com/about/legal/licensing/foss-exception.html>.
187-
188-This distribution may include materials developed by third
189-parties. For license and attribution notices for these
190-materials, please refer to the documentation that accompanies
191-this distribution (see the "Licenses for Third-Party Components"
192-appendix) or view the online documentation at
193-<http://dev.mysql.com/doc/>.
194-
195-GPLv2 Disclaimer
196-For the avoidance of doubt, except that if any license choice
197-other than GPL or LGPL is available it will apply instead,
198-Oracle elects to use only the General Public License version 2
199-(GPLv2) at this time for any software where a choice of GPL
200-license versions is made available with the language indicating
201-that GPLv2 or any later version may be used, or where a choice
202-of which version of the GPL is applied is otherwise unspecified.
203-
204-For further information about MySQL or additional documentation,
205-see:
206-- The latest information about MySQL: http://www.mysql.com
207-- The current MySQL documentation: http://dev.mysql.com/doc
208-
209-Some Reference Manual sections of special interest:
210-- If you are migrating from an older version of MySQL, please
211- read the "Upgrading from..." section.
212-- To see what MySQL can do, take a look at the features section.
213-- For installation instructions, see the Installing and Upgrading
214- chapter.
215-- For the new features/bugfix history, see the MySQL Change History
216- appendix.
217-
218-You can browse the MySQL Reference Manual online or download it
219-in any of several formats at the URL given earlier in this file.
220-Source distributions include a local copy of the manual in the
221-Docs directory.
222+MySQL Server 5.6
223+
224+This is a release of MySQL, a dual-license SQL database server.
225+For the avoidance of doubt, this particular copy of the software
226+is released under the version 2 of the GNU General Public License.
227+MySQL is brought to you by Oracle.
228+
229+Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
230+
231+License information can be found in the COPYING file.
232+
233+MySQL FOSS License Exception
234+We want free and open source software applications under certain
235+licenses to be able to use specified GPL-licensed MySQL client
236+libraries despite the fact that not all such FOSS licenses are
237+compatible with version 2 of the GNU General Public License.
238+Therefore there are special exceptions to the terms and conditions
239+of the GPLv2 as applied to these client libraries, which are
240+identified and described in more detail in the FOSS License
241+Exception at
242+<http://www.mysql.com/about/legal/licensing/foss-exception.html>.
243+
244+This distribution may include materials developed by third
245+parties. For license and attribution notices for these
246+materials, please refer to the documentation that accompanies
247+this distribution (see the "Licenses for Third-Party Components"
248+appendix) or view the online documentation at
249+<http://dev.mysql.com/doc/>.
250+
251+GPLv2 Disclaimer
252+For the avoidance of doubt, except that if any license choice
253+other than GPL or LGPL is available it will apply instead,
254+Oracle elects to use only the General Public License version 2
255+(GPLv2) at this time for any software where a choice of GPL
256+license versions is made available with the language indicating
257+that GPLv2 or any later version may be used, or where a choice
258+of which version of the GPL is applied is otherwise unspecified.
259+
260+For further information about MySQL or additional documentation,
261+see:
262+- The latest information about MySQL: http://www.mysql.com
263+- The current MySQL documentation: http://dev.mysql.com/doc
264+
265+Some Reference Manual sections of special interest:
266+- If you are migrating from an older version of MySQL, please
267+ read the "Upgrading from..." section.
268+- To see what MySQL can do, take a look at the features section.
269+- For installation instructions, see the Installing and Upgrading
270+ chapter.
271+- For the new features/bugfix history, see the MySQL Change History
272+ appendix.
273+
274+You can browse the MySQL Reference Manual online or download it
275+in any of several formats at the URL given earlier in this file.
276+Source distributions include a local copy of the manual in the
277+Docs directory.
278
279=== modified file 'VERSION'
280--- VERSION 2013-01-08 06:31:14 +0000
281+++ VERSION 2013-11-27 10:38:56 +0000
282@@ -1,4 +1,4 @@
283 MYSQL_VERSION_MAJOR=5
284 MYSQL_VERSION_MINOR=6
285-MYSQL_VERSION_PATCH=11
286+MYSQL_VERSION_PATCH=14
287 MYSQL_VERSION_EXTRA=
288
289=== modified file 'client/CMakeLists.txt'
290--- client/CMakeLists.txt 2012-09-05 08:29:51 +0000
291+++ client/CMakeLists.txt 2013-11-27 10:38:56 +0000
292@@ -1,4 +1,4 @@
293-# Copyright (c) 2006, 2012, Oracle and/or its affiliates. All rights reserved.
294+# Copyright (c) 2006, 2013, Oracle and/or its affiliates. All rights reserved.
295 #
296 # This program is free software; you can redistribute it and/or modify
297 # it under the terms of the GNU General Public License as published by
298@@ -22,7 +22,7 @@
299 ${CMAKE_SOURCE_DIR}/regex
300 ${CMAKE_SOURCE_DIR}/sql
301 ${CMAKE_SOURCE_DIR}/strings
302- ${READLINE_INCLUDE_DIR}
303+ ${EDITLINE_INCLUDE_DIR}
304 ${CMAKE_CURRENT_BINARY_DIR}
305 )
306
307@@ -30,13 +30,11 @@
308 ## We will need libeay32.dll and ssleay32.dll when running client executables.
309 COPY_OPENSSL_DLLS(copy_openssl_client)
310
311-
312-ADD_DEFINITIONS(${READLINE_DEFINES})
313 ADD_DEFINITIONS(${SSL_DEFINES})
314 MYSQL_ADD_EXECUTABLE(mysql completion_hash.cc mysql.cc readline.cc sql_string.cc)
315 TARGET_LINK_LIBRARIES(mysql mysqlclient)
316 IF(UNIX)
317- TARGET_LINK_LIBRARIES(mysql ${READLINE_LIBRARY})
318+ TARGET_LINK_LIBRARIES(mysql ${EDITLINE_LIBRARY})
319 ENDIF(UNIX)
320
321 MYSQL_ADD_EXECUTABLE(mysqltest mysqltest.cc COMPONENT Test)
322
323=== modified file 'client/completion_hash.h'
324--- client/completion_hash.h 2013-02-26 05:45:28 +0000
325+++ client/completion_hash.h 2013-11-27 10:38:56 +0000
326@@ -13,8 +13,8 @@
327
328 You should have received a copy of the GNU Library General Public
329 License along with this library; if not, write to the Free
330- Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
331- MA 02111-1307, USA */
332+ Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
333+ MA 02110-1301, USA */
334
335 #ifndef _HASH_
336 #define _HASH_
337
338=== modified file 'client/echo.c'
339--- client/echo.c 2013-02-26 05:45:28 +0000
340+++ client/echo.c 2013-11-27 10:38:56 +0000
341@@ -12,7 +12,7 @@
342
343 You should have received a copy of the GNU General Public License
344 along with this program; if not, write to the Free Software
345- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
346+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
347
348 /*
349 echo is a replacement for the "echo" command builtin to cmd.exe
350
351=== modified file 'client/mysql.cc'
352--- client/mysql.cc 2013-02-28 13:55:23 +0000
353+++ client/mysql.cc 2013-11-27 10:38:56 +0000
354@@ -97,7 +97,7 @@
355 #if defined(__WIN__)
356 #include <conio.h>
357 #else
358-#include <readline/readline.h>
359+#include <readline.h>
360 #define HAVE_READLINE
361 #define USE_POPEN
362 #endif
363@@ -164,6 +164,7 @@
364 static char *opt_bind_addr = NULL;
365 static int connect_flag=CLIENT_INTERACTIVE;
366 static my_bool opt_binary_mode= FALSE;
367+static my_bool opt_connect_expired_password= FALSE;
368 static char *current_host,*current_db,*current_user=0,*opt_password=0,
369 *current_prompt=0, *delimiter_str= 0,
370 *default_charset= (char*) MYSQL_AUTODETECT_CHARSET_NAME,
371@@ -1769,6 +1770,11 @@
372 &opt_server_public_key, &opt_server_public_key, 0,
373 GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
374 #endif
375+ {"connect-expired-password", 0,
376+ "Notify the server that this client is prepared to handle expired "
377+ "password sandbox mode.",
378+ &opt_connect_expired_password, &opt_connect_expired_password, 0, GET_BOOL,
379+ NO_ARG, 0, 0, 0, 0, 0, 0},
380 { 0, 0, 0, 0, 0, 0, GET_NO_ARG, NO_ARG, 0, 0, 0, 0, 0, 0}
381 };
382
383@@ -2038,7 +2044,7 @@
384 String buffer;
385 #endif
386
387- char *line;
388+ char *line= NULL;
389 char in_string=0;
390 ulong line_number=0;
391 bool ml_comment= 0;
392@@ -2124,6 +2130,13 @@
393 #else
394 if (opt_outfile)
395 fputs(prompt, OUTFILE);
396+ /*
397+ free the previous entered line.
398+ Note: my_free() cannot be used here as the memory was allocated under
399+ the readline/libedit library.
400+ */
401+ if (line)
402+ free(line);
403 line= readline(prompt);
404 #endif /* defined(__WIN__) */
405
406@@ -2183,6 +2196,14 @@
407 #if defined(__WIN__)
408 buffer.free();
409 tmpbuf.free();
410+#else
411+ if (interactive)
412+ /*
413+ free the last entered line.
414+ Note: my_free() cannot be used here as the memory was allocated under
415+ the readline/libedit library.
416+ */
417+ free(line);
418 #endif
419
420 /*
421@@ -2995,7 +3016,7 @@
422 for (i= 0; i < histignore_patterns.elements; i++)
423 {
424 tmp= dynamic_element(&histignore_patterns, i, LEX_STRING *);
425- if ((rc= charset_info->coll->wildcmp(&my_charset_latin1,
426+ if ((rc= charset_info->coll->wildcmp(charset_info,
427 string, string + strlen(string),
428 tmp->str, tmp->str + tmp->length,
429 wild_prefix, wild_one,
430@@ -3389,6 +3410,8 @@
431 do
432 {
433 char *pos;
434+ bool batchmode= (status.batch && verbose <= 1) ? TRUE : FALSE;
435+ buff[0]= 0;
436
437 if (quick)
438 {
439@@ -3441,9 +3464,10 @@
440 print_tab_data(result);
441 else
442 print_table_data(result);
443- sprintf(buff,"%ld %s in set",
444- (long) mysql_num_rows(result),
445- (long) mysql_num_rows(result) == 1 ? "row" : "rows");
446+ if( !batchmode )
447+ sprintf(buff,"%lld %s in set",
448+ mysql_num_rows(result),
449+ mysql_num_rows(result) == 1LL ? "row" : "rows");
450 end_pager();
451 if (mysql_errno(&mysql))
452 error= put_error(&mysql);
453@@ -3451,13 +3475,13 @@
454 }
455 else if (mysql_affected_rows(&mysql) == ~(ulonglong) 0)
456 strmov(buff,"Query OK");
457- else
458- sprintf(buff,"Query OK, %ld %s affected",
459- (long) mysql_affected_rows(&mysql),
460- (long) mysql_affected_rows(&mysql) == 1 ? "row" : "rows");
461+ else if( !batchmode )
462+ sprintf(buff,"Query OK, %lld %s affected",
463+ mysql_affected_rows(&mysql),
464+ mysql_affected_rows(&mysql) == 1LL ? "row" : "rows");
465
466 pos=strend(buff);
467- if ((warnings= mysql_warning_count(&mysql)))
468+ if ((warnings= mysql_warning_count(&mysql)) && !batchmode)
469 {
470 *pos++= ',';
471 *pos++= ' ';
472@@ -4685,7 +4709,8 @@
473 sql_real_connect(char *host,char *database,char *user,char *password,
474 uint silent)
475 {
476- my_bool interactive= status.batch ? FALSE : TRUE;
477+ my_bool handle_expired= (opt_connect_expired_password || !status.batch) ?
478+ TRUE : FALSE;
479
480 if (connected)
481 {
482@@ -4777,7 +4802,7 @@
483 mysql_options(&mysql, MYSQL_OPT_CONNECT_ATTR_RESET, 0);
484 mysql_options4(&mysql, MYSQL_OPT_CONNECT_ATTR_ADD,
485 "program_name", "mysql");
486- mysql_options(&mysql, MYSQL_OPT_CAN_HANDLE_EXPIRED_PASSWORDS, &interactive);
487+ mysql_options(&mysql, MYSQL_OPT_CAN_HANDLE_EXPIRED_PASSWORDS, &handle_expired);
488
489 if (!mysql_real_connect(&mysql, host, user, password,
490 database, opt_mysql_port, opt_mysql_unix_port,
491
492=== modified file 'client/mysql_plugin.c'
493--- client/mysql_plugin.c 2013-02-26 05:45:28 +0000
494+++ client/mysql_plugin.c 2013-11-27 10:38:56 +0000
495@@ -12,7 +12,7 @@
496
497 You should have received a copy of the GNU General Public License
498 along with this program; if not, write to the Free Software
499- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
500+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
501 */
502
503 #include <m_string.h>
504
505=== modified file 'client/mysql_upgrade.c'
506--- client/mysql_upgrade.c 2013-02-13 13:11:37 +0000
507+++ client/mysql_upgrade.c 2013-11-27 10:38:56 +0000
508@@ -1,5 +1,5 @@
509 /*
510- Copyright (c) 2006, 2012, Oracle and/or its affiliates. All rights reserved.
511+ Copyright (c) 2006, 2013, Oracle and/or its affiliates. All rights reserved.
512
513 This program is free software; you can redistribute it and/or modify
514 it under the terms of the GNU General Public License as published by
515@@ -40,7 +40,7 @@
516 static char mysqlcheck_path[FN_REFLEN];
517
518 static my_bool opt_force, opt_verbose, debug_info_flag, debug_check_flag,
519- opt_systables_only;
520+ opt_systables_only, opt_version_check;
521 static uint my_end_arg= 0;
522 static char *opt_user= (char*)"root";
523
524@@ -129,6 +129,12 @@
525 "Base name of shared memory.", 0,
526 0, 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
527 #endif
528+ {"version-check", 'k', "Run this program only if its \'server version\' "
529+ "matches the version of the server to which it's connecting, (enabled by "
530+ "default); use --skip-version-check to avoid this check. Note: the \'server "
531+ "version\' of the program is the version of the MySQL server with which it "
532+ "was built/distributed.", &opt_version_check, &opt_version_check, 0,
533+ GET_BOOL, NO_ARG, 1, 0, 0, 0, 0, 0},
534 {"socket", 'S', "The socket file to use for connection.",
535 0, 0, 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
536 #include <sslopt-longopts.h>
537@@ -286,6 +292,7 @@
538 my_progname, optid == 'b' ? "basedir" : "datadir");
539 /* FALLTHROUGH */
540
541+ case 'k': /* --version-check */
542 case 'v': /* --verbose */
543 case 'f': /* --force */
544 case 's': /* --upgrade-system-tables */
545@@ -552,6 +559,8 @@
546 static int extract_variable_from_show(DYNAMIC_STRING* ds, char* value)
547 {
548 char *value_start, *value_end;
549+ size_t len;
550+
551 /*
552 The query returns "datadir\t<datadir>\n", skip past
553 the tab
554@@ -564,7 +573,9 @@
555 if ((value_end= strchr(value_start, '\n')) == NULL)
556 return 1; /* Unexpected result */
557
558- strncpy(value, value_start, MY_MIN(FN_REFLEN, value_end - value_start));
559+ len= (size_t) MY_MIN(FN_REFLEN, value_end-value_start);
560+ strncpy(value, value_start, len);
561+ value[len]= '\0';
562 return 0;
563 }
564
565@@ -891,6 +902,55 @@
566 };
567
568
569+/* Convert the specified version string into the numeric format. */
570+static ulong STDCALL calc_server_version(char *some_version)
571+{
572+ uint major, minor, version;
573+ char *point= some_version, *end_point;
574+ major= (uint) strtoul(point, &end_point, 10); point=end_point+1;
575+ minor= (uint) strtoul(point, &end_point, 10); point=end_point+1;
576+ version= (uint) strtoul(point, &end_point, 10);
577+ return (ulong) major * 10000L + (ulong)(minor * 100 + version);
578+}
579+
580+/**
581+ Check if the server version matches with the server version mysql_upgrade
582+ was compiled with.
583+
584+ @return 0 match successful
585+ 1 failed
586+*/
587+static int check_version_match(void)
588+{
589+ DYNAMIC_STRING ds_version;
590+ char version_str[NAME_CHAR_LEN + 1];
591+
592+ if (init_dynamic_string(&ds_version, NULL, NAME_CHAR_LEN, NAME_CHAR_LEN))
593+ die("Out of memory");
594+
595+ if (run_query("show variables like 'version'",
596+ &ds_version, FALSE) ||
597+ extract_variable_from_show(&ds_version, version_str))
598+ {
599+ dynstr_free(&ds_version);
600+ return 1; /* Query failed */
601+ }
602+
603+ dynstr_free(&ds_version);
604+
605+ if (calc_server_version((char *) version_str) != MYSQL_VERSION_ID)
606+ {
607+ fprintf(stderr, "Error: Server version (%s) does not match with the "
608+ "version of\nthe server (%s) with which this program was built/"
609+ "distributed. You can\nuse --skip-version-check to skip this "
610+ "check.\n", version_str, MYSQL_SERVER_VERSION);
611+ return 1;
612+ }
613+ else
614+ return 0;
615+}
616+
617+
618 int main(int argc, char **argv)
619 {
620 char self_name[FN_REFLEN];
621@@ -957,6 +1017,9 @@
622 die(NULL);
623 }
624
625+ if (opt_version_check && check_version_match())
626+ die("Upgrade failed");
627+
628 /*
629 Run "mysqlcheck" and "mysql_fix_privilege_tables.sql"
630 First run mysqlcheck on the system database.
631
632=== modified file 'client/mysqlbinlog.cc'
633--- client/mysqlbinlog.cc 2013-02-11 15:52:40 +0000
634+++ client/mysqlbinlog.cc 2013-11-27 10:38:56 +0000
635@@ -187,6 +187,10 @@
636 *opt_exclude_gtids_str= NULL;
637 static my_bool opt_skip_gtids= 0;
638 static bool filter_based_on_gtids= false;
639+
640+static bool in_transaction= false;
641+static bool seen_gtids= false;
642+
643 static Exit_status dump_local_log_entries(PRINT_EVENT_INFO *print_event_info,
644 const char* logname);
645 static Exit_status dump_remote_log_entries(PRINT_EVENT_INFO *print_event_info,
646@@ -745,6 +749,60 @@
647 filtered= filtered || opt_skip_gtids;
648 }
649 break;
650+ /* Skip previous gtids if --skip-gtids is set. */
651+ case PREVIOUS_GTIDS_LOG_EVENT:
652+ filtered= opt_skip_gtids;
653+ break;
654+
655+ /*
656+ Transaction boundaries reset the global filtering flag.
657+
658+ Since in the relay log a transaction can span multiple
659+ log files, we do not reset filter_based_on_gtids flag when
660+ processing control events (they can appear in the middle
661+ of a transaction). But then, if:
662+
663+ FILE1: ... GTID BEGIN QUERY QUERY COMMIT ROTATE
664+ FILE2: FD BEGIN QUERY QUERY COMMIT
665+
666+ Events on the second file would not be outputted, even
667+ though they should.
668+ */
669+ case XID_EVENT:
670+ filtered= filter_based_on_gtids;
671+ filter_based_on_gtids= false;
672+ break;
673+ case QUERY_EVENT:
674+ filtered= filter_based_on_gtids;
675+ if (((Query_log_event *)ev)->ends_group())
676+ filter_based_on_gtids= false;
677+ break;
678+
679+ /*
680+ Never skip STOP, FD, ROTATE, IGNORABLE or INCIDENT events.
681+ SLAVE_EVENT and START_EVENT_V3 are there for completion.
682+
683+ Although in the binlog transactions do not span multiple
684+ log files, in the relay-log, that can happen. As such,
685+ we need to explicitly state that we do not filter these
686+ events, because there is a chance that they appear in the
687+ middle of a filtered transaction, e.g.:
688+
689+ FILE1: ... GTID BEGIN QUERY QUERY ROTATE
690+ FILE2: FD QUERY QUERY COMMIT GTID BEGIN ...
691+
692+ In this case, ROTATE and FD events should be processed and
693+ outputted.
694+ */
695+ case START_EVENT_V3: /* for completion */
696+ case SLAVE_EVENT: /* for completion */
697+ case STOP_EVENT:
698+ case FORMAT_DESCRIPTION_EVENT:
699+ case ROTATE_EVENT:
700+ case IGNORABLE_LOG_EVENT:
701+ case INCIDENT_EVENT:
702+ filtered= false;
703+ break;
704 default:
705 filtered= filter_based_on_gtids;
706 break;
707@@ -842,7 +900,9 @@
708 bool parent_query_skips=
709 !((Query_log_event*) ev)->is_trans_keyword() &&
710 shall_skip_database(((Query_log_event*) ev)->db);
711-
712+ bool ends_group= ((Query_log_event*) ev)->ends_group();
713+ bool starts_group= ((Query_log_event*) ev)->starts_group();
714+
715 for (uint i= 0; i < buff_ev.elements; i++)
716 {
717 buff_event_info pop_event_array= *dynamic_element(&buff_ev, i, buff_event_info *);
718@@ -865,12 +925,28 @@
719 statements in the Query_log_event, we still need to handle DDL,
720 which causes a commit itself.
721 */
722- print_event_info->skipped_event_in_transaction= true;
723+
724+ if (seen_gtids && !in_transaction && !starts_group && !ends_group)
725+ {
726+ /*
727+ For DDLs, print the COMMIT right away.
728+ */
729+ fprintf(result_file, "COMMIT /* added by mysqlbinlog */%s\n", print_event_info->delimiter);
730+ print_event_info->skipped_event_in_transaction= false;
731+ in_transaction= false;
732+ }
733+ else
734+ print_event_info->skipped_event_in_transaction= true;
735 goto end;
736 }
737
738- if (((Query_log_event*) ev)->ends_group())
739+ if (ends_group)
740+ {
741+ in_transaction= false;
742 print_event_info->skipped_event_in_transaction= false;
743+ }
744+ else if (starts_group)
745+ in_transaction= true;
746
747 ev->print(result_file, print_event_info);
748 if (head->error == -1)
749@@ -1113,9 +1189,13 @@
750 bool skip_event= (ignored_map != NULL);
751 /*
752 end of statement check:
753- i) destroy/free ignored maps
754- ii) if skip event, flush cache now
755- */
756+ i) destroy/free ignored maps
757+ ii) if skip event
758+ a) set the unflushed_events flag to false
759+ b) since we are skipping the last event,
760+ append END-MARKER(') to body cache (if required)
761+ c) flush cache now
762+ */
763 if (stmt_end)
764 {
765 /*
766@@ -1134,11 +1214,22 @@
767 event was not skipped).
768 */
769 if (skip_event)
770+ {
771+ // set the unflushed_events flag to false
772+ print_event_info->have_unflushed_events= FALSE;
773+
774+ // append END-MARKER(') with delimiter
775+ IO_CACHE *const body_cache= &print_event_info->body_cache;
776+ if (my_b_tell(body_cache))
777+ my_b_printf(body_cache, "'%s\n", print_event_info->delimiter);
778+
779+ // flush cache
780 if ((copy_event_cache_to_file_and_reinit(&print_event_info->head_cache,
781 result_file, stop_never /* flush result_file */) ||
782 copy_event_cache_to_file_and_reinit(&print_event_info->body_cache,
783 result_file, stop_never /* flush result_file */)))
784 goto err;
785+ }
786 }
787
788 /* skip the event check */
789@@ -1188,8 +1279,10 @@
790 }
791 break;
792 }
793+ case ANONYMOUS_GTID_LOG_EVENT:
794 case GTID_LOG_EVENT:
795 {
796+ seen_gtids= true;
797 if (print_event_info->skipped_event_in_transaction == true)
798 fprintf(result_file, "COMMIT /* added by mysqlbinlog */%s\n", print_event_info->delimiter);
799 print_event_info->skipped_event_in_transaction= false;
800@@ -1201,12 +1294,40 @@
801 }
802 case XID_EVENT:
803 {
804+ in_transaction= false;
805 print_event_info->skipped_event_in_transaction= false;
806 ev->print(result_file, print_event_info);
807 if (head->error == -1)
808 goto err;
809 break;
810 }
811+ case ROTATE_EVENT:
812+ {
813+ Rotate_log_event *rev= (Rotate_log_event *) ev;
814+ /* no transaction context, gtids seen and not a fake rotate */
815+ if (seen_gtids)
816+ {
817+ /*
818+ Fake rotate events have 'when' set to zero. @c fake_rotate_event(...).
819+ */
820+ bool is_fake= (rev->when.tv_sec == 0);
821+ if (!in_transaction && !is_fake)
822+ {
823+ /*
824+ If processing multiple files, we must reset this flag,
825+ since there may be no gtids on the next one.
826+ */
827+ seen_gtids= false;
828+ fprintf(result_file, "SET @@SESSION.GTID_NEXT= 'AUTOMATIC' "
829+ "/* added by mysqlbinlog */ %s\n",
830+ print_event_info->delimiter);
831+ }
832+ }
833+ ev->print(result_file, print_event_info);
834+ if (head->error == -1)
835+ goto err;
836+ break;
837+ }
838 case PREVIOUS_GTIDS_LOG_EVENT:
839 if (one_database && !opt_skip_gtids)
840 warning("The option --database has been used. It may filter "
841@@ -2135,6 +2256,11 @@
842 */
843 continue;
844 }
845+ /*
846+ Reset the value of '# at pos' field shown against first event of
847+ next binlog file (fake rotate) picked by mysqlbinlog --to-last-log
848+ */
849+ old_off= start_position_mot;
850 len= 1; // fake Rotate, so don't increment old_off
851 }
852 }
853@@ -2843,3 +2969,4 @@
854 #include "uuid.cc"
855 #include "rpl_gtid_set.cc"
856 #include "rpl_gtid_specification.cc"
857+#include "rpl_tblmap.cc"
858
859=== modified file 'client/mysqldump.c'
860--- client/mysqldump.c 2013-02-26 05:45:28 +0000
861+++ client/mysqldump.c 2013-11-27 10:38:56 +0000
862@@ -12,7 +12,7 @@
863
864 You should have received a copy of the GNU General Public License
865 along with this program; if not, write to the Free Software
866- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
867+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
868 */
869
870 /* mysqldump.c - Dump a tables contents and format to an ASCII file
871@@ -84,14 +84,6 @@
872 #define IGNORE_DATA 0x01 /* don't dump data for this table */
873 #define IGNORE_INSERT_DELAYED 0x02 /* table doesn't support INSERT DELAYED */
874
875-/* general_log or slow_log tables under mysql database */
876-static inline my_bool general_log_or_slow_log_tables(const char *db,
877- const char *table)
878-{
879- return (strcmp(db, "mysql") == 0) &&
880- ((strcmp(table, "general_log") == 0) ||
881- (strcmp(table, "slow_log") == 0));
882-}
883
884 static void add_load_option(DYNAMIC_STRING *str, const char *option,
885 const char *option_value);
886@@ -2457,6 +2449,15 @@
887 DBUG_RETURN(0);
888 }
889
890+/* general_log or slow_log tables under mysql database */
891+static inline my_bool general_log_or_slow_log_tables(const char *db,
892+ const char *table)
893+{
894+ return (!my_strcasecmp(charset_info, db, "mysql")) &&
895+ (!my_strcasecmp(charset_info, table, "general_log") ||
896+ !my_strcasecmp(charset_info, table, "slow_log"));
897+}
898+
899 /*
900 get_table_structure -- retrievs database structure, prints out corresponding
901 CREATE statement and fills out insert_pat if the table is the type we will
902@@ -4379,7 +4380,8 @@
903 char table_buff[NAME_LEN*2+3];
904 char hash_key[2*NAME_LEN+2]; /* "db.tablename" */
905 char *afterdot;
906- int using_mysql_db= my_strcasecmp(&my_charset_latin1, database, "mysql");
907+ my_bool general_log_table_exists= 0, slow_log_table_exists=0;
908+ int using_mysql_db= !my_strcasecmp(charset_info, database, "mysql");
909 DBUG_ENTER("dump_all_tables_in_db");
910
911 afterdot= strmov(hash_key, database);
912@@ -4390,22 +4392,6 @@
913 if (opt_xml)
914 print_xml_tag(md_result_file, "", "\n", "database", "name=", database, NullS);
915
916- if (strcmp(database, "mysql") == 0)
917- {
918- char table_type[NAME_LEN];
919- char ignore_flag;
920- uint num_fields;
921- num_fields= get_table_structure((char *) "general_log",
922- database, table_type, &ignore_flag);
923- if (num_fields == 0)
924- verbose_msg("-- Warning: get_table_structure() failed with some internal "
925- "error for 'general_log' table\n");
926- num_fields= get_table_structure((char *) "slow_log",
927- database, table_type, &ignore_flag);
928- if (num_fields == 0)
929- verbose_msg("-- Warning: get_table_structure() failed with some internal "
930- "error for 'slow_log' table\n");
931- }
932 if (lock_tables)
933 {
934 DYNAMIC_STRING query;
935@@ -4451,6 +4437,26 @@
936 }
937 }
938 }
939+ else
940+ {
941+ /*
942+ If general_log and slow_log exists in the 'mysql' database,
943+ we should dump the table structure. But we cannot
944+ call get_table_structure() here as 'LOCK TABLES' query got executed
945+ above on the session and that 'LOCK TABLES' query does not contain
946+ 'general_log' and 'slow_log' tables. (you cannot acquire lock
947+ on log tables). Hence mark the existence of these log tables here and
948+ after 'UNLOCK TABLES' query is executed on the session, get the table
949+ structure from server and dump it in the file.
950+ */
951+ if (using_mysql_db)
952+ {
953+ if (!my_strcasecmp(charset_info, table, "general_log"))
954+ general_log_table_exists= 1;
955+ else if (!my_strcasecmp(charset_info, table, "slow_log"))
956+ slow_log_table_exists= 1;
957+ }
958+ }
959 }
960 if (opt_events && mysql_get_server_version(mysql) >= 50106)
961 {
962@@ -4469,7 +4475,26 @@
963 }
964 if (lock_tables)
965 (void) mysql_query_with_error_report(mysql, 0, "UNLOCK TABLES");
966- if (flush_privileges && using_mysql_db == 0)
967+ if (using_mysql_db)
968+ {
969+ char table_type[NAME_LEN];
970+ char ignore_flag;
971+ if (general_log_table_exists)
972+ {
973+ if (!get_table_structure((char *) "general_log",
974+ database, table_type, &ignore_flag) )
975+ verbose_msg("-- Warning: get_table_structure() failed with some internal "
976+ "error for 'general_log' table\n");
977+ }
978+ if (slow_log_table_exists)
979+ {
980+ if (!get_table_structure((char *) "slow_log",
981+ database, table_type, &ignore_flag) )
982+ verbose_msg("-- Warning: get_table_structure() failed with some internal "
983+ "error for 'slow_log' table\n");
984+ }
985+ }
986+ if (flush_privileges && using_mysql_db)
987 {
988 fprintf(md_result_file,"\n--\n-- Flush Grant Tables \n--\n");
989 fprintf(md_result_file,"\n/*! FLUSH PRIVILEGES */;\n");
990@@ -4841,7 +4866,7 @@
991 if (row[1])
992 fprintf(md_result_file, "MASTER_HOST='%s', ", row[1]);
993 if (row[3])
994- fprintf(md_result_file, "MASTER_PORT='%s', ", row[3]);
995+ fprintf(md_result_file, "MASTER_PORT=%s, ", row[3]);
996 }
997 fprintf(md_result_file,
998 "MASTER_LOG_FILE='%s', MASTER_LOG_POS=%s;\n", row[9], row[21]);
999@@ -5362,18 +5387,28 @@
1000 MYSQL_RES *gtid_mode_res;
1001 MYSQL_ROW gtid_mode_row;
1002 char *gtid_mode_val= 0;
1003+ char buf[32], query[64];
1004
1005 if (opt_set_gtid_purged_mode == SET_GTID_PURGED_OFF)
1006 return FALSE; /* nothing to be done */
1007
1008+ /*
1009+ Check if the server has the knowledge of GTIDs(pre mysql-5.6)
1010+ or if the gtid_mode is ON or OFF.
1011+ */
1012+ my_snprintf(query, sizeof(query), "SHOW VARIABLES LIKE %s",
1013+ quote_for_like("gtid_mode", buf));
1014
1015- /* check if gtid_mode is ON or OFF */
1016- if (mysql_query_with_error_report(mysql_con, &gtid_mode_res,
1017- "SELECT @@GTID_MODE"))
1018+ if (mysql_query_with_error_report(mysql_con, &gtid_mode_res, query))
1019 return TRUE;
1020
1021 gtid_mode_row = mysql_fetch_row(gtid_mode_res);
1022- gtid_mode_val = (char*)gtid_mode_row[0];
1023+
1024+ /*
1025+ gtid_mode_row is NULL for pre 5.6 versions. For versions >= 5.6,
1026+ get the gtid_mode value from the second column.
1027+ */
1028+ gtid_mode_val = gtid_mode_row ? (char*)gtid_mode_row[1] : NULL;
1029
1030 if (gtid_mode_val && strcmp(gtid_mode_val, "OFF"))
1031 {
1032
1033=== modified file 'client/mysqltest.cc'
1034--- client/mysqltest.cc 2013-02-12 10:38:59 +0000
1035+++ client/mysqltest.cc 2013-11-27 10:38:56 +0000
1036@@ -1583,6 +1583,7 @@
1037 else
1038 p++;
1039 }
1040+
1041 /* Output any chars that migh be left */
1042 dynstr_append_mem(ds, start, p-start);
1043 }
1044@@ -3407,8 +3408,12 @@
1045 /* Set default wild chars for wild_compare, is changed in embedded mode */
1046 set_wild_chars(1);
1047
1048+ uint length;
1049+ /* Storing the length of the path to the file, so it can be reused */
1050+ length= ds_file_to_remove.length;
1051 for (i= 0; i < (uint) dir_info->number_off_files; i++)
1052 {
1053+ ds_file_to_remove.length= length;
1054 file= dir_info->dir_entry + i;
1055 /* Remove only regular files, i.e. no directories etc. */
1056 /* if (!MY_S_ISREG(file->mystat->st_mode)) */
1057@@ -3418,8 +3423,10 @@
1058 if (ds_wild.length &&
1059 wild_compare(file->name, ds_wild.str, 0))
1060 continue;
1061- ds_file_to_remove.length= ds_directory.length + 1;
1062- ds_file_to_remove.str[ds_directory.length + 1]= 0;
1063+ /* Not required as the var ds_file_to_remove.length already has the
1064+ length in canonnicalized form */
1065+ /* ds_file_to_remove.length= ds_directory.length + 1;
1066+ ds_file_to_remove.str[ds_directory.length + 1]= 0; */
1067 dynstr_append(&ds_file_to_remove, file->name);
1068 DBUG_PRINT("info", ("removing file: %s", ds_file_to_remove.str));
1069 error= my_delete(ds_file_to_remove.str, MYF(0)) != 0;
1070
1071=== modified file 'client/sql_string.h'
1072--- client/sql_string.h 2012-10-23 06:38:31 +0000
1073+++ client/sql_string.h 2013-11-27 10:38:56 +0000
1074@@ -1,7 +1,7 @@
1075 #ifndef CLIENT_SQL_STRING_INCLUDED
1076 #define CLIENT_SQL_STRING_INCLUDED
1077
1078-/* Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
1079+/* Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
1080
1081 This program is free software; you can redistribute it and/or modify
1082 it under the terms of the GNU General Public License as published by
1083@@ -231,6 +231,7 @@
1084 DBUG_ASSERT(!s.uses_buffer_owned_by(this));
1085 free();
1086 Ptr=s.Ptr ; str_length=s.str_length ; Alloced_length=s.Alloced_length;
1087+ str_charset=s.str_charset;
1088 alloced=0;
1089 }
1090 return *this;
1091
1092=== modified file 'cmake/build_configurations/compiler_options.cmake'
1093--- cmake/build_configurations/compiler_options.cmake 2012-04-02 14:31:07 +0000
1094+++ cmake/build_configurations/compiler_options.cmake 2013-11-27 10:38:56 +0000
1095@@ -1,4 +1,4 @@
1096-# Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
1097+# Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
1098 #
1099 # This program is free software; you can redistribute it and/or modify
1100 # it under the terms of the GNU General Public License as published by
1101@@ -11,7 +11,7 @@
1102 #
1103 # You should have received a copy of the GNU General Public License
1104 # along with this program; if not, write to the Free Software
1105-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02111-1307 USA
1106+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
1107
1108 IF(SIZEOF_VOIDP EQUAL 4)
1109 SET(32BIT 1)
1110
1111=== modified file 'cmake/build_configurations/feature_set.cmake'
1112--- cmake/build_configurations/feature_set.cmake 2012-03-21 14:30:53 +0000
1113+++ cmake/build_configurations/feature_set.cmake 2013-11-27 10:38:56 +0000
1114@@ -1,4 +1,4 @@
1115-# Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
1116+# Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
1117 #
1118 # This program is free software; you can redistribute it and/or modify
1119 # it under the terms of the GNU General Public License as published by
1120@@ -11,7 +11,7 @@
1121 #
1122 # You should have received a copy of the GNU General Public License
1123 # along with this program; if not, write to the Free Software
1124-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02111-1307 USA
1125+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
1126
1127 SET(FEATURE_SET "community" CACHE STRING
1128 " Selection of features. Options are
1129
1130=== modified file 'cmake/build_configurations/mysql_release.cmake'
1131--- cmake/build_configurations/mysql_release.cmake 2013-02-26 05:45:28 +0000
1132+++ cmake/build_configurations/mysql_release.cmake 2013-11-27 10:38:56 +0000
1133@@ -1,4 +1,4 @@
1134-# Copyright (c) 2010, 2012, Oracle and/or its affiliates. All rights reserved.
1135+# Copyright (c) 2010, 2013, Oracle and/or its affiliates. All rights reserved.
1136 #
1137 # This program is free software; you can redistribute it and/or modify
1138 # it under the terms of the GNU General Public License as published by
1139@@ -33,7 +33,6 @@
1140
1141 IF(UNIX)
1142 SET(WITH_EXTRA_CHARSETS all CACHE STRING "")
1143- OPTION(WITH_LIBEDIT "" ON)
1144
1145 OPTION(WITH_PIC "" ON) # Why?
1146
1147
1148=== modified file 'cmake/dtrace.cmake'
1149--- cmake/dtrace.cmake 2013-02-14 10:33:04 +0000
1150+++ cmake/dtrace.cmake 2013-11-27 10:38:56 +0000
1151@@ -1,4 +1,4 @@
1152-# Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
1153+# Copyright (c) 2009, 2013, Oracle and/or its affiliates. All rights reserved.
1154 #
1155 # This program is free software; you can redistribute it and/or modify
1156 # it under the terms of the GNU General Public License as published by
1157@@ -157,7 +157,7 @@
1158 FOREACH(lib ${libs})
1159 GET_TARGET_PROPERTY(libtype ${lib} TYPE)
1160 IF(libtype MATCHES STATIC_LIBRARY)
1161- SET(static_libs ${static_lics} ${lib})
1162+ SET(static_libs ${static_libs} ${lib})
1163 ENDIF()
1164 ENDFOREACH()
1165
1166
1167=== modified file 'cmake/install_macros.cmake'
1168--- cmake/install_macros.cmake 2013-02-26 05:45:28 +0000
1169+++ cmake/install_macros.cmake 2013-11-27 10:38:56 +0000
1170@@ -1,4 +1,4 @@
1171-# Copyright (c) 2009, 2011, Oracle and/or its affiliates. All rights reserved.
1172+# Copyright (c) 2009, 2013, Oracle and/or its affiliates. All rights reserved.
1173 #
1174 # This program is free software; you can redistribute it and/or modify
1175 # it under the terms of the GNU General Public License as published by
1176@@ -111,28 +111,28 @@
1177 ENDFUNCTION()
1178
1179 # Install symbolic link to CMake target.
1180-# the link is created in the same directory as target
1181-# and extension will be the same as for target file.
1182-MACRO(INSTALL_SYMLINK linkname target destination component)
1183+# We do 'cd path; ln -s target_name link_name'
1184+# We also add an INSTALL target for "${path}/${link_name}"
1185+MACRO(INSTALL_SYMLINK target target_name link_name destination component)
1186 IF(UNIX)
1187 GET_TARGET_PROPERTY(location ${target} LOCATION)
1188 GET_FILENAME_COMPONENT(path ${location} PATH)
1189- GET_FILENAME_COMPONENT(name ${location} NAME)
1190- SET(output ${path}/${linkname})
1191+
1192+ SET(output ${path}/${link_name})
1193 ADD_CUSTOM_COMMAND(
1194 OUTPUT ${output}
1195 COMMAND ${CMAKE_COMMAND} ARGS -E remove -f ${output}
1196 COMMAND ${CMAKE_COMMAND} ARGS -E create_symlink
1197- ${name}
1198- ${linkname}
1199+ ${target_name}
1200+ ${link_name}
1201 WORKING_DIRECTORY ${path}
1202 DEPENDS ${target}
1203 )
1204
1205- ADD_CUSTOM_TARGET(symlink_${linkname}
1206+ ADD_CUSTOM_TARGET(symlink_${link_name}
1207 ALL
1208 DEPENDS ${output})
1209- SET_TARGET_PROPERTIES(symlink_${linkname} PROPERTIES CLEAN_DIRECT_OUTPUT 1)
1210+ SET_TARGET_PROPERTIES(symlink_${link_name} PROPERTIES CLEAN_DIRECT_OUTPUT 1)
1211 IF(CMAKE_GENERATOR MATCHES "Xcode")
1212 # For Xcode, replace project config with install config
1213 STRING(REPLACE "${CMAKE_CFG_INTDIR}"
1214
1215=== modified file 'cmake/mysql_version.cmake'
1216--- cmake/mysql_version.cmake 2013-11-27 10:38:46 +0000
1217+++ cmake/mysql_version.cmake 2013-11-27 10:38:56 +0000
1218@@ -1,4 +1,4 @@
1219-# Copyright (c) 2009, 2012, Oracle and/or its affiliates. All rights reserved.
1220+# Copyright (c) 2009, 2013, Oracle and/or its affiliates. All rights reserved.
1221 #
1222 # This program is free software; you can redistribute it and/or modify
1223 # it under the terms of the GNU General Public License as published by
1224@@ -18,6 +18,7 @@
1225 #
1226
1227 SET(SHARED_LIB_MAJOR_VERSION "18")
1228+SET(SHARED_LIB_MINOR_VERSION "1")
1229 SET(PROTOCOL_VERSION "10")
1230 SET(DOT_FRM_VERSION "6")
1231
1232
1233=== modified file 'cmake/os/WindowsCache.cmake'
1234--- cmake/os/WindowsCache.cmake 2011-07-03 23:56:47 +0000
1235+++ cmake/os/WindowsCache.cmake 2013-11-27 10:38:56 +0000
1236@@ -1,4 +1,4 @@
1237-# Copyright (c) 2010, 2011, Oracle and/or its affiliates. All rights reserved.
1238+# Copyright (c) 2010, 2013, Oracle and/or its affiliates. All rights reserved.
1239 #
1240 # This program is free software; you can redistribute it and/or modify
1241 # it under the terms of the GNU General Public License as published by
1242@@ -116,7 +116,7 @@
1243 SET(HAVE_LRAND48 CACHE INTERNAL "")
1244 SET(HAVE_LSTAT CACHE INTERNAL "")
1245 SET(HAVE_MADVISE CACHE INTERNAL "")
1246-SET(HAVE_MALLINFO CACHE INTERNAL "")
1247+SET(HAVE_MALLOC_INFO CACHE INTERNAL "")
1248 SET(HAVE_MALLOC_H 1 CACHE INTERNAL "")
1249 SET(HAVE_MEMALIGN CACHE INTERNAL "")
1250 SET(HAVE_MEMCPY 1 CACHE INTERNAL "")
1251@@ -145,6 +145,7 @@
1252 SET(HAVE_PREAD CACHE INTERNAL "")
1253 SET(HAVE_PRINTSTACK CACHE INTERNAL "")
1254 SET(HAVE_PTHREAD_ATTR_CREATE CACHE INTERNAL "")
1255+SET(HAVE_PTHREAD_ATTR_GETGUARDSIZE CACHE INTERNAL "")
1256 SET(HAVE_PTHREAD_ATTR_GETSTACKSIZE CACHE INTERNAL "")
1257 SET(HAVE_PTHREAD_ATTR_SETSCOPE CACHE INTERNAL "")
1258 SET(HAVE_PTHREAD_ATTR_SETSTACKSIZE CACHE INTERNAL "")
1259
1260=== modified file 'cmake/package_name.cmake'
1261--- cmake/package_name.cmake 2013-11-27 10:38:46 +0000
1262+++ cmake/package_name.cmake 2013-11-27 10:38:56 +0000
1263@@ -1,4 +1,4 @@
1264-# Copyright (c) 2010, 2012, Oracle and/or its affiliates. All rights reserved.
1265+# Copyright (c) 2010, 2013, Oracle and/or its affiliates. All rights reserved.
1266 #
1267 # This program is free software; you can redistribute it and/or modify
1268 # it under the terms of the GNU General Public License as published by
1269@@ -82,12 +82,20 @@
1270 MATH(EXPR VER "${VER} -4")
1271 SET(DEFAULT_PLATFORM "osx10.${VER}")
1272 ENDIF()
1273- LIST(LENGTH CMAKE_OSX_ARCHITECTURES LEN)
1274- IF(LEN GREATER 1)
1275- SET(DEFAULT_MACHINE "universal")
1276+
1277+ IF(CMAKE_OSX_ARCHITECTURES)
1278+ LIST(LENGTH CMAKE_OSX_ARCHITECTURES LEN)
1279+ IF(LEN GREATER 1)
1280+ SET(DEFAULT_MACHINE "universal")
1281+ ELSE()
1282+ SET(DEFAULT_MACHINE "${CMAKE_OSX_ARCHITECTURES}")
1283+ ENDIF()
1284 ELSE()
1285- SET(DEFAULT_MACHINE "${CMAKE_OSX_ARCHITECTURES}")
1286+ IF(64BIT)
1287+ SET(DEFAULT_MACHINE "x86_64")
1288+ ENDIF()
1289 ENDIF()
1290+
1291 IF(DEFAULT_MACHINE MATCHES "i386")
1292 SET(DEFAULT_MACHINE "x86")
1293 ENDIF()
1294
1295=== modified file 'cmake/readline.cmake'
1296--- cmake/readline.cmake 2013-02-26 05:45:28 +0000
1297+++ cmake/readline.cmake 2013-11-27 10:38:56 +0000
1298@@ -1,4 +1,4 @@
1299-# Copyright (c) 2009, 2012, Oracle and/or its affiliates. All rights reserved.
1300+# Copyright (c) 2009, 2013, Oracle and/or its affiliates. All rights reserved.
1301 #
1302 # This program is free software; you can redistribute it and/or modify
1303 # it under the terms of the GNU General Public License as published by
1304@@ -13,6 +13,9 @@
1305 # along with this program; if not, write to the Free Software
1306 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
1307
1308+# cmake -DWITH_EDITLINE=system|bundled
1309+# bundled is the default
1310+
1311 MACRO (MYSQL_CHECK_MULTIBYTE)
1312 CHECK_INCLUDE_FILE(wctype.h HAVE_WCTYPE_H)
1313 CHECK_INCLUDE_FILE(wchar.h HAVE_WCHAR_H)
1314@@ -117,85 +120,93 @@
1315 ENDIF()
1316 ENDMACRO()
1317
1318-MACRO (MYSQL_USE_BUNDLED_LIBEDIT)
1319+MACRO (MYSQL_USE_BUNDLED_EDITLINE)
1320 SET(USE_LIBEDIT_INTERFACE 1)
1321 SET(HAVE_HIST_ENTRY 1)
1322- SET(READLINE_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/cmd-line-utils/libedit)
1323- SET(READLINE_LIBRARY edit)
1324+ SET(EDITLINE_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/cmd-line-utils/libedit/editline)
1325+ SET(EDITLINE_LIBRARY edit)
1326 FIND_CURSES()
1327 ADD_SUBDIRECTORY(${CMAKE_SOURCE_DIR}/cmd-line-utils/libedit)
1328 ENDMACRO()
1329
1330-MACRO (FIND_SYSTEM_LIBEDIT name)
1331-
1332- FIND_PATH(${name}_INCLUDE_DIR readline/readline.h )
1333- FIND_LIBRARY(${name}_LIBRARY NAMES ${name})
1334- MARK_AS_ADVANCED(${name}_INCLUDE_DIR ${name}_LIBRARY)
1335+MACRO (FIND_SYSTEM_EDITLINE)
1336+ FIND_PATH(FOUND_EDITLINE_READLINE
1337+ NAMES editline/readline.h
1338+ )
1339+ IF(FOUND_EDITLINE_READLINE)
1340+ SET(EDITLINE_INCLUDE_DIR "${FOUND_EDITLINE_READLINE}/editline")
1341+ ELSE()
1342+ # Different path on FreeBSD
1343+ FIND_PATH(FOUND_EDIT_READLINE_READLINE
1344+ NAMES edit/readline/readline.h
1345+ )
1346+ IF(FOUND_EDIT_READLINE_READLINE)
1347+ SET(EDITLINE_INCLUDE_DIR "${FOUND_EDIT_READLINE_READLINE}/edit/readline")
1348+ ENDIF()
1349+ ENDIF()
1350+
1351+ FIND_LIBRARY(EDITLINE_LIBRARY
1352+ NAMES
1353+ edit
1354+ )
1355+ MARK_AS_ADVANCED(EDITLINE_INCLUDE_DIR EDITLINE_LIBRARY)
1356+
1357+ MESSAGE(STATUS "EDITLINE_INCLUDE_DIR ${EDITLINE_INCLUDE_DIR}")
1358+ MESSAGE(STATUS "EDITLINE_LIBRARY ${EDITLINE_LIBRARY}")
1359
1360 INCLUDE(CheckCXXSourceCompiles)
1361- SET(CMAKE_REQUIRES_LIBRARIES ${${name}_LIBRARY})
1362-
1363- IF(${name}_LIBRARY AND ${name}_INCLUDE_DIR)
1364- SET(SYSTEM_READLINE_FOUND 1)
1365- SET(CMAKE_REQUIRED_LIBRARIES ${${name}_LIBRARY})
1366+ IF(EDITLINE_LIBRARY AND EDITLINE_INCLUDE_DIR)
1367+ SET(CMAKE_REQUIRED_INCLUDES ${EDITLINE_INCLUDE_DIR})
1368+ SET(CMAKE_REQUIRED_LIBRARIES ${EDITLINE_LIBRARY})
1369 CHECK_CXX_SOURCE_COMPILES("
1370 #include <stdio.h>
1371- #include <readline/readline.h>
1372+ #include <readline.h>
1373 int main(int argc, char **argv)
1374 {
1375 HIST_ENTRY entry;
1376 return 0;
1377 }"
1378- ${name}_HAVE_HIST_ENTRY)
1379-
1380+ EDITLINE_HAVE_HIST_ENTRY)
1381+
1382 CHECK_CXX_SOURCE_COMPILES("
1383 #include <stdio.h>
1384- #include <readline/readline.h>
1385+ #include <readline.h>
1386 int main(int argc, char **argv)
1387 {
1388- char res= *(*rl_completion_entry_function)(0,0);
1389+ typedef int MYFunction(const char*, int);
1390+ MYFunction* myf= rl_completion_entry_function;
1391+ int res= (myf)(NULL, 0);
1392 completion_matches(0,0);
1393+ return res;
1394 }"
1395- ${name}_USE_LIBEDIT_INTERFACE)
1396+ EDITLINE_HAVE_COMPLETION)
1397
1398- CHECK_CXX_SOURCE_COMPILES("
1399- #include <stdio.h>
1400- #include <readline/readline.h>
1401- int main(int argc, char **argv)
1402- {
1403- rl_completion_func_t *func1= (rl_completion_func_t*)0;
1404- rl_compentry_func_t *func2= (rl_compentry_func_t*)0;
1405- }"
1406- ${name}_USE_NEW_READLINE_INTERFACE)
1407-
1408- IF(${name}_USE_LIBEDIT_INTERFACE OR ${name}_USE_NEW_READLINE_INTERFACE)
1409- SET(READLINE_LIBRARY ${${name}_LIBRARY})
1410- SET(READLINE_INCLUDE_DIR ${${name}_INCLUDE_DIR})
1411- SET(HAVE_HIST_ENTRY ${${name}_HAVE_HIST_ENTRY})
1412- SET(USE_LIBEDIT_INTERFACE ${${name}_USE_LIBEDIT_INTERFACE})
1413- SET(USE_NEW_READLINE_INTERFACE ${${name}_USE_NEW_READLINE_INTERFACE})
1414- SET(READLINE_FOUND 1)
1415+ IF(EDITLINE_HAVE_COMPLETION)
1416+ SET(HAVE_HIST_ENTRY ${EDITLINE_HAVE_HIST_ENTRY})
1417+ SET(USE_LIBEDIT_INTERFACE 1)
1418+ SET(EDITLINE_FOUND 1)
1419 ENDIF()
1420 ENDIF()
1421 ENDMACRO()
1422
1423
1424-MACRO (MYSQL_CHECK_READLINE)
1425+IF (NOT WITH_EDITLINE AND NOT WIN32)
1426+ SET(WITH_EDITLINE "bundled" CACHE STRING "By default use bundled editline")
1427+ENDIF()
1428+
1429+MACRO (MYSQL_CHECK_EDITLINE)
1430 IF (NOT WIN32)
1431 MYSQL_CHECK_MULTIBYTE()
1432- IF(NOT CYGWIN)
1433- SET(WITH_LIBEDIT ON CACHE BOOL "Use bundled libedit")
1434- # Bundled libedit does not compile on cygwin, only readline
1435- ENDIF()
1436
1437- IF(WITH_LIBEDIT)
1438- MYSQL_USE_BUNDLED_LIBEDIT()
1439+ IF(WITH_EDITLINE STREQUAL "bundled")
1440+ MYSQL_USE_BUNDLED_EDITLINE()
1441+ ELSEIF(WITH_EDITLINE STREQUAL "system")
1442+ FIND_SYSTEM_EDITLINE()
1443+ IF(NOT EDITLINE_FOUND)
1444+ MESSAGE(FATAL_ERROR "Cannot find system editline libraries.")
1445+ ENDIF()
1446 ELSE()
1447- FIND_SYSTEM_LIBEDIT(edit)
1448- IF(NOT_LIBEDIT_FOUND)
1449- MESSAGE(FATAL_ERROR "Cannot find system libedit libraries.Use WITH_LIBEDIT")
1450- ENDIF()
1451+ MESSAGE(FATAL_ERROR "WITH_EDITLINE must be bundled or system")
1452 ENDIF()
1453 ENDIF(NOT WIN32)
1454 ENDMACRO()
1455-
1456
1457=== renamed directory 'cmd-line-utils/libedit/readline' => 'cmd-line-utils/libedit/editline'
1458=== modified file 'cmd-line-utils/libedit/readline.c'
1459--- cmd-line-utils/libedit/readline.c 2012-01-12 13:03:44 +0000
1460+++ cmd-line-utils/libedit/readline.c 2013-11-27 10:38:56 +0000
1461@@ -51,7 +51,7 @@
1462 #else
1463 #include "np/vis.h"
1464 #endif
1465-#include "readline/readline.h"
1466+#include "editline/readline.h"
1467 #include "el.h"
1468 #include "fcns.h" /* for EL_NUM_FCNS */
1469 #include "histedit.h"
1470
1471=== modified file 'config.h.cmake'
1472--- config.h.cmake 2013-02-26 05:45:28 +0000
1473+++ config.h.cmake 2013-11-27 10:38:56 +0000
1474@@ -120,7 +120,6 @@
1475 /* Readline */
1476 #cmakedefine HAVE_HIST_ENTRY 1
1477 #cmakedefine USE_LIBEDIT_INTERFACE 1
1478-#cmakedefine USE_NEW_READLINE_INTERFACE 1
1479
1480 #cmakedefine FIONREAD_IN_SYS_IOCTL 1
1481 #cmakedefine GWINSZ_IN_SYS_IOCTL 1
1482@@ -194,7 +193,7 @@
1483 #cmakedefine HAVE_DECL_MADVISE 1
1484 #cmakedefine HAVE_DECL_TGOTO 1
1485 #cmakedefine HAVE_DECL_MHA_MAPSIZE_VA
1486-#cmakedefine HAVE_MALLINFO 1
1487+#cmakedefine HAVE_MALLOC_INFO 1
1488 #cmakedefine HAVE_MEMCPY 1
1489 #cmakedefine HAVE_MEMMOVE 1
1490 #cmakedefine HAVE_MKSTEMP 1
1491@@ -212,6 +211,7 @@
1492 #cmakedefine HAVE_RDTSCLL 1
1493 #cmakedefine HAVE_READ_REAL_TIME 1
1494 #cmakedefine HAVE_PTHREAD_ATTR_CREATE 1
1495+#cmakedefine HAVE_PTHREAD_ATTR_GETGUARDSIZE 1
1496 #cmakedefine HAVE_PTHREAD_ATTR_GETSTACKSIZE 1
1497 #cmakedefine HAVE_PTHREAD_ATTR_SETPRIO 1
1498 #cmakedefine HAVE_PTHREAD_ATTR_SETSCHEDPARAM 1
1499
1500=== modified file 'configure.cmake'
1501--- configure.cmake 2013-02-28 13:55:23 +0000
1502+++ configure.cmake 2013-11-27 10:38:56 +0000
1503@@ -441,7 +441,7 @@
1504 CHECK_FUNCTION_EXISTS (longjmp HAVE_LONGJMP)
1505 CHECK_FUNCTION_EXISTS (lstat HAVE_LSTAT)
1506 CHECK_FUNCTION_EXISTS (madvise HAVE_MADVISE)
1507-CHECK_FUNCTION_EXISTS (mallinfo HAVE_MALLINFO)
1508+CHECK_FUNCTION_EXISTS (malloc_info HAVE_MALLOC_INFO)
1509 CHECK_FUNCTION_EXISTS (memcpy HAVE_MEMCPY)
1510 CHECK_FUNCTION_EXISTS (memmove HAVE_MEMMOVE)
1511 CHECK_FUNCTION_EXISTS (mkstemp HAVE_MKSTEMP)
1512@@ -456,6 +456,7 @@
1513 CHECK_FUNCTION_EXISTS (posix_memalign HAVE_POSIX_MEMALIGN)
1514 CHECK_FUNCTION_EXISTS (pread HAVE_PREAD)
1515 CHECK_FUNCTION_EXISTS (pthread_attr_create HAVE_PTHREAD_ATTR_CREATE)
1516+CHECK_FUNCTION_EXISTS (pthread_attr_getguardsize HAVE_PTHREAD_ATTR_GETGUARDSIZE)
1517 CHECK_FUNCTION_EXISTS (pthread_attr_getstacksize HAVE_PTHREAD_ATTR_GETSTACKSIZE)
1518 CHECK_FUNCTION_EXISTS (pthread_attr_setscope HAVE_PTHREAD_ATTR_SETSCOPE)
1519 CHECK_FUNCTION_EXISTS (pthread_attr_setstacksize HAVE_PTHREAD_ATTR_SETSTACKSIZE)
1520@@ -695,6 +696,7 @@
1521
1522 # check whether time_t is unsigned
1523 CHECK_C_SOURCE_COMPILES("
1524+#include <time.h>
1525 int main()
1526 {
1527 int array[(((time_t)-1) > 0) ? 1 : -1];
1528
1529=== modified file 'dbug/dbug.c'
1530--- dbug/dbug.c 2012-11-06 11:30:07 +0000
1531+++ dbug/dbug.c 2013-11-27 10:38:56 +0000
1532@@ -79,12 +79,6 @@
1533 *
1534 */
1535
1536-/*
1537- We can't have SAFE_MUTEX defined here as this will cause recursion
1538- in pthread_mutex_lock
1539-*/
1540-
1541-#undef SAFE_MUTEX
1542 #include <my_global.h>
1543 #include <m_string.h>
1544 #include <errno.h>
1545@@ -598,7 +592,7 @@
1546 if (!is_shared(stack, keywords))
1547 FreeList(stack->keywords);
1548 stack->keywords=NULL;
1549- stack->flags &= ~DEBUG_ON;
1550+ stack->flags&= ~DEBUG_ON;
1551 break;
1552 }
1553 if (rel && is_shared(stack, keywords))
1554@@ -606,11 +600,29 @@
1555 if (sign < 0)
1556 {
1557 if (DEBUGGING)
1558+ {
1559 stack->keywords= ListDel(stack->keywords, control, end);
1560- break;
1561- }
1562- stack->keywords= ListAdd(stack->keywords, control, end);
1563- stack->flags |= DEBUG_ON;
1564+ /* Turn off DEBUG_ON if it is last keyword to be removed. */
1565+ if (stack->keywords == NULL)
1566+ stack->flags&= ~DEBUG_ON;
1567+ }
1568+ break;
1569+ }
1570+
1571+ /* Do not add keyword if debugging all is enabled. */
1572+ if (!(DEBUGGING && stack->keywords == NULL))
1573+ {
1574+ stack->keywords= ListAdd(stack->keywords, control, end);
1575+ stack->flags|= DEBUG_ON;
1576+ }
1577+
1578+ /* If debug all is enabled, make the keyword list empty. */
1579+ if (sign == 1 && control == end)
1580+ {
1581+ FreeList(stack->keywords);
1582+ stack->keywords= NULL;
1583+ }
1584+
1585 break;
1586 case 'D':
1587 stack->delay= atoi(control);
1588@@ -1035,7 +1047,7 @@
1589 } while (0)
1590 #define str_to_buf(S) do { \
1591 char_to_buf(','); \
1592- buf=strnmov(buf, (S), len+1); \
1593+ buf=strnmov(buf, (S), end-buf); \
1594 if (buf >= end) goto overflow; \
1595 } while (0)
1596 #define list_to_buf(l, f) do { \
1597@@ -1358,6 +1370,38 @@
1598 /*
1599 * FUNCTION
1600 *
1601+ * _db_enabled_ check if debug is enabled for the keyword used in
1602+ * DBUG_PRINT
1603+ *
1604+ * SYNOPSIS
1605+ *
1606+ * int _db_enabled_();
1607+ *
1608+ * DESCRIPTION
1609+ *
1610+ * The function checks if the debug output is to be enabled for the keyword
1611+ * specified in DBUG_PRINT macro. _db_doprnt_ will be called only if this
1612+ * function evaluates to 1.
1613+ */
1614+
1615+int _db_enabled_()
1616+{
1617+ CODE_STATE *cs;
1618+
1619+ get_code_state_or_return 0;
1620+
1621+ if (! DEBUGGING)
1622+ return 0;
1623+
1624+ if (_db_keyword_(cs, cs->u_keyword, 0))
1625+ return 1;
1626+
1627+ return 0;
1628+}
1629+
1630+/*
1631+ * FUNCTION
1632+ *
1633 * _db_doprnt_ handle print of debug lines
1634 *
1635 * SYNOPSIS
1636@@ -1368,11 +1412,9 @@
1637 *
1638 * DESCRIPTION
1639 *
1640- * When invoked via one of the DBUG macros, tests the current keyword
1641- * set by calling _db_pargs_() to see if that macro has been selected
1642- * for processing via the debugger control string, and if so, handles
1643- * printing of the arguments via the format string. The line number
1644- * of the DBUG macro in the source is found in u_line.
1645+ * This function handles the printing of the arguments via the format
1646+ * string. The line number of the DBUG macro in the source is found in
1647+ * u_line.
1648 *
1649 * Note that the format string SHOULD NOT include a terminating
1650 * newline, this is supplied automatically.
1651@@ -1385,6 +1427,8 @@
1652 {
1653 va_list args;
1654 CODE_STATE *cs;
1655+ int save_errno;
1656+
1657 get_code_state_or_return;
1658
1659 /* Dirty read, for DBUG_PRINT() performance. */
1660@@ -1394,21 +1438,19 @@
1661 va_start(args,format);
1662 read_lock_stack(cs);
1663
1664- if (_db_keyword_(cs, cs->u_keyword, 0))
1665- {
1666- int save_errno=errno;
1667- if (!cs->locked)
1668- pthread_mutex_lock(&THR_LOCK_dbug);
1669- DoPrefix(cs, cs->u_line);
1670- if (TRACING)
1671- Indent(cs, cs->level + 1);
1672- else
1673- (void) fprintf(cs->stack->out_file, "%s: ", cs->func);
1674- (void) fprintf(cs->stack->out_file, "%s: ", cs->u_keyword);
1675- DbugVfprintf(cs->stack->out_file, format, args);
1676- DbugFlush(cs);
1677- errno=save_errno;
1678- }
1679+ save_errno=errno;
1680+ if (!cs->locked)
1681+ pthread_mutex_lock(&THR_LOCK_dbug);
1682+ DoPrefix(cs, cs->u_line);
1683+ if (TRACING)
1684+ Indent(cs, cs->level + 1);
1685+ else
1686+ (void) fprintf(cs->stack->out_file, "%s: ", cs->func);
1687+ (void) fprintf(cs->stack->out_file, "%s: ", cs->u_keyword);
1688+ DbugVfprintf(cs->stack->out_file, format, args);
1689+ DbugFlush(cs);
1690+ errno=save_errno;
1691+
1692 unlock_stack(cs);
1693 va_end(args);
1694 }
1695
1696=== modified file 'extra/charset2html.c'
1697--- extra/charset2html.c 2013-02-26 05:45:28 +0000
1698+++ extra/charset2html.c 2013-11-27 10:38:56 +0000
1699@@ -12,7 +12,7 @@
1700
1701 You should have received a copy of the GNU General Public License
1702 along with this program; if not, write to the Free Software
1703- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
1704+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
1705 */
1706
1707 /*
1708
1709=== modified file 'extra/comp_err.c'
1710--- extra/comp_err.c 2013-02-26 05:45:28 +0000
1711+++ extra/comp_err.c 2013-11-27 10:38:56 +0000
1712@@ -1,5 +1,5 @@
1713 /*
1714- Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
1715+ Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
1716
1717 This program is free software; you can redistribute it and/or modify
1718 it under the terms of the GNU General Public License as published by
1719@@ -31,6 +31,7 @@
1720 #include <my_getopt.h>
1721 #include <assert.h>
1722 #include <my_dir.h>
1723+#include <mysql_version.h>
1724
1725 #define MAX_ROWS 1000
1726 #define HEADER_LENGTH 32 /* Length of header in errmsg.sys */
1727@@ -182,6 +183,23 @@
1728 fprintf(stderr, "Failed to parse input file %s\n", TXTFILE);
1729 DBUG_RETURN(1);
1730 }
1731+#if MYSQL_VERSION_ID >= 50100 && MYSQL_VERSION_ID < 50500
1732+/* Number of error messages in 5.1 - do not change this number! */
1733+#define MYSQL_OLD_GA_ERROR_MESSAGE_COUNT 641
1734+#elif MYSQL_VERSION_ID >= 50500 && MYSQL_VERSION_ID < 50600
1735+/* Number of error messages in 5.5 - do not change this number! */
1736+#define MYSQL_OLD_GA_ERROR_MESSAGE_COUNT 728
1737+#endif
1738+#if MYSQL_OLD_GA_ERROR_MESSAGE_COUNT
1739+ if (row_count != MYSQL_OLD_GA_ERROR_MESSAGE_COUNT)
1740+ {
1741+ fprintf(stderr, "Can only add new error messages to latest GA. ");
1742+ fprintf(stderr, "Use ER_UNKNOWN_ERROR instead.\n");
1743+ fprintf(stderr, "Expected %u messages, found %u.\n",
1744+ MYSQL_OLD_GA_ERROR_MESSAGE_COUNT, row_count);
1745+ DBUG_RETURN(1);
1746+ }
1747+#endif
1748 if (lang_head == NULL || error_head == NULL)
1749 {
1750 fprintf(stderr, "Failed to parse input file %s\n", TXTFILE);
1751
1752=== modified file 'extra/yassl/COPYING'
1753--- extra/yassl/COPYING 2006-08-01 18:20:46 +0000
1754+++ extra/yassl/COPYING 2013-11-27 10:38:56 +0000
1755@@ -2,7 +2,7 @@
1756 Version 2, June 1991
1757
1758 Copyright (C) 1989, 1991 Free Software Foundation, Inc.
1759- 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
1760+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
1761 Everyone is permitted to copy and distribute verbatim copies
1762 of this license document, but changing it is not allowed.
1763
1764@@ -305,7 +305,7 @@
1765
1766 You should have received a copy of the GNU General Public License
1767 along with this program; if not, write to the Free Software
1768- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
1769+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
1770
1771
1772 Also add information on how to contact you by electronic and paper mail.
1773
1774=== modified file 'extra/yassl/include/openssl/generate_prefix_files.pl'
1775--- extra/yassl/include/openssl/generate_prefix_files.pl 2010-12-28 18:57:23 +0000
1776+++ extra/yassl/include/openssl/generate_prefix_files.pl 2013-11-27 10:38:56 +0000
1777@@ -13,7 +13,7 @@
1778 #
1779 # You should have received a copy of the GNU General Public License
1780 # along with this program; if not, write to the Free Software
1781-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
1782+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
1783
1784 #
1785 # This script generates defines for all functions
1786
1787=== modified file 'extra/yassl/src/crypto_wrapper.cpp'
1788--- extra/yassl/src/crypto_wrapper.cpp 2013-02-26 05:45:28 +0000
1789+++ extra/yassl/src/crypto_wrapper.cpp 2013-11-27 10:38:56 +0000
1790@@ -11,7 +11,7 @@
1791
1792 You should have received a copy of the GNU General Public License
1793 along with this program; if not, write to the Free Software
1794- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
1795+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
1796
1797 /* The crypto wrapper source implements the policies for the cipher
1798 * components used by SSL.
1799
1800=== modified file 'extra/yassl/src/make.bat'
1801--- extra/yassl/src/make.bat 2013-02-26 05:45:28 +0000
1802+++ extra/yassl/src/make.bat 2013-11-27 10:38:56 +0000
1803@@ -11,7 +11,7 @@
1804 REM
1805 REM You should have received a copy of the GNU General Public License
1806 REM along with this program; if not, write to the Free Software
1807-REM Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
1808+REM Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
1809
1810 REM quick and dirty build file for testing different MSDEVs
1811 setlocal
1812
1813=== modified file 'extra/yassl/src/yassl_int.cpp'
1814--- extra/yassl/src/yassl_int.cpp 2013-02-26 05:45:28 +0000
1815+++ extra/yassl/src/yassl_int.cpp 2013-11-27 10:38:56 +0000
1816@@ -11,7 +11,7 @@
1817
1818 You should have received a copy of the GNU General Public License
1819 along with this program; if not, write to the Free Software
1820- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
1821+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
1822
1823 /* yaSSL internal source implements SSL supporting types not specified in the
1824 * draft along with type conversion functions.
1825
1826=== modified file 'extra/yassl/taocrypt/COPYING'
1827--- extra/yassl/taocrypt/COPYING 2006-09-25 14:40:29 +0000
1828+++ extra/yassl/taocrypt/COPYING 2013-11-27 10:38:56 +0000
1829@@ -2,7 +2,7 @@
1830 Version 2, June 1991
1831
1832 Copyright (C) 1989, 1991 Free Software Foundation, Inc.
1833- 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
1834+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
1835 Everyone is permitted to copy and distribute verbatim copies
1836 of this license document, but changing it is not allowed.
1837
1838@@ -305,7 +305,7 @@
1839
1840 You should have received a copy of the GNU General Public License
1841 along with this program; if not, write to the Free Software
1842- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
1843+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
1844
1845
1846 Also add information on how to contact you by electronic and paper mail.
1847
1848=== modified file 'extra/yassl/taocrypt/benchmark/make.bat'
1849--- extra/yassl/taocrypt/benchmark/make.bat 2013-02-26 05:45:28 +0000
1850+++ extra/yassl/taocrypt/benchmark/make.bat 2013-11-27 10:38:56 +0000
1851@@ -11,7 +11,7 @@
1852 REM
1853 REM You should have received a copy of the GNU General Public License
1854 REM along with this program; if not, write to the Free Software
1855-REM Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
1856+REM Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
1857
1858 REM quick and dirty build file for testing different MSDEVs
1859 setlocal
1860
1861=== modified file 'extra/yassl/taocrypt/src/algebra.cpp'
1862--- extra/yassl/taocrypt/src/algebra.cpp 2013-02-26 05:45:28 +0000
1863+++ extra/yassl/taocrypt/src/algebra.cpp 2013-11-27 10:38:56 +0000
1864@@ -11,7 +11,7 @@
1865
1866 You should have received a copy of the GNU General Public License
1867 along with this program; if not, write to the Free Software
1868- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
1869+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
1870
1871 /* based on Wei Dai's algebra.cpp from CryptoPP */
1872 #undef NDEBUG
1873
1874=== modified file 'extra/yassl/taocrypt/src/integer.cpp'
1875--- extra/yassl/taocrypt/src/integer.cpp 2013-02-26 05:45:28 +0000
1876+++ extra/yassl/taocrypt/src/integer.cpp 2013-11-27 10:38:56 +0000
1877@@ -11,7 +11,7 @@
1878
1879 You should have received a copy of the GNU General Public License
1880 along with this program; if not, write to the Free Software
1881- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
1882+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
1883
1884 /* based on Wei Dai's integer.cpp from CryptoPP */
1885
1886
1887=== modified file 'extra/yassl/taocrypt/src/make.bat'
1888--- extra/yassl/taocrypt/src/make.bat 2013-02-26 05:45:28 +0000
1889+++ extra/yassl/taocrypt/src/make.bat 2013-11-27 10:38:56 +0000
1890@@ -11,7 +11,7 @@
1891 REM
1892 REM You should have received a copy of the GNU General Public License
1893 REM along with this program; if not, write to the Free Software
1894-REM Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
1895+REM Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
1896
1897 REM quick and dirty build file for testing different MSDEVs
1898 setlocal
1899
1900=== modified file 'extra/yassl/taocrypt/test/make.bat'
1901--- extra/yassl/taocrypt/test/make.bat 2013-02-26 05:45:28 +0000
1902+++ extra/yassl/taocrypt/test/make.bat 2013-11-27 10:38:56 +0000
1903@@ -11,7 +11,7 @@
1904 REM
1905 REM You should have received a copy of the GNU General Public License
1906 REM along with this program; if not, write to the Free Software
1907-REM Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
1908+REM Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
1909
1910 REM quick and dirty build file for testing different MSDEVs
1911 setlocal
1912
1913=== modified file 'extra/yassl/testsuite/make.bat'
1914--- extra/yassl/testsuite/make.bat 2013-02-26 05:45:28 +0000
1915+++ extra/yassl/testsuite/make.bat 2013-11-27 10:38:56 +0000
1916@@ -11,7 +11,7 @@
1917 REM
1918 REM You should have received a copy of the GNU General Public License
1919 REM along with this program; if not, write to the Free Software
1920-REM Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
1921+REM Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
1922
1923 REM quick and dirty build file for testing different MSDEVs
1924 setlocal
1925
1926=== modified file 'include/atomic/rwlock.h'
1927--- include/atomic/rwlock.h 2011-06-30 15:46:53 +0000
1928+++ include/atomic/rwlock.h 2013-11-27 10:38:56 +0000
1929@@ -1,8 +1,7 @@
1930 #ifndef ATOMIC_RWLOCK_INCLUDED
1931 #define ATOMIC_RWLOCK_INCLUDED
1932
1933-/* Copyright (c) 2006 MySQL AB, 2009 Sun Microsystems, Inc.
1934- Use is subject to license terms.
1935+/* Copyright (c) 2006, 2013 Oracle and/or its affiliates. All rights reserved.
1936
1937 This program is free software; you can redistribute it and/or modify
1938 it under the terms of the GNU General Public License as published by
1939@@ -41,8 +40,6 @@
1940
1941 typedef struct {pthread_mutex_t rw;} my_atomic_rwlock_t;
1942
1943-#ifndef SAFE_MUTEX
1944-
1945 /*
1946 we're using read-write lock macros but map them to mutex locks, and they're
1947 faster. Still, having semantically rich API we can change the
1948@@ -55,37 +52,6 @@
1949 #define my_atomic_rwlock_rdunlock(name) pthread_mutex_unlock(& (name)->rw)
1950 #define my_atomic_rwlock_wrunlock(name) pthread_mutex_unlock(& (name)->rw)
1951
1952-#else /* SAFE_MUTEX */
1953-
1954-/*
1955- SAFE_MUTEX pollutes the compiling name space with macros
1956- that alter pthread_mutex_t, pthread_mutex_init, etc.
1957- Atomic operations should never use the safe mutex wrappers.
1958- Unfortunately, there is no way to have both:
1959- - safe mutex macros expanding pthread_mutex_lock to safe_mutex_lock
1960- - my_atomic macros expanding to unmodified pthread_mutex_lock
1961- inlined in the same compilation unit.
1962- So, in case of SAFE_MUTEX, a function call is required.
1963- Given that SAFE_MUTEX is a debugging facility,
1964- this extra function call is not a performance concern for
1965- production builds.
1966-*/
1967-C_MODE_START
1968-extern void plain_pthread_mutex_init(safe_mutex_t *);
1969-extern void plain_pthread_mutex_destroy(safe_mutex_t *);
1970-extern void plain_pthread_mutex_lock(safe_mutex_t *);
1971-extern void plain_pthread_mutex_unlock(safe_mutex_t *);
1972-C_MODE_END
1973-
1974-#define my_atomic_rwlock_destroy(name) plain_pthread_mutex_destroy(&(name)->rw)
1975-#define my_atomic_rwlock_init(name) plain_pthread_mutex_init(&(name)->rw)
1976-#define my_atomic_rwlock_rdlock(name) plain_pthread_mutex_lock(&(name)->rw)
1977-#define my_atomic_rwlock_wrlock(name) plain_pthread_mutex_lock(&(name)->rw)
1978-#define my_atomic_rwlock_rdunlock(name) plain_pthread_mutex_unlock(&(name)->rw)
1979-#define my_atomic_rwlock_wrunlock(name) plain_pthread_mutex_unlock(&(name)->rw)
1980-
1981-#endif /* SAFE_MUTEX */
1982-
1983 #define MY_ATOMIC_MODE "mutex"
1984 #ifndef MY_ATOMIC_MODE_RWLOCKS
1985 #define MY_ATOMIC_MODE_RWLOCKS 1
1986
1987=== modified file 'include/big_endian.h'
1988--- include/big_endian.h 2012-02-01 08:31:03 +0000
1989+++ include/big_endian.h 2013-11-27 10:38:56 +0000
1990@@ -1,4 +1,4 @@
1991-/* Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
1992+/* Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
1993
1994 This program is free software; you can redistribute it and/or modify
1995 it under the terms of the GNU General Public License as published by
1996@@ -11,7 +11,7 @@
1997
1998 You should have received a copy of the GNU General Public License
1999 along with this program; if not, write to the Free Software
2000- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02111-1307 USA */
2001+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */
2002
2003 /*
2004 Data in big-endian format.
2005
2006=== modified file 'include/byte_order_generic.h'
2007--- include/byte_order_generic.h 2012-02-01 08:31:03 +0000
2008+++ include/byte_order_generic.h 2013-11-27 10:38:56 +0000
2009@@ -1,4 +1,4 @@
2010-/* Copyright (c) 2001, 2012, Oracle and/or its affiliates. All rights reserved.
2011+/* Copyright (c) 2001, 2013, Oracle and/or its affiliates. All rights reserved.
2012
2013 This program is free software; you can redistribute it and/or modify
2014 it under the terms of the GNU General Public License as published by
2015@@ -11,7 +11,7 @@
2016
2017 You should have received a copy of the GNU General Public License
2018 along with this program; if not, write to the Free Software
2019- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02111-1307 USA */
2020+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */
2021
2022 /*
2023 Endianness-independent definitions for architectures other
2024
2025=== modified file 'include/byte_order_generic_x86.h'
2026--- include/byte_order_generic_x86.h 2012-02-01 08:31:03 +0000
2027+++ include/byte_order_generic_x86.h 2013-11-27 10:38:56 +0000
2028@@ -1,4 +1,4 @@
2029-/* Copyright (c) 2001, 2012, Oracle and/or its affiliates. All rights reserved.
2030+/* Copyright (c) 2001, 2013, Oracle and/or its affiliates. All rights reserved.
2031
2032 This program is free software; you can redistribute it and/or modify
2033 it under the terms of the GNU General Public License as published by
2034@@ -11,7 +11,7 @@
2035
2036 You should have received a copy of the GNU General Public License
2037 along with this program; if not, write to the Free Software
2038- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02111-1307 USA */
2039+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */
2040
2041 /*
2042 Optimized function-like macros for the x86 architecture (_WIN32 included).
2043
2044=== modified file 'include/byte_order_generic_x86_64.h'
2045--- include/byte_order_generic_x86_64.h 2012-02-01 08:31:03 +0000
2046+++ include/byte_order_generic_x86_64.h 2013-11-27 10:38:56 +0000
2047@@ -1,4 +1,4 @@
2048-/* Copyright (c) 2001, 2012, Oracle and/or its affiliates. All rights reserved.
2049+/* Copyright (c) 2001, 2013, Oracle and/or its affiliates. All rights reserved.
2050
2051 This program is free software; you can redistribute it and/or modify
2052 it under the terms of the GNU General Public License as published by
2053@@ -11,7 +11,7 @@
2054
2055 You should have received a copy of the GNU General Public License
2056 along with this program; if not, write to the Free Software
2057- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02111-1307 USA */
2058+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */
2059
2060 /*
2061 Optimized function-like macros for the x86 architecture (_WIN32 included).
2062
2063=== modified file 'include/little_endian.h'
2064--- include/little_endian.h 2012-02-01 08:31:03 +0000
2065+++ include/little_endian.h 2013-11-27 10:38:56 +0000
2066@@ -1,4 +1,4 @@
2067-/* Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
2068+/* Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
2069
2070 This program is free software; you can redistribute it and/or modify
2071 it under the terms of the GNU General Public License as published by
2072@@ -11,7 +11,7 @@
2073
2074 You should have received a copy of the GNU General Public License
2075 along with this program; if not, write to the Free Software
2076- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02111-1307 USA */
2077+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */
2078
2079 /*
2080 Data in little-endian format.
2081
2082=== modified file 'include/my_base.h'
2083--- include/my_base.h 2013-02-26 05:45:28 +0000
2084+++ include/my_base.h 2013-11-27 10:38:56 +0000
2085@@ -479,7 +479,9 @@
2086 #define HA_ERR_TABLESPACE_EXISTS 184 /* The tablespace existed in storage engine */
2087 #define HA_ERR_TOO_MANY_FIELDS 185 /* Table has too many columns */
2088 #define HA_ERR_ROW_IN_WRONG_PARTITION 186 /* Row in wrong partition */
2089-#define HA_ERR_LAST 186 /* Copy of last error nr */
2090+#define HA_ERR_INNODB_READ_ONLY 187 /* InnoDB is in read only mode. */
2091+#define HA_ERR_FTS_EXCEED_RESULT_CACHE_LIMIT 188 /* FTS query exceeds result cache limit */
2092+#define HA_ERR_LAST 188 /* Copy of last error nr */
2093
2094 /* Number of different errors */
2095 #define HA_ERR_ERRORS (HA_ERR_LAST - HA_ERR_FIRST + 1)
2096
2097=== modified file 'include/my_bitmap.h'
2098--- include/my_bitmap.h 2012-03-29 19:22:02 +0000
2099+++ include/my_bitmap.h 2013-11-27 10:38:56 +0000
2100@@ -12,7 +12,7 @@
2101
2102 You should have received a copy of the GNU General Public License
2103 along with this program; if not, write to the Free Software
2104- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
2105+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
2106
2107 #ifndef _my_bitmap_h_
2108 #define _my_bitmap_h_
2109
2110=== modified file 'include/my_compare.h'
2111--- include/my_compare.h 2011-03-29 12:56:34 +0000
2112+++ include/my_compare.h 2013-11-27 10:38:56 +0000
2113@@ -11,7 +11,7 @@
2114
2115 You should have received a copy of the GNU General Public License
2116 along with this program; if not, write to the Free Software
2117- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
2118+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
2119
2120 #ifndef _my_compare_h
2121 #define _my_compare_h
2122
2123=== modified file 'include/my_dbug.h'
2124--- include/my_dbug.h 2013-02-26 05:45:28 +0000
2125+++ include/my_dbug.h 2013-11-27 10:38:56 +0000
2126@@ -39,7 +39,7 @@
2127 };
2128
2129 struct _db_code_state_;
2130-extern my_bool _dbug_on_;
2131+extern MYSQL_PLUGIN_IMPORT my_bool _dbug_on_;
2132 extern my_bool _db_keyword_(struct _db_code_state_ *, const char *, int);
2133 extern int _db_explain_(struct _db_code_state_ *cs, char *buf, size_t len);
2134 extern int _db_explain_init_(char *buf, size_t len);
2135@@ -55,6 +55,7 @@
2136 struct _db_stack_frame_ *_stack_frame_);
2137 extern void _db_return_(uint _line_, struct _db_stack_frame_ *_stack_frame_);
2138 extern void _db_pargs_(uint _line_,const char *keyword);
2139+extern int _db_enabled_();
2140 extern void _db_doprnt_(const char *format,...)
2141 ATTRIBUTE_FORMAT(printf, 1, 2);
2142 extern void _db_dump_(uint _line_,const char *keyword,
2143@@ -80,7 +81,17 @@
2144 #define DBUG_EVALUATE_IF(keyword,a1,a2) \
2145 (_db_keyword_(0,(keyword), 1) ? (a1) : (a2))
2146 #define DBUG_PRINT(keyword,arglist) \
2147- do {_db_pargs_(__LINE__,keyword); _db_doprnt_ arglist;} while(0)
2148+ do \
2149+ { \
2150+ if (_dbug_on_) \
2151+ { \
2152+ _db_pargs_(__LINE__,keyword); \
2153+ if (_db_enabled_()) \
2154+ { \
2155+ _db_doprnt_ arglist; \
2156+ } \
2157+ } \
2158+ } while(0)
2159 #define DBUG_PUSH(a1) _db_push_ (a1)
2160 #define DBUG_POP() _db_pop_ ()
2161 #define DBUG_SET(a1) _db_set_ (a1)
2162
2163=== modified file 'include/my_default.h'
2164--- include/my_default.h 2012-06-09 13:16:21 +0000
2165+++ include/my_default.h 2013-11-27 10:38:56 +0000
2166@@ -1,4 +1,4 @@
2167-/* Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
2168+/* Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
2169
2170 This program is free software; you can redistribute it and/or modify
2171 it under the terms of the GNU General Public License as published by
2172@@ -11,7 +11,7 @@
2173
2174 You should have received a copy of the GNU General Public License
2175 along with this program; if not, write to the Free Software
2176- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02111-1307 USA */
2177+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */
2178
2179 #ifndef MY_DEFAULT_INCLUDED
2180 #define MY_DEFAULT_INCLUDED
2181
2182=== modified file 'include/my_getopt.h'
2183--- include/my_getopt.h 2012-10-28 03:26:15 +0000
2184+++ include/my_getopt.h 2013-11-27 10:38:56 +0000
2185@@ -128,6 +128,9 @@
2186 my_bool getopt_compare_strings(const char *s, const char *t, uint length);
2187 ulonglong max_of_int_range(int var_type);
2188
2189+ulonglong getopt_double2ulonglong(double);
2190+double getopt_ulonglong2double(ulonglong);
2191+
2192 C_MODE_END
2193
2194 #endif /* _my_getopt_h */
2195
2196=== modified file 'include/my_global.h'
2197--- include/my_global.h 2012-03-06 14:29:42 +0000
2198+++ include/my_global.h 2013-11-27 10:38:56 +0000
2199@@ -1,5 +1,5 @@
2200 /*
2201- Copyright (c) 2001, 2012, Oracle and/or its affiliates. All rights reserved.
2202+ Copyright (c) 2001, 2013, Oracle and/or its affiliates. All rights reserved.
2203
2204 This program is free software; you can redistribute it and/or modify
2205 it under the terms of the GNU General Public License as published by
2206@@ -47,10 +47,6 @@
2207 #define HAVE_ERRNO_AS_DEFINE
2208 #endif /* __CYGWIN__ */
2209
2210-#if defined(__OpenBSD__) && (OpenBSD >= 200411)
2211-#define HAVE_ERRNO_AS_DEFINE
2212-#endif
2213-
2214 #if defined(i386) && !defined(__i386__)
2215 #define __i386__
2216 #endif
2217@@ -381,7 +377,7 @@
2218 #define compile_time_assert(X) \
2219 do \
2220 { \
2221- typedef char compile_time_assert[(X) ? 1 : -1]; \
2222+ typedef char compile_time_assert[(X) ? 1 : -1] __attribute__((unused)); \
2223 } while(0)
2224 #endif
2225
2226@@ -951,7 +947,7 @@
2227 TODO Convert these to use Bitmap class.
2228 */
2229 typedef ulonglong table_map; /* Used for table bits in join */
2230-typedef ulong nesting_map; /* Used for flags of nesting constructs */
2231+typedef ulonglong nesting_map; /* Used for flags of nesting constructs */
2232
2233 #if defined(__WIN__)
2234 #define socket_errno WSAGetLastError()
2235@@ -1021,8 +1017,6 @@
2236 #define reg16 register
2237 #endif
2238
2239-#include <my_dbug.h>
2240-
2241 /* Some helper macros */
2242 #define YESNO(X) ((X) ? "yes" : "no")
2243
2244@@ -1190,6 +1184,8 @@
2245 #endif
2246 #endif
2247
2248+#include <my_dbug.h>
2249+
2250 /* Defines that are unique to the embedded version of MySQL */
2251
2252 #ifdef EMBEDDED_LIBRARY
2253
2254=== modified file 'include/my_md5.h'
2255--- include/my_md5.h 2013-02-26 05:45:28 +0000
2256+++ include/my_md5.h 2013-11-27 10:38:56 +0000
2257@@ -14,7 +14,7 @@
2258
2259 You should have received a copy of the GNU General Public License
2260 along with this program; if not, write to the Free Software
2261- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
2262+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
2263
2264 #include "m_string.h"
2265
2266
2267=== modified file 'include/my_pthread.h'
2268--- include/my_pthread.h 2013-02-26 05:45:28 +0000
2269+++ include/my_pthread.h 2013-11-27 10:38:56 +0000
2270@@ -1,4 +1,4 @@
2271-/* Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
2272+/* Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
2273
2274 This program is free software; you can redistribute it and/or modify
2275 it under the terms of the GNU General Public License as published by
2276@@ -11,7 +11,7 @@
2277
2278 You should have received a copy of the GNU General Public License
2279 along with this program; if not, write to the Free Software
2280- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
2281+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
2282
2283 /* Defines to make different thread packages compatible */
2284
2285@@ -798,6 +798,15 @@
2286 extern my_thread_id my_thread_dbug_id(void);
2287 extern int pthread_dummy(int);
2288
2289+#ifndef HAVE_PTHREAD_ATTR_GETGUARDSIZE
2290+static inline int pthread_attr_getguardsize(pthread_attr_t *attr,
2291+ size_t *guardsize)
2292+{
2293+ *guardsize= 0;
2294+ return 0;
2295+}
2296+#endif
2297+
2298 /* All thread specific variables are in the following struct */
2299
2300 #define THREAD_NAME_SIZE 10
2301
2302=== modified file 'include/my_sys.h'
2303--- include/my_sys.h 2013-02-26 05:45:28 +0000
2304+++ include/my_sys.h 2013-11-27 10:38:56 +0000
2305@@ -234,13 +234,8 @@
2306 #define my_afree(PTR) my_free(PTR)
2307 #endif /* HAVE_ALLOCA */
2308
2309-#ifndef errno /* did we already get it? */
2310-#ifdef HAVE_ERRNO_AS_DEFINE
2311 #include <errno.h> /* errno is a define */
2312-#else
2313-extern int errno; /* declare errno */
2314-#endif
2315-#endif /* #ifndef errno */
2316+
2317 extern char *home_dir; /* Home directory for user */
2318 extern const char *my_progname; /* program-name (printed in errors) */
2319 extern char curr_dir[]; /* Current directory for user */
2320
2321=== modified file 'include/my_user.h'
2322--- include/my_user.h 2013-02-26 05:45:28 +0000
2323+++ include/my_user.h 2013-11-27 10:38:56 +0000
2324@@ -12,7 +12,7 @@
2325
2326 You should have received a copy of the GNU General Public License
2327 along with this program; if not, write to the Free Software
2328- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
2329+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
2330
2331 /*
2332 This is a header for libraries containing functions used in both server and
2333
2334=== modified file 'include/my_xml.h'
2335--- include/my_xml.h 2013-02-26 05:45:28 +0000
2336+++ include/my_xml.h 2013-11-27 10:38:56 +0000
2337@@ -11,7 +11,7 @@
2338
2339 You should have received a copy of the GNU General Public License
2340 along with this program; if not, write to the Free Software
2341- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
2342+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
2343
2344
2345 #ifndef _my_xml_h
2346
2347=== modified file 'include/mysql/innodb_priv.h'
2348--- include/mysql/innodb_priv.h 2010-11-22 14:08:51 +0000
2349+++ include/mysql/innodb_priv.h 2013-11-27 10:38:56 +0000
2350@@ -11,7 +11,7 @@
2351
2352 You should have received a copy of the GNU General Public License
2353 along with this program; if not, write to the Free Software
2354- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
2355+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
2356
2357 #ifndef INNODB_PRIV_INCLUDED
2358 #define INNODB_PRIV_INCLUDED
2359
2360=== modified file 'include/mysql/plugin.h'
2361--- include/mysql/plugin.h 2013-02-26 05:45:28 +0000
2362+++ include/mysql/plugin.h 2013-11-27 10:38:56 +0000
2363@@ -169,6 +169,7 @@
2364 #define PLUGIN_VAR_STR 0x0005
2365 #define PLUGIN_VAR_ENUM 0x0006
2366 #define PLUGIN_VAR_SET 0x0007
2367+#define PLUGIN_VAR_DOUBLE 0x0008
2368 #define PLUGIN_VAR_UNSIGNED 0x0080
2369 #define PLUGIN_VAR_THDLOCAL 0x0100 /* Variable is per-connection */
2370 #define PLUGIN_VAR_READONLY 0x0200 /* Server variable is read only */
2371@@ -351,6 +352,11 @@
2372 PLUGIN_VAR_SET | ((opt) & PLUGIN_VAR_MASK), \
2373 #name, comment, check, update, &varname, def, typelib }
2374
2375+#define MYSQL_SYSVAR_DOUBLE(name, varname, opt, comment, check, update, def, min, max, blk) \
2376+DECLARE_MYSQL_SYSVAR_SIMPLE(name, double) = { \
2377+ PLUGIN_VAR_DOUBLE | ((opt) & PLUGIN_VAR_MASK), \
2378+ #name, comment, check, update, &varname, def, min, max, blk }
2379+
2380 #define MYSQL_THDVAR_BOOL(name, opt, comment, check, update, def) \
2381 DECLARE_MYSQL_THDVAR_BASIC(name, char) = { \
2382 PLUGIN_VAR_BOOL | PLUGIN_VAR_THDLOCAL | ((opt) & PLUGIN_VAR_MASK), \
2383@@ -401,6 +407,11 @@
2384 PLUGIN_VAR_SET | PLUGIN_VAR_THDLOCAL | ((opt) & PLUGIN_VAR_MASK), \
2385 #name, comment, check, update, -1, def, NULL, typelib }
2386
2387+#define MYSQL_THDVAR_DOUBLE(name, opt, comment, check, update, def, min, max, blk) \
2388+DECLARE_MYSQL_THDVAR_SIMPLE(name, double) = { \
2389+ PLUGIN_VAR_DOUBLE | PLUGIN_VAR_THDLOCAL | ((opt) & PLUGIN_VAR_MASK), \
2390+ #name, comment, check, update, -1, def, min, max, blk, NULL }
2391+
2392 /* accessor macros */
2393
2394 #define SYSVAR(name) \
2395
2396=== modified file 'include/mysql/plugin_audit.h'
2397--- include/mysql/plugin_audit.h 2011-07-07 09:45:10 +0000
2398+++ include/mysql/plugin_audit.h 2013-11-27 10:38:56 +0000
2399@@ -25,7 +25,7 @@
2400
2401 #define MYSQL_AUDIT_CLASS_MASK_SIZE 1
2402
2403-#define MYSQL_AUDIT_INTERFACE_VERSION 0x0300
2404+#define MYSQL_AUDIT_INTERFACE_VERSION 0x0301
2405
2406
2407 /*************************************************************************
2408@@ -59,6 +59,10 @@
2409 struct charset_info_st *general_charset;
2410 unsigned long long general_time;
2411 unsigned long long general_rows;
2412+ MYSQL_LEX_STRING general_host;
2413+ MYSQL_LEX_STRING general_sql_command;
2414+ MYSQL_LEX_STRING general_external_user;
2415+ MYSQL_LEX_STRING general_ip;
2416 };
2417
2418
2419
2420=== modified file 'include/mysql/plugin_audit.h.pp'
2421--- include/mysql/plugin_audit.h.pp 2012-12-19 09:33:45 +0000
2422+++ include/mysql/plugin_audit.h.pp 2013-11-27 10:38:56 +0000
2423@@ -261,6 +261,10 @@
2424 struct charset_info_st *general_charset;
2425 unsigned long long general_time;
2426 unsigned long long general_rows;
2427+ MYSQL_LEX_STRING general_host;
2428+ MYSQL_LEX_STRING general_sql_command;
2429+ MYSQL_LEX_STRING general_external_user;
2430+ MYSQL_LEX_STRING general_ip;
2431 };
2432 struct mysql_event_connection
2433 {
2434
2435=== modified file 'include/mysql_time.h'
2436--- include/mysql_time.h 2013-02-26 05:45:28 +0000
2437+++ include/mysql_time.h 2013-11-27 10:38:56 +0000
2438@@ -11,7 +11,7 @@
2439
2440 You should have received a copy of the GNU General Public License
2441 along with this program; if not, write to the Free Software
2442- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
2443+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
2444
2445 #ifndef _mysql_time_h_
2446 #define _mysql_time_h_
2447
2448=== modified file 'include/t_ctype.h'
2449--- include/t_ctype.h 2010-10-27 11:32:32 +0000
2450+++ include/t_ctype.h 2013-11-27 10:38:56 +0000
2451@@ -11,7 +11,7 @@
2452
2453 You should have received a copy of the GNU General Public License
2454 along with this program; if not, write to the Free Software
2455- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
2456+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
2457
2458 /*
2459 Copyright (C) 1998, 1999 by Pruet Boonma, all rights reserved.
2460
2461=== modified file 'include/typelib.h'
2462--- include/typelib.h 2013-02-26 05:45:28 +0000
2463+++ include/typelib.h 2013-11-27 10:38:56 +0000
2464@@ -11,7 +11,7 @@
2465
2466 You should have received a copy of the GNU General Public License
2467 along with this program; if not, write to the Free Software
2468- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
2469+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
2470
2471
2472 #ifndef _typelib_h
2473
2474=== modified file 'libmysql/CMakeLists.txt'
2475--- libmysql/CMakeLists.txt 2013-11-27 10:38:46 +0000
2476+++ libmysql/CMakeLists.txt 2013-11-27 10:38:56 +0000
2477@@ -1,4 +1,4 @@
2478-# Copyright (c) 2006, 2012, Oracle and/or its affiliates. All rights reserved.
2479+# Copyright (c) 2006, 2013, Oracle and/or its affiliates. All rights reserved.
2480 #
2481 # This program is free software; you can redistribute it and/or modify
2482 # it under the terms of the GNU General Public License as published by
2483@@ -131,6 +131,13 @@
2484 mysql_set_character_set
2485 mysql_get_character_set_info
2486 mysql_stmt_next_result
2487+my_init
2488+mysql_client_find_plugin
2489+mysql_client_register_plugin
2490+mysql_load_plugin
2491+mysql_load_plugin_v
2492+mysql_options4
2493+mysql_plugin_options
2494
2495 CACHE INTERNAL "Functions exported by client API"
2496
2497@@ -179,6 +186,12 @@
2498 IF(MSVC)
2499 ENDIF()
2500
2501+MACRO(GET_TARGET_NAME target out_name)
2502+ GET_TARGET_PROPERTY(location ${target} LOCATION)
2503+ GET_FILENAME_COMPONENT(name ${location} NAME)
2504+ SET(${out_name} ${name})
2505+ENDMACRO()
2506+
2507 IF(UNIX)
2508 MACRO(GET_VERSIONED_LIBNAME LIBNAME EXTENSION VERSION OUTNAME)
2509 SET(DOT_VERSION ".${VERSION}")
2510@@ -204,10 +217,9 @@
2511 # libtool compatability
2512 IF(CMAKE_SYSTEM_NAME MATCHES "FreeBSD" OR APPLE)
2513 SET(OS_SHARED_LIB_VERSION "${SHARED_LIB_MAJOR_VERSION}")
2514- ELSEIF(CMAKE_SYSTEM_NAME MATCHES "HP-UX")
2515- SET(OS_SHARED_LIB_VERSION "${SHARED_LIB_MAJOR_VERSION}.0")
2516 ELSE()
2517- SET(OS_SHARED_LIB_VERSION "${SHARED_LIB_MAJOR_VERSION}.0.0")
2518+ SET(OS_SHARED_LIB_VERSION
2519+ "${SHARED_LIB_MAJOR_VERSION}.${SHARED_LIB_MINOR_VERSION}.0")
2520 ENDIF()
2521 # Name of shared library is mysqlclient on Unix
2522 SET_TARGET_PROPERTIES(libmysql PROPERTIES
2523
2524=== modified file 'libmysql/authentication_win/common.cc'
2525--- libmysql/authentication_win/common.cc 2011-09-21 11:01:41 +0000
2526+++ libmysql/authentication_win/common.cc 2013-11-27 10:38:56 +0000
2527@@ -11,7 +11,7 @@
2528
2529 You should have received a copy of the GNU General Public License
2530 along with this program; if not, write to the Free Software
2531- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
2532+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
2533
2534 #include "common.h"
2535 #include <sddl.h> // for ConvertSidToStringSid()
2536
2537=== modified file 'libmysql/authentication_win/common.h'
2538--- libmysql/authentication_win/common.h 2011-09-21 11:01:41 +0000
2539+++ libmysql/authentication_win/common.h 2013-11-27 10:38:56 +0000
2540@@ -11,7 +11,7 @@
2541
2542 You should have received a copy of the GNU General Public License
2543 along with this program; if not, write to the Free Software
2544- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
2545+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
2546
2547 #ifndef COMMON_H
2548 #define COMMON_H
2549
2550=== modified file 'libmysql/authentication_win/handshake.cc'
2551--- libmysql/authentication_win/handshake.cc 2011-04-29 21:53:46 +0000
2552+++ libmysql/authentication_win/handshake.cc 2013-11-27 10:38:56 +0000
2553@@ -1,4 +1,4 @@
2554-/* Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
2555+/* Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
2556
2557 This program is free software; you can redistribute it and/or modify
2558 it under the terms of the GNU General Public License as published by
2559@@ -11,7 +11,7 @@
2560
2561 You should have received a copy of the GNU General Public License
2562 along with this program; if not, write to the Free Software
2563- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
2564+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
2565
2566 #include "handshake.h"
2567
2568@@ -280,10 +280,9 @@
2569
2570 void Security_buffer::free(void)
2571 {
2572- if (!m_allocated)
2573- return;
2574- if (!ptr())
2575- return;
2576- FreeContextBuffer(ptr());
2577- m_allocated= false;
2578+ if (m_allocated && NULL != ptr())
2579+ {
2580+ FreeContextBuffer(ptr());
2581+ init(NULL, 0);
2582+ }
2583 }
2584
2585=== modified file 'libmysql/authentication_win/handshake.h'
2586--- libmysql/authentication_win/handshake.h 2011-04-29 21:53:46 +0000
2587+++ libmysql/authentication_win/handshake.h 2013-11-27 10:38:56 +0000
2588@@ -1,4 +1,4 @@
2589-/* Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
2590+/* Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
2591
2592 This program is free software; you can redistribute it and/or modify
2593 it under the terms of the GNU General Public License as published by
2594@@ -11,7 +11,7 @@
2595
2596 You should have received a copy of the GNU General Public License
2597 along with this program; if not, write to the Free Software
2598- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
2599+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
2600
2601 #ifndef HANDSHAKE_H
2602 #define HANDSHAKE_H
2603@@ -53,7 +53,12 @@
2604 }
2605
2606 /// If @c false, no deallocation will be done in the destructor.
2607- bool m_allocated;
2608+ const bool m_allocated;
2609+
2610+ // Copying/assignment is not supported and can lead to memory leaks
2611+ // So declaring copy constructor and assignment operator as private
2612+ Security_buffer( const Security_buffer& );
2613+ const Security_buffer& operator=( const Security_buffer& );
2614
2615 public:
2616
2617@@ -75,11 +80,6 @@
2618 return m_buf.cbBuffer;
2619 }
2620
2621- bool is_valid() const
2622- {
2623- return ptr() != NULL;
2624- }
2625-
2626 const Blob as_blob() const
2627 {
2628 return Blob(ptr(), len());
2629
2630=== modified file 'libmysql/authentication_win/handshake_client.cc'
2631--- libmysql/authentication_win/handshake_client.cc 2011-10-19 11:42:46 +0000
2632+++ libmysql/authentication_win/handshake_client.cc 2013-11-27 10:38:56 +0000
2633@@ -11,7 +11,7 @@
2634
2635 You should have received a copy of the GNU General Public License
2636 along with this program; if not, write to the Free Software
2637- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
2638+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
2639
2640 #include "handshake.h"
2641
2642
2643=== modified file 'libmysql/authentication_win/log_client.cc'
2644--- libmysql/authentication_win/log_client.cc 2011-09-21 11:01:41 +0000
2645+++ libmysql/authentication_win/log_client.cc 2013-11-27 10:38:56 +0000
2646@@ -11,7 +11,7 @@
2647
2648 You should have received a copy of the GNU General Public License
2649 along with this program; if not, write to the Free Software
2650- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
2651+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
2652
2653 #include <my_global.h>
2654 #include "common.h"
2655
2656=== modified file 'libmysql/authentication_win/plugin_client.cc'
2657--- libmysql/authentication_win/plugin_client.cc 2011-06-03 13:17:35 +0000
2658+++ libmysql/authentication_win/plugin_client.cc 2013-11-27 10:38:56 +0000
2659@@ -11,7 +11,7 @@
2660
2661 You should have received a copy of the GNU General Public License
2662 along with this program; if not, write to the Free Software
2663- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
2664+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
2665
2666 #include <my_global.h>
2667 #include <mysql.h>
2668
2669=== modified file 'libmysql/conf_to_src.c'
2670--- libmysql/conf_to_src.c 2013-02-26 05:45:28 +0000
2671+++ libmysql/conf_to_src.c 2013-11-27 10:38:56 +0000
2672@@ -14,7 +14,7 @@
2673
2674 You should have received a copy of the GNU General Public License
2675 along with this program; if not, write to the Free Software
2676- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
2677+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
2678
2679 /* can't use -lmysys because this prog is used to create -lstrings */
2680
2681
2682=== modified file 'libmysql/libmysql.def'
2683--- libmysql/libmysql.def 2011-04-06 14:31:26 +0000
2684+++ libmysql/libmysql.def 2013-11-27 10:38:56 +0000
2685@@ -104,3 +104,10 @@
2686 mysql_server_end
2687 mysql_set_character_set
2688 mysql_get_character_set_info
2689+ my_init
2690+ mysql_client_find_plugin
2691+ mysql_client_register_plugin
2692+ mysql_load_plugin
2693+ mysql_load_plugin_v
2694+ mysql_options4
2695+ mysql_plugin_options
2696
2697=== modified file 'libmysqld/examples/CMakeLists.txt'
2698--- libmysqld/examples/CMakeLists.txt 2013-02-26 05:45:28 +0000
2699+++ libmysqld/examples/CMakeLists.txt 2013-11-27 10:38:56 +0000
2700@@ -1,4 +1,4 @@
2701-# Copyright (c) 2006, 2012, Oracle and/or its affiliates. All rights reserved.
2702+# Copyright (c) 2006, 2013, Oracle and/or its affiliates. All rights reserved.
2703 #
2704 # This program is free software; you can redistribute it and/or modify
2705 # it under the terms of the GNU General Public License as published by
2706@@ -17,7 +17,7 @@
2707 ${CMAKE_SOURCE_DIR}/libmysqld/include
2708 ${CMAKE_SOURCE_DIR}/regex
2709 ${CMAKE_SOURCE_DIR}/tests
2710- ${READLINE_INCLUDE_DIR}
2711+ ${EDITLINE_INCLUDE_DIR}
2712 )
2713
2714
2715@@ -28,8 +28,7 @@
2716 ../../client/mysql.cc ../../client/readline.cc)
2717 TARGET_LINK_LIBRARIES(mysql_embedded mysqlserver)
2718 IF(UNIX)
2719- ADD_DEFINITIONS(${READLINE_DEFINES})
2720- TARGET_LINK_LIBRARIES(mysql_embedded ${READLINE_LIBRARY})
2721+ TARGET_LINK_LIBRARIES(mysql_embedded ${EDITLINE_LIBRARY})
2722 SET_TARGET_PROPERTIES(mysql_embedded PROPERTIES ENABLE_EXPORTS TRUE)
2723 ENDIF(UNIX)
2724
2725
2726=== modified file 'libmysqld/examples/test-run'
2727--- libmysqld/examples/test-run 2010-12-28 18:57:23 +0000
2728+++ libmysqld/examples/test-run 2013-11-27 10:38:56 +0000
2729@@ -13,7 +13,7 @@
2730 #
2731 # You should have received a copy of the GNU General Public License
2732 # along with this program; if not, write to the Free Software
2733-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
2734+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
2735
2736 # This is slapped together as a quick way to run the tests and
2737 # is not meant for prime time. Please hack at it and submit
2738
2739=== modified file 'libmysqld/lib_sql.cc'
2740--- libmysqld/lib_sql.cc 2013-02-12 10:17:24 +0000
2741+++ libmysqld/lib_sql.cc 2013-11-27 10:38:56 +0000
2742@@ -511,6 +511,7 @@
2743 char ***argvp= NULL;
2744 int fake_argc= 1;
2745 char *fake_argv[2];
2746+ char **foo= &fake_argv[0];
2747 char fake_server[]= "server";
2748 char fake_embedded[]= "embedded";
2749 char *fake_groups[]= { fake_server, fake_embedded, NULL };
2750@@ -530,7 +531,6 @@
2751 fake_argv[0]= fake_name;
2752 fake_argv[1]= NULL;
2753
2754- char **foo= &fake_argv[0];
2755 argcp= &fake_argc;
2756 argvp= &foo;
2757 }
2758@@ -566,7 +566,8 @@
2759 return 1;
2760 }
2761
2762- adjust_related_options();
2763+ ulong requested_open_files_dummy;
2764+ adjust_related_options(&requested_open_files_dummy);
2765
2766 if (init_common_variables())
2767 {
2768@@ -784,7 +785,8 @@
2769 thd_init_client_charset(thd, mysql->charset->number);
2770 thd->update_charset();
2771 Security_context *sctx= thd->security_ctx;
2772- sctx->host_or_ip= sctx->host= (char*) my_localhost;
2773+ sctx->set_host(my_localhost);
2774+ sctx->host_or_ip= sctx->get_host()->ptr();
2775 strmake(sctx->priv_host, (char*) my_localhost, MAX_HOSTNAME-1);
2776 strmake(sctx->priv_user, mysql->user, USERNAME_LENGTH-1);
2777 sctx->user= my_strdup(mysql->user, MYF(0));
2778@@ -819,14 +821,14 @@
2779 connect_attrs_len + 2);
2780 if (mysql->options.client_ip)
2781 {
2782- sctx->host= my_strdup(mysql->options.client_ip, MYF(0));
2783- sctx->ip= my_strdup(sctx->host, MYF(0));
2784+ sctx->set_host(my_strdup(mysql->options.client_ip, MYF(0)));
2785+ sctx->set_ip(my_strdup(sctx->get_host()->ptr(), MYF(0)));
2786 }
2787 else
2788- sctx->host= (char*)my_localhost;
2789- sctx->host_or_ip= sctx->host;
2790+ sctx->set_host((char*)my_localhost);
2791+ sctx->host_or_ip= sctx->host->ptr();
2792
2793- if (acl_check_host(sctx->host, sctx->ip))
2794+ if (acl_check_host(sctx->get_host()->ptr(), sctx->get_ip()->ptr()))
2795 goto err;
2796
2797 /* construct a COM_CHANGE_USER packet */
2798
2799=== modified file 'mysql-test/collections/default.daily'
2800--- mysql-test/collections/default.daily 2013-02-12 12:09:48 +0000
2801+++ mysql-test/collections/default.daily 2013-11-27 10:38:56 +0000
2802@@ -1,7 +1,8 @@
2803 # Default suites in modes normal(which includes binlog format stmt/mixed/row, parts), embedded and ps-protocol
2804 # Adding "--big-test" option to the default suite, normal(which includes binlog format stmt/mixed/row, parts), embedded and ps-protocol
2805-perl mysql-test-run.pl --force --timer --big-test --testcase-timeout=90 --debug-server --parallel=auto --experimental=collections/default.experimental --comment=normal-debug-big --vardir=var-normal-debug-big --report-features --skip-test-list=collections/disabled-daily.list
2806-perl mysql-test-run.pl --force --timer --big-test --testcase-timeout=60 --debug-server --parallel=auto --experimental=collections/default.experimental --comment=embedded-debug-big --vardir=var-embedded-debug-big --embedded
2807+perl mysql-test-run.pl --force --timer --big-test --testcase-timeout=90 --debug-server --parallel=auto --experimental=collections/default.experimental --comment=normal-debug-big --vardir=var-normal-debug-big --report-features --skip-test-list=collections/disabled-daily.list --unit-tests
2808+# --debug-server is not used for embedded runs since debug build of embedded server is not available
2809+perl mysql-test-run.pl --force --timer --big-test --testcase-timeout=60 --parallel=auto --experimental=collections/default.experimental --comment=embedded-big --vardir=var-embedded-big --embedded-server
2810 perl mysql-test-run.pl --force --timer --big-test --testcase-timeout=60 --debug-server --parallel=auto --experimental=collections/default.experimental --comment=ps-debug-big --vardir=var-ps-debug-big --ps-protocol --skip-test-list=collections/disabled-daily.list
2811 # Run the suites that are not part of the default - funcs_2, stress, jp, nist
2812 perl mysql-test-run.pl --force --timer --big-test --testcase-timeout=60 --debug-server --parallel=auto --experimental=collections/default.experimental --comment=funcs2-debug-big --vardir=var-funcs2-debug-big --suite=funcs_2
2813@@ -21,9 +22,9 @@
2814 # Additional GTID coverage (binlog suite with gtid_mode=ON)
2815 perl mysql-test-run.pl --force --timer --debug-server --parallel=auto --experimental=collections/default.experimental --comment=binlog_gtid-debug --vardir=var-binlog_gtid-debug --suite=binlog --mysqld=--binlog-checksum=CRC32 --mysqld=--enforce-gtid-consistency --mysqld=--log-slave-updates --mysqld=--gtid-mode=on --skip-test-list=collections/disabled-gtid-on.list
2816
2817-# Additional runs for innodb-page-size=4k and 8k
2818-perl mysql-test-run.pl --timer --force --debug-server --parallel=auto --comment=n_mix_4k_size --vardir=var-n_mix --mysqld=--binlog-format=mixed --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list --mysqld=--innodb-page-size=4k --skip-test=innodb_ignore_builtin
2819-perl mysql-test-run.pl --timer --force --debug-server --parallel=auto --comment=n_mix_8k_size --vardir=var-n_mix --mysqld=--binlog-format=mixed --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list --mysqld=--innodb-page-size=8k --skip-test=innodb_ignore_builtin
2820+# Run innodb suite including big-test with innodb-page-size=4k and 8k
2821+perl mysql-test-run.pl --timer --force --big-test --testcase-timeout=60 --debug-server --parallel=auto --comment=n_mix_4k_size --vardir=var-n_mix --mysqld=--binlog-format=mixed --experimental=collections/default.experimental --skip-test-list=collections/disabled-daily.list --mysqld=--innodb-page-size=4k --skip-test=innodb_ignore_builtin --suite=innodb
2822+perl mysql-test-run.pl --timer --force --big-test --testcase-timeout=60 --debug-server --parallel=auto --comment=n_mix_8k_size --vardir=var-n_mix --mysqld=--binlog-format=mixed --experimental=collections/default.experimental --skip-test-list=collections/disabled-daily.list --mysqld=--innodb-page-size=8k --skip-test=innodb_ignore_builtin --suite=innodb
2823
2824 #Engine independent tests
2825 perl mysql-test-run.pl --timer --force --debug-server --parallel=auto --comment=eits-rpl-binlog-row-tests-myisam-engine-debug --experimental=collections/default.experimental --vardir=var-binlog-row-eits-tests-myisam-engine-debug --suite=engines/iuds,engines/funcs --suite-timeout=500 --max-test-fail=0 --retry-failure=0 --mysqld=--default-storage-engine=myisam --do-test=rpl --mysqld=--binlog-format=row --skip-test-list=collections/disabled-daily.list
2826
2827=== added file 'mysql-test/collections/default.daily-valgrind'
2828--- mysql-test/collections/default.daily-valgrind 1970-01-01 00:00:00 +0000
2829+++ mysql-test/collections/default.daily-valgrind 2013-11-27 10:38:56 +0000
2830@@ -0,0 +1,15 @@
2831+# Valgrind run of non default suites
2832+# Default suites are covered through per push
2833+
2834+perl mysql-test-run.pl --force --timer --testcase-timeout=60 --debug-server --parallel=auto --experimental=collections/default.experimental --comment=funcs2-debug-big --vardir=var-funcs2-debug-big --suite=funcs_2
2835+perl mysql-test-run.pl --force --timer --debug-server --parallel=auto --experimental=collections/default.experimental --comment=stress-debug --vardir=var-stress-debug --suite=stress
2836+perl mysql-test-run.pl --force --timer --debug-server --parallel=auto --experimental=collections/default.experimental --comment=jp-debug --vardir=var-jp-debug --suite=jp
2837+perl mysql-test-run.pl --force --timer --debug-server --parallel=auto --experimental=collections/default.experimental --comment=nist-debug --vardir=var-nist-debug --suite=nist
2838+
2839+
2840+#Engine independent tests
2841+perl mysql-test-run.pl --timer --force --testcase-timeout=60 --debug-server --parallel=auto --comment=eits-tests-myisam-engine-debug-big --experimental=collections/default.experimental --vardir=var-stmt-eits-tests-myisam-engine-debug-big --suite=engines/iuds,engines/funcs --suite-timeout=500 --max-test-fail=0 --retry-failure=0 --mysqld=--default-storage-engine=myisam --mysqld=--default-tmp-storage-engine=myisam --skip-test-list=collections/disabled-daily.list
2842+perl mysql-test-run.pl --timer --force --testcase-timeout=60 --debug-server --parallel=auto --comment=eits-tests-innodb-engine-debug-big --experimental=collections/default.experimental --vardir=var-stmt-eits-tests-innodb-engine-debug-big --suite=engines/iuds,engines/funcs --suite-timeout=500 --max-test-fail=0 --retry-failure=0 --mysqld=--default-storage-engine=innodb --mysqld=--innodb --skip-test-list=collections/disabled-daily.list
2843+
2844+#Memcached tests
2845+perl mysql-test-run.pl --timer --force --debug-server --comment=memcached-debug --vardir=var-debug-memcached --experimental=collections/default.experimental --parallel=1 --retry=0 --suite=memcached --skip-test-list=collections/disabled-daily.list
2846
2847=== modified file 'mysql-test/collections/default.experimental'
2848--- mysql-test/collections/default.experimental 2013-02-09 01:18:29 +0000
2849+++ mysql-test/collections/default.experimental 2013-11-27 10:38:56 +0000
2850@@ -10,13 +10,14 @@
2851
2852 main.index_merge_innodb # BUG#11754168 2012-05-08 jorgen Doing an attempt at reenabling tests disabled by bug. EXPLAIN's row estimates varies for innodb so marked experimental for a while
2853
2854-innodb.innodb_monitor # Bug#12320827 2011-08-04 Occasional failure in PB2
2855+
2856+parts.partition_debug_innodb # Bug#14150368 2013-03-07 anitha Failing very frequently on PB2
2857
2858 rpl.rpl_delayed_slave # BUG#11764654 rpl_delayed_slave fails sporadically in pb
2859 rpl.rpl_innodb_bug28430 # Bug#11754425
2860 rpl.rpl_show_slave_running # BUG#12346048 2011-04-11 sven fails sporadically on pb2
2861 rpl.rpl_gtid_logs_without_rotate_or_stop_event @windows # Bug#16207800 2013-02-09 anitha Fails very frequently on windows
2862
2863-sys_vars.rpl_init_slave_func # Bug#12535301 2011-05-09 andrei sys_vars.rpl_init_slave_func mismatches in daily-5.5
2864-
2865+perfschema.socket_summary_by_instance_func # bug#16274580
2866+innodb.innodb_bug14676111 # bug#17026780 2013-07-08 anitha Originally made experimental due to bug#16371942 which is now fixed. Now fails with mismatch in CLUST_INDEX_SIZE
2867
2868
2869=== modified file 'mysql-test/collections/default.push'
2870--- mysql-test/collections/default.push 2013-01-29 11:21:54 +0000
2871+++ mysql-test/collections/default.push 2013-11-27 10:38:56 +0000
2872@@ -1,5 +1,5 @@
2873-perl mysql-test-run.pl --timer --debug-server --force --parallel=auto --comment=n_mix-debug --vardir=var-n_mix --mysqld=--binlog-format=mixed --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list
2874+perl mysql-test-run.pl --timer --debug-server --force --parallel=auto --comment=n_mix-debug --vardir=var-n_mix --mysqld=--binlog-format=mixed --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list --unit-tests
2875 perl mysql-test-run.pl --timer --debug-server --force --parallel=auto --comment=rpl_binlog_ps_row-debug --vardir=var-rpl_binlog-ps_row --suite=rpl,binlog --ps-protocol --mysqld=--binlog-format=row --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list
2876-perl mysql-test-run.pl --timer --debug-server --force --parallel=auto --comment=main_embedded-debug --vardir=var-main_emebbed --suite=main --embedded --experimental=collections/default.experimental
2877-perl mysql-test-run.pl --timer --debug-server --force --parallel=auto --comment=innodb_4k_size-debug --vardir=var-innodb-4k --experimental=collections/default.experimental --suite=innodb --mysqld=--innodb-page-size=4k
2878-perl mysql-test-run.pl --timer --debug-server --force --parallel=auto --comment=rpl_binlog_n_mix_MTS-debug --vardir=var-mts-rpl-binlog-n_mix --mysqld=--binlog-format=mixed --experimental=collections/default.experimental --mysqld=--slave-parallel-workers=4 --mysqld=--slave-transaction-retries=0 --suite=rpl
2879+perl mysql-test-run.pl --timer --debug-server --force --parallel=auto --comment=main_embedded-debug --vardir=var-main_emebbed --suite=main --embedded --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list
2880+perl mysql-test-run.pl --timer --debug-server --force --parallel=auto --comment=innodb_4k_size-debug --vardir=var-innodb-4k --experimental=collections/default.experimental --suite=innodb --mysqld=--innodb-page-size=4k --skip-test-list=collections/disabled-per-push.list
2881+perl mysql-test-run.pl --timer --debug-server --force --parallel=auto --comment=rpl_binlog_n_mix_MTS-debug --vardir=var-mts-rpl-binlog-n_mix --mysqld=--binlog-format=mixed --experimental=collections/default.experimental --mysqld=--slave-parallel-workers=4 --mysqld=--slave-transaction-retries=0 --suite=rpl --skip-test-list=collections/disabled-per-push.list
2882
2883=== added file 'mysql-test/collections/default.push-valgrind'
2884--- mysql-test/collections/default.push-valgrind 1970-01-01 00:00:00 +0000
2885+++ mysql-test/collections/default.push-valgrind 2013-11-27 10:38:56 +0000
2886@@ -0,0 +1,2 @@
2887+# Run all default suites
2888+perl mysql-test-run.pl --timer --debug-server --force --parallel=auto --comment=all_default_valgrind --vardir=var-all_default_valgrind --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list
2889
2890=== modified file 'mysql-test/collections/default.release.in'
2891--- mysql-test/collections/default.release.in 2013-01-21 14:05:32 +0000
2892+++ mysql-test/collections/default.release.in 2013-11-27 10:38:56 +0000
2893@@ -15,4 +15,4 @@
2894 perl mysql-test-run.pl --force --timer --parallel=auto --experimental=collections/default.experimental --comment=embedded --vardir=var-embedded --embedded-server --skip-rpl
2895 perl mysql-test-run.pl --force --timer --parallel=auto --experimental=collections/default.experimental --comment=nist --vardir=var-nist --suite=nist
2896 perl mysql-test-run.pl --force --timer --parallel=auto --experimental=collections/default.experimental --comment=nist+ps --vardir=var-nist_ps --suite=nist --ps-protocol
2897-perl mysql-test-run.pl --timer --force --comment=memcached --vardir=var-memcached --experimental=collections/default.experimental --parallel=auto --retry=0 --suite=memcached --mysqld=--innodb-page-size=4k
2898+perl mysql-test-run.pl --timer --force --comment=memcached --vardir=var-memcached --experimental=collections/default.experimental --parallel=auto --retry=0 --suite=memcached
2899
2900=== modified file 'mysql-test/collections/default.weekly'
2901--- mysql-test/collections/default.weekly 2013-01-29 11:21:54 +0000
2902+++ mysql-test/collections/default.weekly 2013-11-27 10:38:56 +0000
2903@@ -11,9 +11,10 @@
2904 # Repeat daily run
2905 # big-test option for normal runs
2906 # Default suites (in modes binlog format stmt/mixed/row, parts), embedded and ps-protocol
2907-perl mysql-test-run.pl --force --timer --big-test --testcase-timeout=90 --debug-server --parallel=auto --experimental=collections/default.experimental --comment=normal-debug-big --vardir=var-normal-debug-big --report-features --skip-test-list=collections/disabled-daily.list --mysqld=--innodb_autoextend_increment=64
2908-perl mysql-test-run.pl --force --timer --big-test --testcase-timeout=60 --debug-server --parallel=auto --experimental=collections/default.experimental --comment=embedded-debug-big --vardir=var-embedded-debug-big --embedded
2909-perl mysql-test-run.pl --force --timer --big-test --testcase-timeout=90 --debug-server --parallel=auto --experimental=collections/default.experimental --comment=ps-debug-big --vardir=var-ps-debug-big --ps-protocol --skip-test-list=collections/disabled-daily.list
2910+perl mysql-test-run.pl --force --timer --big-test --testcase-timeout=90 --debug-server --parallel=auto --experimental=collections/default.experimental --comment=normal-debug-big --vardir=var-normal-debug-big --report-features --skip-test-list=collections/disabled-weekly.list --mysqld=--innodb_autoextend_increment=64 --unit-tests
2911+# --debug-server is not used for embedded runs since debug build of embedded server is not available
2912+perl mysql-test-run.pl --force --timer --big-test --testcase-timeout=60 --parallel=auto --experimental=collections/default.experimental --comment=embedded-big --vardir=var-embedded-big --embedded-server
2913+perl mysql-test-run.pl --force --timer --big-test --testcase-timeout=90 --debug-server --parallel=auto --experimental=collections/default.experimental --comment=ps-debug-big --vardir=var-ps-debug-big --ps-protocol --skip-test-list=collections/disabled-weekly.list
2914
2915 # Run the suites that are not part of the default - funcs_2, stress, jp, nist
2916 perl mysql-test-run.pl --force --timer --big-test --testcase-timeout=60 --debug-server --parallel=auto --experimental=collections/default.experimental --comment=funcs2-debug --vardir=var-funcs2-big --suite=funcs_2-big
2917@@ -25,9 +26,9 @@
2918
2919 # Additional replication configurations
2920 perl mysql-test-run.pl --timer --force --big-test --testcase-timeout=60 --parallel=auto --comment=all_binlog_checksum-debug --experimental=collections/default.experimental --mysqld=--binlog-checksum=CRC32 --vardir=var-all_binlog_checksum-debug --suite=main,binlog,innodb,federated,rpl,sys_vars,perfschema --skip-test-list=collections/disabled-weekly.list
2921-perl mysql-test-run.pl --force --timer --big-test --testcase-timeout=60 --debug-server --parallel=auto --experimental=collections/default.experimental --comment=rpl_crash_safe_relay-debug --vardir=var-rpl_crash_safe_relay-debug --suite=rpl --mysqld=--relay-log-info-repository=TABLE --skip-test-list=collections/disabled-daily.list
2922-perl mysql-test-run.pl --force --timer --big-test --testcase-timeout=60 --debug-server --parallel=auto --experimental=collections/default.experimental --comment=rpl_crash_safe_master-debug --vardir=var-rpl_crash_safe_master-debug --suite=rpl --mysqld=--master-info-repository=TABLE --skip-test-list=collections/disabled-daily.list
2923-perl mysql-test-run.pl --force --timer --big-test --testcase-timeout=60 --debug-server --parallel=auto --experimental=collections/default.experimental --comment=rpl_binlog-debug-big --vardir=rpl_binlog-debug-big --suite=rpl --skip-test-list=collections/disabled-daily.list
2924+perl mysql-test-run.pl --force --timer --big-test --testcase-timeout=60 --debug-server --parallel=auto --experimental=collections/default.experimental --comment=rpl_crash_safe_relay-debug --vardir=var-rpl_crash_safe_relay-debug --suite=rpl --mysqld=--relay-log-info-repository=TABLE --skip-test-list=collections/disabled-weekly.list
2925+perl mysql-test-run.pl --force --timer --big-test --testcase-timeout=60 --debug-server --parallel=auto --experimental=collections/default.experimental --comment=rpl_crash_safe_master-debug --vardir=var-rpl_crash_safe_master-debug --suite=rpl --mysqld=--master-info-repository=TABLE --skip-test-list=collections/disabled-weekly.list
2926+perl mysql-test-run.pl --force --timer --big-test --testcase-timeout=60 --debug-server --parallel=auto --experimental=collections/default.experimental --comment=rpl_binlog-debug-big --vardir=rpl_binlog-debug-big --suite=rpl --skip-test-list=collections/disabled-weekly.list
2927
2928
2929 #Engine independent tests
2930@@ -41,25 +42,18 @@
2931 #Memcached tests
2932 perl mysql-test-run.pl --timer --force --debug-server --comment=memcached-debug --vardir=var-debug-memcached --experimental=collections/default.experimental --parallel=1 --retry=0 --suite=memcached --skip-test-list=collections/disabled-weekly.list
2933
2934-# Non debug runs of default suites in normal and embedded modes
2935-perl mysql-test-run.pl --force --debug-server --timer --parallel=auto --experimental=collections/default.experimental --comment=normal-non-debug --vardir=var-normal-non-debug --report-features --skip-test-list=collections/disabled-daily.list
2936-perl mysql-test-run.pl --force --debug-server --timer --parallel=auto --experimental=collections/default.experimental --comment=embedded-non-debug --vardir=var-embedded-non-debug --embedded
2937+# Non debug runs of default suites in normal modes
2938+perl mysql-test-run.pl --force --timer --parallel=auto --experimental=collections/default.experimental --comment=normal-non-debug --vardir=var-normal-non-debug --report-features --skip-test-list=collections/disabled-weekly.list
2939
2940
2941
2942 # Multi-Thread Slave
2943-perl mysql-test-run.pl --timer --force --big-test --testcase-timeout=60 --debug-server --parallel=auto --comment=MTS-debug-big --vardir=var-MTS-debug-big --suite=rpl --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list --mysqld=--slave-parallel-workers=4 --mysqld=--slave-transaction-retries=0
2944-
2945-# Run with 4K page size
2946-perl mysql-test-run.pl --debug-server --timer --force --parallel=auto --comment=n_mix_4k_size --vardir=var-n_mix_4k_size --mysqld=--binlog-format=mixed --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list --mysqld=--innodb-page-size=4k --skip-test=innodb_ignore_builtin
2947-perl mysql-test-run.pl --debug-server --timer --force --parallel=auto --comment=rpl_binlog_ps_row_4k_size --vardir=var-rpl_binlog-ps_row --suite=rpl,binlog --ps-protocol --mysqld=--binlog-format=row --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list --mysqld=--innodb-page-size=4k --skip-test=innodb_ignore_builtin
2948-perl mysql-test-run.pl --debug-server --timer --force --parallel=auto --comment=main_embedded_4k_size --vardir=var-main_emebbed --suite=main --embedded --experimental=collections/default.experimental --mysqld=--innodb-page-size=4k --skip-test=innodb_ignore_builtin
2949-
2950-# Run with 8K page size
2951-perl mysql-test-run.pl --debug-server --timer --force --parallel=auto --comment=n_mix_8k_size --vardir=var-n_mix_8k_size --mysqld=--binlog-format=mixed --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list --mysqld=--innodb-page-size=8k --skip-test=innodb_ignore_builtin
2952-perl mysql-test-run.pl --debug-server --timer --force --parallel=auto --comment=rpl_binlog_ps_row_8k_size --vardir=var-rpl_binlog-ps_row --suite=rpl,binlog --ps-protocol --mysqld=--binlog-format=row --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list --mysqld=--innodb-page-size=8k --skip-test=innodb_ignore_builtin
2953-perl mysql-test-run.pl --debug-server --timer --force --parallel=auto --comment=main_embedded_8k_size --vardir=var-main_emebbed --suite=main --embedded --experimental=collections/default.experimental --mysqld=--innodb-page-size=8k --skip-test=innodb_ignore_builtin
2954-
2955+perl mysql-test-run.pl --timer --force --big-test --testcase-timeout=60 --debug-server --parallel=auto --comment=MTS-debug-big --vardir=var-MTS-debug-big --suite=rpl --experimental=collections/default.experimental --skip-test-list=collections/disabled-weekly.list --mysqld=--slave-parallel-workers=4 --mysqld=--slave-transaction-retries=0
2956+
2957+
2958+# Run innodb suite including big-test with innodb-page-size=4k and 8k
2959+perl mysql-test-run.pl --timer --force --big-test --testcase-timeout=60 --debug-server --parallel=auto --comment=n_mix_4k_size --vardir=var-n_mix --mysqld=--binlog-format=mixed --experimental=collections/default.experimental --skip-test-list=collections/disabled-weekly.list --mysqld=--innodb-page-size=4k --skip-test=innodb_ignore_builtin --suite=innodb
2960+perl mysql-test-run.pl --timer --force --big-test --testcase-timeout=60 --debug-server --parallel=auto --comment=n_mix_8k_size --vardir=var-n_mix --mysqld=--binlog-format=mixed --experimental=collections/default.experimental --skip-test-list=collections/disabled-weekly.list --mysqld=--innodb-page-size=8k --skip-test=innodb_ignore_builtin --suite=innodb
2961
2962 # Additional run to test rpl HASH_SCAN & INDEX_SCAN
2963 perl mysql-test-run.pl --force --debug-server --timer --parallel=auto --experimental=collections/default.experimental --comment=binlog_rpl_row_hash_scan --vardir=var-binlog_rpl_row_hash_scan --mysqld=--binlog-format=row --suite=binlog,rpl --mysqld=--slave-rows-search-algorithms=HASH_SCAN,INDEX_SCAN --big-test --testcase-timeout=60
2964
2965=== added file 'mysql-test/collections/default.weekly-valgrind'
2966--- mysql-test/collections/default.weekly-valgrind 1970-01-01 00:00:00 +0000
2967+++ mysql-test/collections/default.weekly-valgrind 2013-11-27 10:38:56 +0000
2968@@ -0,0 +1,17 @@
2969+# Run all default suites with big-test option
2970+perl mysql-test-run.pl --timer --big-test --debug-server --force --parallel=auto --comment=all_default_valgrind --vardir=var-all_default_valgrind --experimental=collections/default.experimental
2971+
2972+
2973+# Run all non default suites with big-test
2974+perl mysql-test-run.pl --force --timer --big-test --testcase-timeout=60 --debug-server --parallel=auto --experimental=collections/default.experimental --comment=funcs2-debug --vardir=var-funcs2-big --suite=funcs_2
2975+perl mysql-test-run.pl --force --timer --big-test --testcase-timeout=60 --debug-server --parallel=auto --experimental=collections/default.experimental --comment=stress-debug-big --vardir=var-stress-debug-big --suite=stress
2976+perl mysql-test-run.pl --force --timer --big-test --testcase-timeout=60 --debug-server --parallel=auto --experimental=collections/default.experimental --comment=jp-debug-big --vardir=var-jp-debug-big --suite=jp
2977+perl mysql-test-run.pl --force --timer --big-test --testcase-timeout=60 --debug-server --parallel=auto --experimental=collections/default.experimental --comment=nist-debug-big --vardir=var-nist-debug-big --suite=nist
2978+
2979+
2980+#Engine independent tests
2981+perl mysql-test-run.pl --timer --force --big-test --testcase-timeout=60 --debug-server --parallel=auto --comment=eits-tests-myisam-engine-debug-big --experimental=collections/default.experimental --vardir=var-stmt-eits-tests-myisam-engine-debug-big --suite=engines/iuds,engines/funcs --suite-timeout=500 --max-test-fail=0 --retry-failure=0 --mysqld=--default-storage-engine=myisam --mysqld=--default-tmp-storage-engine=myisam --skip-test-list=collections/disabled-weekly.list
2982+perl mysql-test-run.pl --timer --force --big-test --testcase-timeout=60 --debug-server --parallel=auto --comment=eits-tests-innodb-engine-debug-big --experimental=collections/default.experimental --vardir=var-stmt-eits-tests-innodb-engine-debug-big --suite=engines/iuds,engines/funcs --suite-timeout=500 --max-test-fail=0 --retry-failure=0 --mysqld=--default-storage-engine=innodb --mysqld=--innodb --skip-test-list=collections/disabled-weekly.list
2983+
2984+#Memcached tests
2985+perl mysql-test-run.pl --timer --force --big-test --debug-server --comment=memcached-debug --vardir=var-debug-memcached --experimental=collections/default.experimental --parallel=1 --retry=0 --suite=memcached --skip-test-list=collections/disabled-weekly.list
2986
2987=== modified file 'mysql-test/extra/binlog_tests/ctype_ucs_binlog.test'
2988--- mysql-test/extra/binlog_tests/ctype_ucs_binlog.test 2012-01-06 20:00:48 +0000
2989+++ mysql-test/extra/binlog_tests/ctype_ucs_binlog.test 2013-11-27 10:38:56 +0000
2990@@ -17,7 +17,7 @@
2991 flush logs;
2992 let $MYSQLD_DATADIR= `select @@datadir`;
2993 --replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR
2994---replace_regex /\/\* xid=.* \*\//\/* XID *\// /table_id: [0-9]+/table_id: #/ /file_id=[0-9]+/file_id=#/ /block_len=[0-9]+/block_len=#/ /Server ver:.*$/SERVER_VERSION, BINLOG_VERSION/ /SET @@SESSION.GTID_NEXT= '.*'/SET @@SESSION.GTID_NEXT= 'GTID';/
2995+--replace_regex /\/\* xid=.* \*\//\/* XID *\// /table_id: [0-9]+/table_id: #/ /file_id=[0-9]+/file_id=#/ /block_len=[0-9]+/block_len=#/ /Server ver:.*$/SERVER_VERSION, BINLOG_VERSION/ /SET @@SESSION.GTID_NEXT= '.*'/SET @@SESSION.GTID_NEXT= 'GTID'/
2996 --exec $MYSQL_BINLOG --short-form $MYSQLD_DATADIR/master-bin.000001
2997 drop table t2;
2998
2999
3000=== modified file 'mysql-test/extra/binlog_tests/mysqlbinlog_row_engine.inc'
3001--- mysql-test/extra/binlog_tests/mysqlbinlog_row_engine.inc 2013-02-15 15:57:07 +0000
3002+++ mysql-test/extra/binlog_tests/mysqlbinlog_row_engine.inc 2013-11-27 10:38:56 +0000
3003@@ -1650,7 +1650,7 @@
3004 --echo #
3005 let $MYSQLD_DATADIR= `select @@datadir`;
3006 --replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
3007---replace_regex /SQL_LOAD_MB-[0-9]-[0-9]/SQL_LOAD_MB-#-#/ /exec_time=[0-9]*/exec_time=#/ /end_log_pos [0-9]*/end_log_pos #/ /# at [0-9]*/# at #/ /Xid = [0-9]*/Xid = #/ /thread_id=[0-9]*/thread_id=#/ /table id [0-9]*/table id #/ /mapped to number [0-9]*/mapped to number #/ /server v [^ ]*/server v #.##.##/ /(@[0-9]*=[0-9-]*[.][0-9]{1,3})[0-9e+-]*[^ ]*[ ]*(.*(FLOAT|DOUBLE).*[*].)/\1... \2/ /SET @@SESSION.GTID_NEXT=.*$/SET @@SESSION.GTID_NEXT= 'GTID';/ /([0-9A-F\-]{36})\:[0-9]+\-[0-9]+/GTID:#-#/ /GROUPS: .*:(.*,.*)/GROUPS: GTID:(X,X)/ /CRC32 0x[0-9a-f]{8}/CRC32 #/
3008+--replace_regex /SQL_LOAD_MB-[0-9]-[0-9]/SQL_LOAD_MB-#-#/ /exec_time=[0-9]*/exec_time=#/ /end_log_pos [0-9]*/end_log_pos #/ /# at [0-9]*/# at #/ /Xid = [0-9]*/Xid = #/ /thread_id=[0-9]*/thread_id=#/ /table id [0-9]*/table id #/ /mapped to number [0-9]*/mapped to number #/ /server v [^ ]*/server v #.##.##/ /(@[0-9]*=[0-9-]*[.][0-9]{1,3})[0-9e+-]*[^ ]*[ ]*(.*(FLOAT|DOUBLE).*[*].)/\1... \2/ /SET @@SESSION.GTID_NEXT= '.*'/SET @@SESSION.GTID_NEXT= 'GTID'/ /([0-9A-F\-]{36})\:[0-9]+\-[0-9]+/GTID:#-#/ /GROUPS: .*:(.*,.*)/GROUPS: GTID:(X,X)/ /CRC32 0x[0-9a-f]{8}/CRC32 #/
3009 --exec $MYSQL_BINLOG --base64-output=decode-rows -v -v $MYSQLD_DATADIR/master-bin.000001
3010
3011 --echo #
3012@@ -1730,7 +1730,7 @@
3013 --echo #
3014 let $MYSQLD_DATADIR= `select @@datadir`;
3015 --replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
3016---replace_regex /SQL_LOAD_MB-[0-9]-[0-9]/SQL_LOAD_MB-#-#/ /exec_time=[0-9]*/exec_time=#/ /end_log_pos [0-9]*/end_log_pos #/ /# at [0-9]*/# at #/ /Xid = [0-9]*/Xid = #/ /thread_id=[0-9]*/thread_id=#/ /table id [0-9]*/table id #/ /mapped to number [0-9]*/mapped to number #/ /server v [^ ]*/server v #.##.##/ /(@[0-9]*=[0-9-]*[.][0-9]{1,3})[0-9e+-]*[^ ]*[ ]*(.*(FLOAT|DOUBLE).*[*].)/\1... \2/ /SET @@SESSION.GTID_NEXT=.*$/SET @@SESSION.GTID_NEXT= 'GTID';/ /([0-9A-F\-]{36})\:[0-9]+\-[0-9]+/GTID:#-#/ /GROUPS: .*:(.*,.*)/GROUPS: GTID:(X,X)/ /CRC32 0x[0-9a-f]{8}/CRC32 #/
3017+--replace_regex /SQL_LOAD_MB-[0-9]-[0-9]/SQL_LOAD_MB-#-#/ /exec_time=[0-9]*/exec_time=#/ /end_log_pos [0-9]*/end_log_pos #/ /# at [0-9]*/# at #/ /Xid = [0-9]*/Xid = #/ /thread_id=[0-9]*/thread_id=#/ /table id [0-9]*/table id #/ /mapped to number [0-9]*/mapped to number #/ /server v [^ ]*/server v #.##.##/ /(@[0-9]*=[0-9-]*[.][0-9]{1,3})[0-9e+-]*[^ ]*[ ]*(.*(FLOAT|DOUBLE).*[*].)/\1... \2/ /SET @@SESSION.GTID_NEXT= '.*'/SET @@SESSION.GTID_NEXT= 'GTID'/ /([0-9A-F\-]{36})\:[0-9]+\-[0-9]+/GTID:#-#/ /GROUPS: .*:(.*,.*)/GROUPS: GTID:(X,X)/ /CRC32 0x[0-9a-f]{8}/CRC32 #/
3018 --exec $MYSQL_BINLOG --base64-output=decode-rows -v -v $MYSQLD_DATADIR/master-bin.000001
3019
3020 --echo #
3021@@ -1857,7 +1857,7 @@
3022 --echo #
3023 let $MYSQLD_DATADIR= `select @@datadir`;
3024 --replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
3025---replace_regex /SQL_LOAD_MB-[0-9]-[0-9]/SQL_LOAD_MB-#-#/ /exec_time=[0-9]*/exec_time=#/ /end_log_pos [0-9]*/end_log_pos #/ /# at [0-9]*/# at #/ /Xid = [0-9]*/Xid = #/ /thread_id=[0-9]*/thread_id=#/ /table id [0-9]*/table id #/ /mapped to number [0-9]*/mapped to number #/ /server v [^ ]*/server v #.##.##/ /(@[0-9]*=[0-9-]*[.][0-9]{1,3})[0-9e+-]*[^ ]*[ ]*(.*(FLOAT|DOUBLE).*[*].)/\1... \2/ /SET @@SESSION.GTID_NEXT=.*$/SET @@SESSION.GTID_NEXT= 'GTID';/ /([0-9A-F\-]{36})\:[0-9]+\-[0-9]+/GTID:#-#/ /GROUPS: .*:(.*,.*)/GROUPS: GTID:(X,X)/ /CRC32 0x[0-9a-f]{8}/CRC32 #/
3026+--replace_regex /SQL_LOAD_MB-[0-9]-[0-9]/SQL_LOAD_MB-#-#/ /exec_time=[0-9]*/exec_time=#/ /end_log_pos [0-9]*/end_log_pos #/ /# at [0-9]*/# at #/ /Xid = [0-9]*/Xid = #/ /thread_id=[0-9]*/thread_id=#/ /table id [0-9]*/table id #/ /mapped to number [0-9]*/mapped to number #/ /server v [^ ]*/server v #.##.##/ /(@[0-9]*=[0-9-]*[.][0-9]{1,3})[0-9e+-]*[^ ]*[ ]*(.*(FLOAT|DOUBLE).*[*].)/\1... \2/ /SET @@SESSION.GTID_NEXT= '.*'/SET @@SESSION.GTID_NEXT= 'GTID'/ /([0-9A-F\-]{36})\:[0-9]+\-[0-9]+/GTID:#-#/ /GROUPS: .*:(.*,.*)/GROUPS: GTID:(X,X)/ /CRC32 0x[0-9a-f]{8}/CRC32 #/
3027 --exec $MYSQL_BINLOG --base64-output=decode-rows -v -v $MYSQLD_DATADIR/master-bin.000001
3028
3029 --echo #
3030@@ -1915,7 +1915,7 @@
3031 --echo #
3032 let $MYSQLD_DATADIR= `select @@datadir`;
3033 --replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
3034---replace_regex /SQL_LOAD_MB-[0-9]-[0-9]/SQL_LOAD_MB-#-#/ /exec_time=[0-9]*/exec_time=#/ /end_log_pos [0-9]*/end_log_pos #/ /# at [0-9]*/# at #/ /Xid = [0-9]*/Xid = #/ /thread_id=[0-9]*/thread_id=#/ /table id [0-9]*/table id #/ /mapped to number [0-9]*/mapped to number #/ /server v [^ ]*/server v #.##.##/ /(@[0-9]*=[0-9-]*[.][0-9]{1,3})[0-9e+-]*[^ ]*[ ]*(.*(FLOAT|DOUBLE).*[*].)/\1... \2/ /SET @@SESSION.GTID_NEXT= '.*'/SET @@SESSION.GTID_NEXT= 'GTID';/ /CRC32 0x[0-9a-f]{8}/CRC32 #/
3035+--replace_regex /SQL_LOAD_MB-[0-9]-[0-9]/SQL_LOAD_MB-#-#/ /exec_time=[0-9]*/exec_time=#/ /end_log_pos [0-9]*/end_log_pos #/ /# at [0-9]*/# at #/ /Xid = [0-9]*/Xid = #/ /thread_id=[0-9]*/thread_id=#/ /table id [0-9]*/table id #/ /mapped to number [0-9]*/mapped to number #/ /server v [^ ]*/server v #.##.##/ /(@[0-9]*=[0-9-]*[.][0-9]{1,3})[0-9e+-]*[^ ]*[ ]*(.*(FLOAT|DOUBLE).*[*].)/\1... \2/ /SET @@SESSION.GTID_NEXT= '.*'/SET @@SESSION.GTID_NEXT= 'GTID'/ /CRC32 0x[0-9a-f]{8}/CRC32 #/
3036 --exec $MYSQL_BINLOG --base64-output=decode-rows -v -v $MYSQLD_DATADIR/master-bin.000001
3037
3038 --echo #
3039
3040=== modified file 'mysql-test/extra/binlog_tests/mysqlbinlog_start_stop_2.inc'
3041--- mysql-test/extra/binlog_tests/mysqlbinlog_start_stop_2.inc 2013-02-12 12:09:48 +0000
3042+++ mysql-test/extra/binlog_tests/mysqlbinlog_start_stop_2.inc 2013-11-27 10:38:56 +0000
3043@@ -30,5 +30,5 @@
3044 --echo ---- $option_text ----
3045
3046 # Print output
3047---replace_regex /SET @@SESSION.GTID_NEXT= '.*'/SET @@SESSION.GTID_NEXT= 'GTID';/ /([0-9A-Fa-f\-]{36})\:[0-9]+\-[0-9]+/UUID:#-#/
3048+--replace_regex /SET @@SESSION.GTID_NEXT= '.*'/SET @@SESSION.GTID_NEXT= 'GTID'/ /([0-9A-Fa-f\-]{36})\:[0-9]+\-[0-9]+/UUID:#-#/
3049 --exec $MYSQL_BINLOG --short-form $option $extra_options
3050
3051=== modified file 'mysql-test/extra/rpl_tests/rpl_conflicts.test'
3052--- mysql-test/extra/rpl_tests/rpl_conflicts.test 2011-08-19 13:04:28 +0000
3053+++ mysql-test/extra/rpl_tests/rpl_conflicts.test 2013-11-27 10:38:56 +0000
3054@@ -89,14 +89,12 @@
3055 --echo ---- Wait until slave stops with an error ----
3056 # Wait until the slave tries to run the query, fails with duplicate
3057 # key error, and stops the SQL thread.
3058- let $slave_sql_errno= 1062; # ER_DUP_ENTRY
3059+
3060+ let $slave_sql_errno= convert_error(ER_DUP_ENTRY);
3061 source include/wait_for_slave_sql_error.inc;
3062+ --let $errno= query_get_value("SHOW SLAVE STATUS", Last_SQL_Errno, 1)
3063+ --eval SELECT "$errno" as 'Last_SQL_Errno'
3064
3065- --let $err= query_get_value("SHOW SLAVE STATUS", Last_SQL_Error, 1)
3066- --replace_regex /end_log_pos [0-9]+/end_log_pos END_LOG_POS/
3067- --disable_query_log
3068- --eval SELECT "$err" as 'Last_SQL_Error (expected "duplicate key" error)'
3069- --enable_query_log
3070 call mtr.add_suppression("Slave SQL.*Duplicate entry .1. for key .PRIMARY.* Error_code: 1062");
3071 call mtr.add_suppression("The slave coordinator and worker threads are stopped, possibly leaving data in inconsistent state");
3072
3073@@ -144,14 +142,11 @@
3074 if (`SELECT @@global.binlog_format = 'ROW' AND @@global.slave_exec_mode = 'STRICT'`) {
3075 --echo ---- Wait until slave stops with an error ----
3076 call mtr.add_suppression("Slave SQL.*Can.t find record in .t1., Error_code: 1032");
3077- let $slave_sql_errno= 1032; # ER_KEY_NOT_FOUND
3078+
3079+ let $slave_sql_errno= convert_error(ER_KEY_NOT_FOUND);
3080 source include/wait_for_slave_sql_error.inc;
3081-
3082- --let $err= query_get_value("SHOW SLAVE STATUS", Last_SQL_Error, 1)
3083- --replace_regex /end_log_pos [0-9]+/end_log_pos END_LOG_POS/
3084- --disable_query_log
3085- --eval SELECT "$err" as 'Last_SQL_Error (expected "duplicate key" error)'
3086- --enable_query_log
3087+ --let $errno= query_get_value("SHOW SLAVE STATUS", Last_SQL_Errno, 1)
3088+ --eval SELECT "$errno" as 'Last_SQL_Errno'
3089
3090 SELECT * FROM t1;
3091
3092
3093=== modified file 'mysql-test/extra/rpl_tests/rpl_extra_col_master.test'
3094--- mysql-test/extra/rpl_tests/rpl_extra_col_master.test 2012-11-20 19:18:59 +0000
3095+++ mysql-test/extra/rpl_tests/rpl_extra_col_master.test 2013-11-27 10:38:56 +0000
3096@@ -486,10 +486,8 @@
3097 --echo ********************************************
3098 --echo
3099 connection slave;
3100-# 1677 = ER_SLAVE_CONVERSION_FAILED
3101---let $slave_sql_errno= 1677
3102 --let $slave_skip_counter= 2
3103---let $show_slave_sql_error= 1
3104+--let $slave_sql_errno= convert_error(ER_SLAVE_CONVERSION_FAILED)
3105 --source include/wait_for_slave_sql_error_and_skip.inc
3106
3107 --echo
3108@@ -542,10 +540,8 @@
3109 --echo ********************************************
3110 --echo
3111 connection slave;
3112-# 1677 = ER_SLAVE_CONVERSION_FAILED
3113---let $slave_sql_errno= 1677
3114 --let $slave_skip_counter= 2
3115---let $show_slave_sql_error= 1
3116+--let $slave_sql_errno= convert_error(ER_SLAVE_CONVERSION_FAILED)
3117 --source include/wait_for_slave_sql_error_and_skip.inc
3118
3119 --echo
3120@@ -684,9 +680,7 @@
3121 # Remove below once fixed
3122 #***************************
3123 connection slave;
3124-# 1091 = ER_CANT_DROP_FIELD_OR_KEY
3125---let $slave_sql_errno= 1091
3126---let $show_slave_sql_error= 1
3127+--let $slave_sql_errno= convert_error(ER_CANT_DROP_FIELD_OR_KEY)
3128 --source include/wait_for_slave_sql_error.inc
3129 #***************************
3130
3131@@ -751,9 +745,7 @@
3132 --echo ********************************************
3133 --echo
3134 connection slave;
3135-# 1054 = ER_BAD_FIELD_ERROR
3136---let $slave_sql_errno= 1054
3137---let $show_slave_sql_error= 1
3138+--let $slave_sql_errno= convert_error(ER_BAD_FIELD_ERROR)
3139 --source include/wait_for_slave_sql_error.inc
3140 STOP SLAVE;
3141
3142@@ -829,9 +821,7 @@
3143 --echo *****************
3144 --echo
3145 connection slave;
3146-# 1072 = ER_KEY_COLUMN_DOES_NOT_EXITS
3147---let $slave_sql_errno= 1072
3148---let $show_slave_sql_error= 1
3149+--let $slave_sql_errno= convert_error(ER_KEY_COLUMN_DOES_NOT_EXITS)
3150 --source include/wait_for_slave_sql_error.inc
3151 STOP SLAVE;
3152
3153
3154=== modified file 'mysql-test/extra/rpl_tests/rpl_extra_col_slave.test'
3155--- mysql-test/extra/rpl_tests/rpl_extra_col_slave.test 2012-06-21 02:57:40 +0000
3156+++ mysql-test/extra/rpl_tests/rpl_extra_col_slave.test 2013-11-27 10:38:56 +0000
3157@@ -94,8 +94,7 @@
3158 SELECT * FROM t2 ORDER BY a;
3159
3160 connection slave;
3161---let $slave_sql_errno= 1677
3162---let $show_slave_sql_error= 1
3163+--let $slave_sql_errno= convert_error(ER_SLAVE_CONVERSION_FAILED)
3164 --source include/wait_for_slave_sql_error.inc
3165 STOP SLAVE;
3166
3167@@ -140,13 +139,12 @@
3168
3169 INSERT INTO t3 () VALUES(@b1,2,'Kyle, TEX'),(@b1,1,'JOE AUSTIN'),(@b1,4,'QA TESTING');
3170
3171---echo ********************************************
3172---echo *** Expect slave to fail with Error 1677 ***
3173---echo ********************************************
3174+--echo ******************************************************************
3175+--echo *** Expect slave to fail with Error ER_SLAVE_CONVERSION_FAILED ***
3176+--echo ******************************************************************
3177 connection slave;
3178---let $slave_sql_errno= 1677
3179 --let $slave_skip_counter= 2
3180---let $show_slave_sql_error= 1
3181+--let $slave_sql_errno= convert_error(ER_SLAVE_CONVERSION_FAILED)
3182 --source include/wait_for_slave_sql_error_and_skip.inc
3183
3184 --echo *** Drop t3 ***
3185@@ -183,15 +181,15 @@
3186 INSERT INTO t4 () VALUES(100.22,2,'Kyle, TEX'),(200.26,1,'JOE AUSTIN'),
3187 (30000.22,4,'QA TESTING');
3188
3189---echo ********************************************
3190---echo *** Expect slave to fail with Error 1677 ***
3191---echo ********************************************
3192+--echo ******************************************************************
3193+--echo *** Expect slave to fail with Error ER_SLAVE_CONVERSION_FAILED ***
3194+--echo ******************************************************************
3195 connection slave;
3196---let $slave_sql_errno= 1677
3197 --let $slave_skip_counter= 2
3198---let $show_slave_sql_error= 1
3199+--let $slave_sql_errno= convert_error(ER_SLAVE_CONVERSION_FAILED)
3200 --source include/wait_for_slave_sql_error_and_skip.inc
3201
3202+
3203 --echo *** Drop t4 ***
3204 connection master;
3205 DROP TABLE t4;
3206@@ -226,15 +224,15 @@
3207 INSERT INTO t5 () VALUES(1,'Kyle',200.23,1,'b1b1',23.00098),
3208 (2,'JOE',300.01,0,'b2b2',1.0000009);
3209
3210---echo ********************************************
3211---echo *** Expect slave to fail with Error 1677 ***
3212---echo ********************************************
3213+--echo ******************************************************************
3214+--echo *** Expect slave to fail with Error ER_SLAVE_CONVERSION_FAILED ***
3215+--echo ******************************************************************
3216 connection slave;
3217---let $slave_sql_errno= 1677
3218 --let $slave_skip_counter= 2
3219---let $show_slave_sql_error= 1
3220+--let $slave_sql_errno= convert_error(ER_SLAVE_CONVERSION_FAILED)
3221 --source include/wait_for_slave_sql_error_and_skip.inc
3222
3223+
3224 --echo *** Drop t5 ***
3225 connection master;
3226 DROP TABLE t5;
3227@@ -270,13 +268,13 @@
3228 INSERT INTO t6 () VALUES(1,'Kyle',200.23,1),
3229 (2,'JOE',300.01,0);
3230
3231---echo ********************************************
3232---echo *** Expect slave to fail with Error 1677 ***
3233---echo ********************************************
3234+--echo ******************************************************************
3235+--echo *** Expect slave to fail with Error ER_SLAVE_CONVERSION_FAILED ***
3236+--echo ******************************************************************
3237 connection slave;
3238---let $slave_sql_errno= 1677
3239---let $show_slave_sql_error= 1
3240---source include/wait_for_slave_sql_error.inc
3241+--let $slave_sql_errno= convert_error(ER_SLAVE_CONVERSION_FAILED)
3242+--source include/wait_for_slave_sql_error_and_skip.inc
3243+
3244
3245 --echo *** Drop t6 ***
3246 --let $rpl_only_running_threads= 1
3247@@ -474,15 +472,15 @@
3248 set @b1 = concat(@b1,@b1);
3249 INSERT INTO t10 () VALUES(1,@b1,'Kyle'),(2,@b1,'JOE'),(3,@b1,'QA');
3250
3251---echo ********************************************
3252---echo *** Expect slave to fail with Error 1677 ***
3253---echo ********************************************
3254+--echo ******************************************************************
3255+--echo *** Expect slave to fail with Error ER_SLAVE_CONVERSION_FAILED ***
3256+--echo ******************************************************************
3257 connection slave;
3258---let $slave_sql_errno= 1677
3259 --let $slave_skip_counter= 2
3260---let $show_slave_sql_error= 1
3261+--let $slave_sql_errno= convert_error(ER_SLAVE_CONVERSION_FAILED)
3262 --source include/wait_for_slave_sql_error_and_skip.inc
3263
3264+
3265 --echo *** Drop t10 ***
3266 connection master;
3267 DROP TABLE t10;
3268@@ -516,15 +514,15 @@
3269 set @b1 = concat(@b1,@b1);
3270 INSERT INTO t11 () VALUES(1,@b1,'Kyle'),(2,@b1,'JOE'),(3,@b1,'QA');
3271
3272---echo ********************************************
3273---echo *** Expect slave to fail with Error 1677 ***
3274---echo ********************************************
3275+--echo ******************************************************************
3276+--echo *** Expect slave to fail with Error ER_SLAVE_CONVERSION_FAILED ***
3277+--echo ******************************************************************
3278 connection slave;
3279---let $slave_sql_errno= 1677
3280 --let $slave_skip_counter= 2
3281---let $show_slave_sql_error= 1
3282+--let $slave_sql_errno= convert_error(ER_SLAVE_CONVERSION_FAILED)
3283 --source include/wait_for_slave_sql_error_and_skip.inc
3284
3285+
3286 --echo *** Drop t11 ***
3287 connection master;
3288 DROP TABLE t11;
3289@@ -794,15 +792,15 @@
3290 connection master;
3291 ALTER TABLE t15 ADD COLUMN c6 INT AFTER c5;
3292
3293---echo ********************************************
3294---echo *** Expect slave to fail with Error 1060 ***
3295---echo ********************************************
3296+--echo ********************************************************
3297+--echo *** Expect slave to fail with Error ER_DUP_FIELDNAME ***
3298+--echo ********************************************************
3299 connection slave;
3300---let $slave_sql_errno= 1060
3301 --let $slave_skip_counter= 1
3302---let $show_slave_sql_error= 1
3303+--let $slave_sql_errno= convert_error(ER_DUP_FIELDNAME) # 1060
3304 --source include/wait_for_slave_sql_error_and_skip.inc
3305
3306+
3307 --echo *** Try to insert in master ****
3308 connection master;
3309 INSERT INTO t15 () VALUES(5,2.00,'Replication Testing',@b1,'Buda',2);
3310@@ -903,13 +901,12 @@
3311
3312 INSERT INTO t17 () VALUES(9223372036854775807,2,'Kyle, TEX');
3313
3314---echo ********************************************
3315---echo *** Expect slave to fail with Error 1677 ***
3316---echo ********************************************
3317+--echo ******************************************************************
3318+--echo *** Expect slave to fail with Error ER_SLAVE_CONVERSION_FAILED ***
3319+--echo ******************************************************************
3320 connection slave;
3321---let $slave_sql_errno= 1677
3322 --let $slave_skip_counter= 2
3323---let $show_slave_sql_error= 1
3324+--let $slave_sql_errno= convert_error(ER_SLAVE_CONVERSION_FAILED)
3325 --source include/wait_for_slave_sql_error_and_skip.inc
3326
3327 --echo ** DROP table t17 ***
3328
3329=== modified file 'mysql-test/extra/rpl_tests/rpl_mts_crash_safe.test'
3330--- mysql-test/extra/rpl_tests/rpl_mts_crash_safe.test 2012-12-21 10:13:22 +0000
3331+++ mysql-test/extra/rpl_tests/rpl_mts_crash_safe.test 2013-11-27 10:38:56 +0000
3332@@ -31,6 +31,8 @@
3333 #
3334 # At the end, master and slave cannot diverge.
3335 ################################################################################
3336+# Clean all configuration changes after running the test.
3337+--source include/force_restart.inc
3338
3339
3340 --echo ########################################################################
3341
3342=== modified file 'mysql-test/extra/rpl_tests/rpl_row_basic.test'
3343--- mysql-test/extra/rpl_tests/rpl_row_basic.test 2012-04-12 08:43:18 +0000
3344+++ mysql-test/extra/rpl_tests/rpl_row_basic.test 2013-11-27 10:38:56 +0000
3345@@ -440,9 +440,7 @@
3346 INSERT INTO t5 VALUES (2, repeat(_utf8'a', 255), 2);
3347
3348 connection slave;
3349-# 1677 = ER_SLAVE_CONVERSION_FAILED
3350---let $slave_sql_errno= 1677
3351---let $show_slave_sql_error= 1
3352+--let $slave_sql_errno= convert_error(ER_SLAVE_CONVERSION_FAILED) # 1677
3353 --source include/wait_for_slave_sql_error.inc
3354
3355 --source include/rpl_reset.inc
3356@@ -453,9 +451,7 @@
3357 INSERT INTO t6 VALUES (2, repeat(_utf8'a', 255), 2);
3358
3359 connection slave;
3360-# 1677 = ER_SLAVE_CONVERSION_FAILED
3361---let $slave_sql_errno= 1677
3362---let $show_slave_sql_error= 1
3363+--let $slave_sql_errno= convert_error(ER_SLAVE_CONVERSION_FAILED) # 1677
3364 --source include/wait_for_slave_sql_error.inc
3365
3366 --source include/rpl_reset.inc
3367
3368=== modified file 'mysql-test/extra/rpl_tests/rpl_row_empty_imgs.test'
3369--- mysql-test/extra/rpl_tests/rpl_row_empty_imgs.test 2011-08-19 13:04:28 +0000
3370+++ mysql-test/extra/rpl_tests/rpl_row_empty_imgs.test 2013-11-27 10:38:56 +0000
3371@@ -205,7 +205,7 @@
3372
3373 SET SQL_LOG_BIN=0;
3374 call mtr.add_suppression("Slave: Can\'t find record in \'t1\' Error_code: 1032");
3375-call mtr.add_suppression("Slave SQL: Could not execute Update_rows event on table test.t1; Can.t find record in .t1.* Error_code: 1032");
3376+call mtr.add_suppression("Slave SQL: .*Could not execute Update_rows event on table test.t1; Can.t find record in .t1.* Error_code: 1032");
3377 call mtr.add_suppression("The slave coordinator and worker threads are stopped, possibly leaving data in inconsistent state");
3378
3379 SET SQL_LOG_BIN=1;
3380
3381=== modified file 'mysql-test/extra/rpl_tests/rpl_row_tabledefs.test'
3382--- mysql-test/extra/rpl_tests/rpl_row_tabledefs.test 2011-09-06 12:43:05 +0000
3383+++ mysql-test/extra/rpl_tests/rpl_row_tabledefs.test 2013-11-27 10:38:56 +0000
3384@@ -152,8 +152,7 @@
3385 call mtr.add_suppression("The slave coordinator and worker threads are stopped, possibly leaving data in inconsistent state");
3386
3387 --let $slave_skip_counter= 2
3388---let $slave_sql_errno= 1677
3389---let $show_slave_sql_error= 1
3390+--let $slave_sql_errno= convert_error(ER_SLAVE_CONVERSION_FAILED) # 1677
3391 --source include/wait_for_slave_sql_error_and_skip.inc
3392
3393 connection master;
3394@@ -164,8 +163,7 @@
3395 INSERT INTO t5 VALUES (5,10,25);
3396 connection slave;
3397 --let $slave_skip_counter= 2
3398---let $slave_sql_errno= 1677
3399---let $show_slave_sql_error= 1
3400+--let $slave_sql_errno= convert_error(ER_SLAVE_CONVERSION_FAILED) # 1677
3401 --source include/wait_for_slave_sql_error_and_skip.inc
3402
3403 connection master;
3404@@ -176,8 +174,7 @@
3405 INSERT INTO t6 VALUES (6,12,36);
3406 connection slave;
3407 --let $slave_skip_counter= 2
3408---let $slave_sql_errno= 1677
3409---let $show_slave_sql_error= 1
3410+--let $slave_sql_errno= convert_error(ER_SLAVE_CONVERSION_FAILED) # 1677
3411 --source include/wait_for_slave_sql_error_and_skip.inc
3412
3413 connection master;
3414
3415=== added file 'mysql-test/extra/rpl_tests/rpl_stress_test.inc'
3416--- mysql-test/extra/rpl_tests/rpl_stress_test.inc 1970-01-01 00:00:00 +0000
3417+++ mysql-test/extra/rpl_tests/rpl_stress_test.inc 2013-11-27 10:38:56 +0000
3418@@ -0,0 +1,111 @@
3419+################################################################################
3420+# Build connections to master server
3421+# Stress test that execute massive queries on every connection
3422+#
3423+# ################################################################################
3424+--connection master
3425+--disable_query_log
3426+--disable_result_log
3427+--let $n= $connections
3428+--let $i= 1
3429+while ($i < $n)
3430+{
3431+ --eval CREATE TABLE t$i(c1 INT) ENGINE= $engine;
3432+ --inc $i
3433+}
3434+--enable_result_log
3435+--enable_query_log
3436+
3437+--sync_slave_with_master
3438+
3439+--echo # Build connections to master server
3440+--disable_query_log
3441+--disable_result_log
3442+--let $i= 1
3443+while ($i < $n)
3444+{
3445+ --connect(con$i,127.0.0.1,root,,test,$MASTER_MYPORT,)
3446+ --inc $i
3447+}
3448+--let $i= 1
3449+while ($i < $connections)
3450+{
3451+ --connection con$i
3452+ set session debug="+d,simulate_binlog_flush_error";
3453+ --inc $i
3454+}
3455+--enable_result_log
3456+--enable_query_log
3457+
3458+--echo # Stress test that execute massive queries on every connection
3459+--let $m= $loops
3460+--let $j= 1
3461+--disable_query_log
3462+--disable_result_log
3463+while ($j < $m)
3464+{
3465+ # Execute INSERT statement on these connections in parallel
3466+ --let $i= 1
3467+ while ($i < $n)
3468+ {
3469+ --connection con$i
3470+ --send
3471+ --eval INSERT INTO t$i VALUES(2)
3472+ --inc $i
3473+ }
3474+ # reap on every connection
3475+ --let $i= 1
3476+ while ($i < $n)
3477+ {
3478+ --connection con$i
3479+ --reap
3480+ --inc $i
3481+ }
3482+ --inc $j
3483+}
3484+
3485+--let $i= 1
3486+while ($i < $connections)
3487+{
3488+ --connection con$i
3489+ set session debug="-d,simulate_binlog_flush_error";
3490+ --inc $i
3491+}
3492+--enable_result_log
3493+--enable_query_log
3494+
3495+--let $slave_timeout= 3600
3496+if ($enable_diff_table)
3497+{
3498+--source include/sync_slave_sql_with_master.inc
3499+ --echo # Test if the results are consistent on master and slave
3500+ --let $i= 1
3501+ while ($i < $n)
3502+ {
3503+ --let $diff_tables= master:t$i, slave:t$i
3504+ --source include/diff_tables.inc
3505+ --inc $i
3506+ }
3507+}
3508+
3509+# clean up
3510+--connection master
3511+--disable_query_log
3512+--disable_result_log
3513+# disconnect connections
3514+--let $i= 1
3515+while ($i < $n)
3516+{
3517+ --disconnect con$i
3518+ --inc $i
3519+}
3520+# drop tables
3521+--let $i= 1
3522+while ($i < $n)
3523+{
3524+ --eval DROP TABLE t$i
3525+ --inc $i
3526+}
3527+--enable_result_log
3528+--enable_query_log
3529+--source include/sync_slave_sql_with_master.inc
3530
3531=== modified file 'mysql-test/include/default_mysqld.cnf'
3532--- mysql-test/include/default_mysqld.cnf 2013-02-26 05:45:28 +0000
3533+++ mysql-test/include/default_mysqld.cnf 2013-11-27 10:38:56 +0000
3534@@ -1,4 +1,4 @@
3535-# Copyright (c) 2007, 2012, Oracle and/or its affiliates. All rights reserved.
3536+# Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved.
3537 #
3538 # This program is free software; you can redistribute it and/or modify
3539 # it under the terms of the GNU General Public License as published by
3540@@ -25,7 +25,7 @@
3541
3542 log-bin-trust-function-creators=1
3543 key_buffer_size= 1M
3544-sort_buffer= 256K
3545+sort_buffer_size= 256K
3546 max_heap_table_size= 1M
3547
3548 loose-innodb_data_file_path= ibdata1:10M:autoextend
3549
3550=== modified file 'mysql-test/include/explain_json.inc'
3551--- mysql-test/include/explain_json.inc 2012-08-23 07:45:33 +0000
3552+++ mysql-test/include/explain_json.inc 2013-11-27 10:38:56 +0000
3553@@ -320,7 +320,7 @@
3554 (4,1), (4,1), (4,1), (4,1),
3555 (2,1), (2,1);
3556
3557-EXPLAIN FORMAT=JSON SELECT DISTINCT SUM(b) FROM t1 GROUP BY a WITH ROLLUP;
3558+EXPLAIN FORMAT=JSON SELECT SUM(b) FROM t1 GROUP BY a WITH ROLLUP;
3559
3560 DROP TABLE t1;
3561
3562
3563=== modified file 'mysql-test/include/handler.inc'
3564--- mysql-test/include/handler.inc 2012-05-09 15:11:24 +0000
3565+++ mysql-test/include/handler.inc 2013-11-27 10:38:56 +0000
3566@@ -1090,8 +1090,7 @@
3567 connection default;
3568 --echo #
3569 --echo # Demonstrate that HANDLER locks and transaction locks
3570---echo # reside in the same context, and we don't back-off
3571---echo # when have transaction or handler locks.
3572+--echo # reside in the same context.
3573 --echo #
3574 create table t1 (a int, key a (a));
3575 insert into t1 (a) values (1), (2), (3), (4), (5);
3576@@ -1112,9 +1111,9 @@
3577 --source include/wait_condition.inc
3578 --echo # --> connection default
3579 connection default;
3580+--echo # We back-off on hitting deadlock condition.
3581 --error ER_LOCK_DEADLOCK
3582 handler t0 open;
3583---error ER_LOCK_DEADLOCK
3584 select * from t0;
3585 handler t1 open;
3586 commit;
3587
3588=== added file 'mysql-test/include/have_daemon_example_plugin.inc'
3589--- mysql-test/include/have_daemon_example_plugin.inc 1970-01-01 00:00:00 +0000
3590+++ mysql-test/include/have_daemon_example_plugin.inc 2013-11-27 10:38:56 +0000
3591@@ -0,0 +1,16 @@
3592+disable_query_log;
3593+#
3594+# Check if server has support for loading plugins
3595+#
3596+if (`SELECT @@have_dynamic_loading != 'YES'`) {
3597+ --skip daemon example plugin requires dynamic loading
3598+}
3599+
3600+#
3601+# Check if the variable DAEMONEXAMPLE is set
3602+#
3603+if (!$DAEMONEXAMPLE) {
3604+ --skip daemon_example plugin requires the environment variable \$DAEMONEXAMPLE to be set (normally done by mtr)
3605+}
3606+
3607+enable_query_log;
3608
3609=== modified file 'mysql-test/include/have_perfschema.inc'
3610--- mysql-test/include/have_perfschema.inc 2010-01-07 05:42:07 +0000
3611+++ mysql-test/include/have_perfschema.inc 2013-11-27 10:38:56 +0000
3612@@ -11,7 +11,7 @@
3613 #
3614 # You should have received a copy of the GNU General Public License
3615 # along with this program; if not, write to the Free Software
3616-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
3617+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
3618
3619 if (!`SELECT count(*) FROM information_schema.engines WHERE
3620 (support = 'YES' OR support = 'DEFAULT') AND
3621
3622=== modified file 'mysql-test/include/have_plugin_auth.inc'
3623--- mysql-test/include/have_plugin_auth.inc 2011-03-18 09:31:39 +0000
3624+++ mysql-test/include/have_plugin_auth.inc 2013-11-27 10:38:56 +0000
3625@@ -1,5 +1,4 @@
3626-disable_query_log;
3627---require r/true.require
3628-select (PLUGIN_LIBRARY LIKE 'auth_test_plugin%') as `TRUE` FROM INFORMATION_SCHEMA.PLUGINS
3629- WHERE PLUGIN_NAME='test_plugin_server';
3630-enable_query_log;
3631+if (!`select count(*) FROM INFORMATION_SCHEMA.PLUGINS WHERE PLUGIN_NAME='test_plugin_server' and PLUGIN_LIBRARY LIKE 'auth_test_plugin%'`) {
3632+ --skip Need the plugin test_plugin_server
3633+}
3634+
3635
3636=== modified file 'mysql-test/include/have_plugin_interface.inc'
3637--- mysql-test/include/have_plugin_interface.inc 2010-10-20 14:56:09 +0000
3638+++ mysql-test/include/have_plugin_interface.inc 2013-11-27 10:38:56 +0000
3639@@ -1,5 +1,4 @@
3640---disable_query_log
3641---require r/true.require
3642-select (PLUGIN_LIBRARY LIKE 'qa_auth_interface%') as `TRUE` FROM INFORMATION_SCHEMA.PLUGINS
3643- WHERE PLUGIN_NAME='qa_auth_interface';
3644---enable_query_log
3645+if (!`select count(*) FROM INFORMATION_SCHEMA.PLUGINS WHERE PLUGIN_NAME='qa_auth_interface' and PLUGIN_LIBRARY LIKE 'qa_auth_interface%'`) {
3646+ --skip Need the plugin qa_auth_interface
3647+}
3648+
3649
3650=== modified file 'mysql-test/include/have_plugin_server.inc'
3651--- mysql-test/include/have_plugin_server.inc 2010-10-20 14:56:09 +0000
3652+++ mysql-test/include/have_plugin_server.inc 2013-11-27 10:38:56 +0000
3653@@ -1,5 +1,4 @@
3654---disable_query_log
3655---require r/true.require
3656-select (PLUGIN_LIBRARY LIKE 'qa_auth_server%') as `TRUE` FROM INFORMATION_SCHEMA.PLUGINS
3657- WHERE PLUGIN_NAME='qa_auth_server';
3658---enable_query_log
3659+if (!`select count(*) FROM INFORMATION_SCHEMA.PLUGINS WHERE PLUGIN_NAME='qa_auth_server' and PLUGIN_LIBRARY LIKE 'qa_auth_server%'`) {
3660+ --skip Need the plugin qa_auth_server
3661+}
3662+
3663
3664=== added file 'mysql-test/include/have_valgrind.inc'
3665--- mysql-test/include/have_valgrind.inc 1970-01-01 00:00:00 +0000
3666+++ mysql-test/include/have_valgrind.inc 2013-11-27 10:38:56 +0000
3667@@ -0,0 +1,11 @@
3668+# include/have_valgrind.inc
3669+#
3670+# If some test should be run with only valgrind then skip it while running test
3671+# without it.
3672+#
3673+
3674+if (!$VALGRIND_TEST) {
3675+ --skip Need "--valgrind"
3676+}
3677+
3678+
3679
3680=== added file 'mysql-test/include/index_merge_delete.inc'
3681--- mysql-test/include/index_merge_delete.inc 1970-01-01 00:00:00 +0000
3682+++ mysql-test/include/index_merge_delete.inc 2013-11-27 10:38:56 +0000
3683@@ -0,0 +1,215 @@
3684+#
3685+# DELETE Statements
3686+#
3687+
3688+# The include file works as intended only when index_merge_single_col_setup.inc
3689+# or index_merge_multi_col_setup.inc is used. The table t1 set-up is done in
3690+# these two include files.
3691+
3692+--disable_warnings
3693+DROP TABLE IF EXISTS t2;
3694+--enable_warnings
3695+
3696+CREATE TABLE t2 LIKE t1;
3697+INSERT INTO t2 SELECT * FROM t1;
3698+ANALYZE TABLE t2;
3699+
3700+#1. SQL statments with various combinations of comparison operators
3701+
3702+# union and sort_union
3703+
3704+--let $query = FROM t1 WHERE key1=25 OR key4=10
3705+--replace_column 9 #
3706+--eval EXPLAIN DELETE $query
3707+--eval SELECT COUNT(*) $query
3708+--eval DELETE $query
3709+--eval SELECT COUNT(*) $query
3710+
3711+--let $query = FROM t1 WHERE key1=48 OR key4=2 OR key6=3
3712+--replace_column 9 #
3713+--eval EXPLAIN DELETE $query
3714+--eval SELECT COUNT(*) $query
3715+--eval DELETE $query
3716+--eval SELECT COUNT(*) $query
3717+
3718+--let $query = FROM t1 WHERE key3=1025 OR key5 IS NULL
3719+--replace_column 9 #
3720+--eval EXPLAIN DELETE $query
3721+--eval SELECT COUNT(*) $query
3722+--eval DELETE $query
3723+--eval SELECT COUNT(*) $query
3724+
3725+--let $query = FROM t1 WHERE key3=45 OR key1=6 OR key6 IS NULL
3726+--replace_column 9 #
3727+--eval EXPLAIN DELETE $query
3728+--eval SELECT COUNT(*) $query
3729+--eval DELETE $query
3730+--eval SELECT COUNT(*) $query
3731+
3732+--let $query = FROM t1 WHERE (key4=42 AND key6 IS NOT NULL) OR (key1=4 AND key3=6)
3733+--replace_column 9 #
3734+--eval EXPLAIN DELETE $query
3735+--eval SELECT COUNT(*) $query
3736+--eval DELETE $query
3737+--eval SELECT COUNT(*) $query
3738+
3739+INSERT INTO t1 VALUES (42,42,42,42,3,3,3,3),(4,4,6,6,6,6,4,4);
3740+--let $query = FROM t1 WHERE (key4=42 AND key6=3) OR (key1=4 AND key3=6)
3741+--replace_column 9 #
3742+--eval EXPLAIN DELETE $query
3743+--eval SELECT COUNT(*) $query
3744+--eval DELETE $query
3745+--eval SELECT COUNT(*) $query
3746+
3747+INSERT INTO t1 VALUES (42,42,42,42,3,3,3,3),(4,4,6,6,6,6,4,4);
3748+--let $query = FROM t1 WHERE (key4=42 AND key6=3) OR (key1=4 AND key3=6) AND key5<>50
3749+--replace_column 9 #
3750+--eval EXPLAIN DELETE $query
3751+--eval SELECT COUNT(*) $query
3752+--eval DELETE $query
3753+--eval SELECT COUNT(*) $query
3754+
3755+--let $query = FROM t1 WHERE key1<2 OR key2<3
3756+--replace_result "i1,i2" "i2,i1"
3757+--replace_column 9 #
3758+--eval EXPLAIN DELETE $query
3759+--eval SELECT COUNT(*) $query
3760+--eval DELETE $query
3761+--eval SELECT COUNT(*) $query
3762+
3763+--let $query = FROM t1 WHERE key1<5 OR key3<7
3764+--replace_result "i1,i3" "i3,i1"
3765+--replace_column 9 #
3766+--eval EXPLAIN DELETE $query
3767+--eval SELECT COUNT(*) $query
3768+--eval DELETE $query
3769+--eval SELECT COUNT(*) $query
3770+
3771+INSERT INTO t1 VALUES (10,10,10,10,10,10,10,10),(3,3,3,3,3,3,3,3);
3772+--let $query = FROM t1 WHERE key2=10 OR key3=3 OR key4 IS NULL
3773+--replace_column 9 #
3774+--eval EXPLAIN DELETE $query
3775+--eval SELECT COUNT(*) $query
3776+--eval DELETE $query
3777+--eval SELECT COUNT(*) $query
3778+
3779+INSERT INTO t1 VALUES (10,10,10,10,10,10,10,10),(3,3,3,3,3,3,3,3);
3780+--let $query = FROM t1 WHERE key2=10 OR key3=3 OR key4 <=> null
3781+--replace_column 9 #
3782+--eval EXPLAIN DELETE $query
3783+--eval SELECT COUNT(*) $query
3784+--eval DELETE $query
3785+--eval SELECT COUNT(*) $query
3786+
3787+--let $query = FROM t1 WHERE (key1>30 AND key1<35) OR (key2>32 AND key2<40)
3788+--replace_column 9 #
3789+--eval EXPLAIN DELETE $query
3790+--eval SELECT COUNT(*) $query
3791+--eval DELETE $query
3792+--eval SELECT COUNT(*) $query
3793+
3794+--let $query = FROM t1 WHERE key1 BETWEEN 30 AND 35 OR key2 BETWEEN 32 AND 40
3795+--replace_column 9 #
3796+--eval EXPLAIN DELETE $query
3797+--eval SELECT COUNT(*) $query
3798+--eval DELETE $query
3799+--eval SELECT COUNT(*) $query
3800+
3801+--let $query = FROM t1 WHERE (key1>30 AND key1<35) OR (key2>32 AND key2<40) OR (key3>20 AND key3<45)
3802+--replace_column 9 #
3803+--eval EXPLAIN DELETE $query
3804+--eval SELECT COUNT(*) $query
3805+--eval DELETE $query
3806+--eval SELECT COUNT(*) $query
3807+
3808+--let $query = FROM t1 WHERE key1 BETWEEN 30 AND 35 OR key2 BETWEEN 32 AND 40 OR key3 BETWEEN 20 AND 45
3809+--replace_column 9 #
3810+--eval EXPLAIN DELETE $query
3811+--eval SELECT COUNT(*) $query
3812+--eval DELETE $query
3813+--eval SELECT COUNT(*) $query
3814+
3815+INSERT INTO t1 VALUES (1,1,1,1,1,1,1,1),(2,2,2,2,2,2,2,2),(3,3,3,3,3,3,3,3),(4,4,4,4,4,4,4,4);
3816+--let $query = FROM t1 WHERE ((key3<4 OR key5<3) AND (key1<3 OR key2<3)) OR (((key3<5 AND key6<5) OR key5<2) AND (key5<4 OR key6<4))
3817+--replace_column 9 #
3818+--eval EXPLAIN DELETE $query
3819+--eval SELECT COUNT(*) $query
3820+--eval DELETE $query
3821+--eval SELECT COUNT(*) $query
3822+
3823+--let $query = FROM t1 WHERE (key4<42 AND key6 IS NOT NULL) OR (key1>4 AND key5 IS NULL) AND key2<>50
3824+--replace_column 9 #
3825+--eval EXPLAIN DELETE $query
3826+--eval SELECT COUNT(*) $query
3827+--eval DELETE $query
3828+--eval SELECT COUNT(*) $query
3829+
3830+--let $query = FROM t1 WHERE (key5 IN (15,70) OR key6 IN (15,70))
3831+--replace_column 9 #
3832+--eval EXPLAIN DELETE $query
3833+--eval SELECT COUNT(*) $query
3834+--eval DELETE $query
3835+--eval SELECT COUNT(*) $query
3836+
3837+#2. Statements with ORDER BY
3838+
3839+INSERT INTO t1 VALUES (1,1,1,1,1,1,1,1),(2,2,2,2,2,2,2,2),(3,3,3,3,3,3,3,3);
3840+--let $query = FROM t1 WHERE key1<2 OR key2<3 ORDER BY key1
3841+--replace_column 9 #
3842+--eval EXPLAIN DELETE $query
3843+--eval SELECT COUNT(*) $query
3844+--eval DELETE $query
3845+--eval SELECT COUNT(*) $query
3846+
3847+#3. Multi table SQL statements
3848+
3849+--let $query = FROM t1 USING t1 INNER JOIN t2 ON (t2.key1=t2.key1) WHERE t1.key1=3 OR t1.key2=4
3850+--replace_column 9 #
3851+--eval EXPLAIN DELETE $query
3852+SELECT COUNT(*) FROM t1;
3853+--eval DELETE $query
3854+SELECT COUNT(*) FROM t1;
3855+
3856+# Statements with subqueries
3857+
3858+--let $query1 = FROM t2 WHERE key6 = (SELECT key6 FROM t1 WHERE key1=10 OR key5=3 OR key2 IS NULL)
3859+--let $query2 = key3=28 OR key4=10
3860+--replace_column 9 #
3861+--eval EXPLAIN DELETE $query1 OR $query2
3862+--eval SELECT COUNT(*) $query1 OR $query2
3863+--eval DELETE $query1 OR $query2
3864+--eval SELECT COUNT(*) $query1 OR $query2
3865+
3866+--let $query3 = key1 < ANY (SELECT key1 FROM t1 WHERE key1<5 OR key4<7)
3867+--let $query2 = key4 < SOME (SELECT key4 FROM t1 WHERE key1<5 OR key4<8)
3868+--let $query1 = FROM t2 WHERE key1=25 OR key4=40
3869+--replace_column 9 #
3870+--eval EXPLAIN DELETE $query1 AND ($query2 OR $query3)
3871+--eval SELECT COUNT(*) $query1 AND ($query2 OR $query3)
3872+--eval DELETE $query1 AND ($query2 OR $query3)
3873+--eval SELECT COUNT(*) $query1 AND ($query2 OR $query3)
3874+
3875+INSERT INTO t1 VALUES (2,2,2,2,2,2,2,2),(5,5,5,5,5,5,5,5);
3876+--let $query = FROM t2 WHERE EXISTS (SELECT * FROM t1 WHERE key1<5 OR key3<7)
3877+--replace_column 9 #
3878+--eval EXPLAIN DELETE $query
3879+--eval SELECT COUNT(*) $query
3880+--eval DELETE $query
3881+--eval SELECT COUNT(*) $query
3882+
3883+# The following statement uses index_merge optimization only when the table is
3884+# created with multi column setup.
3885+
3886+INSERT INTO t1 VALUES ( 3,3,3,3,3,3,3,3 ),(4,4,4,4,4,4,4,4);
3887+--let $query = FROM t1 WHERE key7 = 3 OR key8 = 4
3888+--replace_column 9 #
3889+--eval EXPLAIN DELETE $query
3890+--eval SELECT COUNT(*) $query
3891+--eval DELETE $query
3892+--eval SELECT COUNT(*) $query
3893+
3894+#
3895+# end of DELETE statements
3896+#
3897+
3898+
3899
3900=== added file 'mysql-test/include/index_merge_insert-and-replace.inc'
3901--- mysql-test/include/index_merge_insert-and-replace.inc 1970-01-01 00:00:00 +0000
3902+++ mysql-test/include/index_merge_insert-and-replace.inc 2013-11-27 10:38:56 +0000
3903@@ -0,0 +1,137 @@
3904+#
3905+# INSERT and REPLACE using index_merge optimization
3906+#
3907+
3908+# The include file works as intended only when index_merge_single_col_setup.inc
3909+# or index_merge_multi_col_setup.inc is used. The table t1 set-up is done in
3910+# these two include files.
3911+
3912+--disable_warnings
3913+DROP TABLE IF EXISTS t2;
3914+--enable_warnings
3915+
3916+CREATE TABLE t2 LIKE t1;
3917+
3918+let $i=10;
3919+while ($i)
3920+{
3921+ INSERT INTO t2 VALUES (rand()*6, rand()*6, rand()*6, rand()*6,
3922+ rand()*6, rand()*6, rand()*6, rand()*6);
3923+ dec $i;
3924+}
3925+
3926+ANALYZE TABLE t2;
3927+
3928+# intersect optimization technique test cases for non-selects
3929+# are in a separate file(index_merge_intersect_dml.inc)
3930+# due to different table requirements.
3931+
3932+#
3933+# REPLACE
3934+#
3935+
3936+# union
3937+
3938+--let $query = INTO t2 SELECT * FROM t1 WHERE key3=1025 OR key5 IS NULL
3939+--replace_column 9 #
3940+--eval EXPLAIN REPLACE $query
3941+--eval SELECT COUNT(*) FROM t2
3942+--eval REPLACE $query
3943+--eval SELECT COUNT(*) FROM t2
3944+
3945+--let $query = INTO t2 SELECT * FROM t1 WHERE key1=48 OR key4=2 OR key6=3
3946+--replace_column 9 #
3947+--eval EXPLAIN REPLACE $query
3948+--eval SELECT COUNT(*) FROM t2
3949+--eval REPLACE $query
3950+--eval SELECT COUNT(*) FROM t2
3951+
3952+# sort_union
3953+
3954+--let $query = INTO t2 SELECT * FROM t1 WHERE key1<2 OR key2<3
3955+--replace_column 9 #
3956+--eval EXPLAIN REPLACE $query
3957+--eval SELECT COUNT(*) FROM t2
3958+--eval REPLACE $query
3959+--eval SELECT COUNT(*) FROM t2
3960+
3961+--let $query = INTO t2 SELECT * FROM t1 WHERE (key1>30 AND key1<35) OR (key2>32 AND key2<40)
3962+--replace_column 9 #
3963+--eval EXPLAIN REPLACE $query
3964+--eval SELECT COUNT(*) FROM t2
3965+--eval REPLACE $query
3966+--eval SELECT COUNT(*) FROM t2
3967+
3968+# statements with use/force/ignore index
3969+
3970+--let $query = INTO t2 SELECT * FROM t1 IGNORE INDEX(i2) WHERE key1<2 OR key2<3
3971+--replace_column 9 #
3972+--eval EXPLAIN REPLACE $query
3973+--eval SELECT COUNT(*) FROM t2
3974+--eval REPLACE $query
3975+--eval SELECT COUNT(*) FROM t2
3976+
3977+INSERT INTO t1 VALUES (42,42,42,42,3,3,3,3),(4,4,6,6,6,6,4,4);
3978+--let $query = INTO t2 SELECT * FROM t1 USE INDEX(i6,i3) WHERE (key4=42 AND key6=3) OR (key1=4 AND key3=6)
3979+--replace_column 9 #
3980+--eval EXPLAIN REPLACE $query
3981+--eval SELECT COUNT(*) FROM t2
3982+--eval REPLACE $query
3983+--eval SELECT COUNT(*) FROM t2
3984+
3985+--let $query = INTO t2 SELECT * FROM t1 FORCE INDEX(i1,i2) WHERE (key1>1 OR key2>2)
3986+--replace_column 9 #
3987+--eval EXPLAIN REPLACE $query
3988+--eval SELECT COUNT(*) FROM t2
3989+--eval REPLACE $query
3990+--eval SELECT COUNT(*) FROM t2
3991+
3992+#
3993+# INSERT
3994+#
3995+
3996+# union
3997+
3998+INSERT INTO t1 VALUES (42,42,42,42,3,3,3,3),(4,4,6,6,6,6,4,4);
3999+--let $query = INTO t2 SELECT * FROM t1 WHERE (key4=42 AND key6=3) OR (key1=4 AND key3=6) AND key5<>50
4000+--replace_column 9 #
4001+--eval EXPLAIN INSERT $query
4002+--eval SELECT COUNT(*) FROM t2
4003+--eval INSERT $query
4004+--eval SELECT COUNT(*) FROM t2
4005+
4006+# sort_union
4007+
4008+--let $query = INTO t2 SELECT * FROM t1 WHERE key2=10 OR key3=3 OR key4 <=> null
4009+--replace_column 9 #
4010+--eval EXPLAIN INSERT $query
4011+--eval SELECT COUNT(*) FROM t2
4012+--eval INSERT $query
4013+--eval SELECT COUNT(*) FROM t2
4014+
4015+# statements with use/force/ignore index
4016+
4017+--let $query = INTO t2 SELECT * FROM t1 IGNORE INDEX(i1) WHERE key1<2 OR key2<3
4018+--replace_column 9 #
4019+--eval EXPLAIN INSERT $query
4020+--eval SELECT COUNT(*) FROM t2
4021+--eval INSERT $query
4022+--eval SELECT COUNT(*) FROM t2
4023+
4024+--let $query = INTO t2 SELECT * FROM t1 USE INDEX(i5,i6) WHERE (key1<2 OR key2<2) AND (key3<3 OR key4<3) AND (key5<5 OR key6<5);
4025+--replace_column 9 #
4026+--eval EXPLAIN INSERT $query
4027+--eval SELECT COUNT(*) FROM t2
4028+--eval INSERT $query
4029+--eval SELECT COUNT(*) FROM t2
4030+
4031+--let $query = INTO t2 SELECT * FROM t1 FORCE INDEX(i4,i5) WHERE (key4>3 OR key5>5)
4032+--replace_column 9 #
4033+--eval EXPLAIN INSERT $query
4034+--eval SELECT COUNT(*) FROM t2
4035+--eval INSERT $query
4036+--eval SELECT COUNT(*) FROM t2
4037+
4038+#
4039+# end
4040+#
4041
4042=== added file 'mysql-test/include/index_merge_intersect_dml.inc'
4043--- mysql-test/include/index_merge_intersect_dml.inc 1970-01-01 00:00:00 +0000
4044+++ mysql-test/include/index_merge_intersect_dml.inc 2013-11-27 10:38:56 +0000
4045@@ -0,0 +1,197 @@
4046+#
4047+# index_merge tests for statements using intersect algorithm
4048+#
4049+
4050+--disable_warnings
4051+DROP TABLE IF EXISTS t1,t2;
4052+--enable_warnings
4053+
4054+CREATE TABLE t1 (
4055+ pk MEDIUMINT NOT NULL AUTO_INCREMENT,
4056+ a INT NOT NULL,
4057+ b INT NOT NULL,
4058+ c INT NOT NULL,
4059+ d INT NOT NULL,
4060+ PRIMARY KEY pk (pk),
4061+ KEY idx_a (a),
4062+ KEY idx_b (b),
4063+ KEY idx_c (c),
4064+ KEY idx_d (d)
4065+);
4066+
4067+--disable_query_log
4068+
4069+# Inserting a lot of rows inorder to enable index_merge intersect
4070+
4071+INSERT INTO t1(a,b,c,d) VALUES
4072+ ( RAND()*5, RAND()*5, RAND()*5, RAND()*5 );
4073+
4074+let $cnt=4;
4075+while ($cnt)
4076+{
4077+ INSERT INTO t1(a,b,c,d) SELECT 6,6,6,6 FROM t1;
4078+ dec $cnt;
4079+}
4080+
4081+INSERT INTO t1(a,b,c,d) SELECT 6, RAND()*5, RAND()*5,
4082+ RAND()*5 FROM t1 LIMIT 3;
4083+INSERT INTO t1(a,b,c,d) SELECT RAND()*5, 6, RAND()*5,
4084+ RAND()*5 FROM t1 LIMIT 3;
4085+INSERT INTO t1(a,b,c,d) SELECT RAND()*5, RAND()*5, 6,
4086+ RAND()*5 FROM t1 LIMIT 3;
4087+INSERT INTO t1(a,b,c,d) SELECT RAND()*5, RAND()*5,
4088+ RAND()*5, 6 FROM t1 LIMIT 3;
4089+
4090+let $cnt=7;
4091+while ($cnt)
4092+{
4093+ INSERT INTO t1(a,b,c,d) SELECT RAND()*5, RAND()*5,
4094+ RAND()*5, RAND()*5 FROM t1;
4095+ dec $cnt;
4096+}
4097+
4098+--enable_query_log
4099+
4100+# The following statement analyzes and
4101+# stores the key distribution for a table.
4102+
4103+ANALYZE TABLE t1;
4104+
4105+# DELETEs are not included as index merge intersection
4106+# is disabled for DELETE statements.
4107+
4108+# 1. UPDATE
4109+
4110+--let $query = WHERE b=6 AND c=6
4111+--replace_result "idx_c,idx_b" "idx_b,idx_c"
4112+--replace_column 9 #
4113+--eval EXPLAIN UPDATE t1 SET a=2 $query
4114+--eval SELECT COUNT(*), SUM(a) FROM t1 $query
4115+--eval UPDATE t1 SET a=2 $query
4116+--eval SELECT COUNT(*), SUM(a) FROM t1 $query
4117+
4118+--let $query = WHERE b=6 AND c=6 AND d=6
4119+--replace_result idx_b idx_x idx_c idx_x idx_d idx_x
4120+--replace_column 9 #
4121+--eval EXPLAIN UPDATE t1 SET a=2 $query
4122+--eval SELECT COUNT(*), SUM(a) FROM t1 $query
4123+--eval UPDATE t1 SET a=2 $query
4124+--eval SELECT COUNT(*), SUM(a) FROM t1 $query
4125+
4126+--let $query = WHERE d=6 AND a IS NOT NULL AND b=6
4127+--replace_result "idx_d,idx_b" "idx_b,idx_d"
4128+--replace_column 9 #
4129+--eval EXPLAIN UPDATE t1 SET c=6 $query
4130+--eval SELECT COUNT(*), SUM(c) FROM t1 $query
4131+--eval UPDATE t1 SET c=6 $query
4132+--eval SELECT COUNT(*), SUM(c) FROM t1 $query
4133+
4134+--let $query = WHERE d=6 AND a=6 AND c <> 6
4135+--replace_column 9 #
4136+--eval EXPLAIN UPDATE t1 SET b=0 $query
4137+--eval SELECT COUNT(*), SUM(b) FROM t1 $query
4138+--eval UPDATE t1 SET b=0 $query
4139+--eval SELECT COUNT(*), SUM(b) FROM t1 $query
4140+
4141+--let $query = WHERE d=6 AND a=6 AND c IN (1,2,3,4,5)
4142+--replace_column 9 #
4143+--eval EXPLAIN UPDATE t1 SET a=100 $query
4144+--eval SELECT COUNT(*), SUM(a) FROM t1 $query
4145+--eval UPDATE t1 SET a=100 $query
4146+--eval SELECT COUNT(*), SUM(a) FROM t1 $query
4147+
4148+# uses range scan instead of index_merge
4149+
4150+--let $query = WHERE a=5 AND b=4 AND d<3
4151+--replace_column 9 #
4152+--eval EXPLAIN UPDATE t1 SET a=2 $query
4153+--eval UPDATE t1 SET a=2 $query
4154+
4155+# Any range condition over a primary key of an InnoDB table.
4156+
4157+create table t2 (
4158+ pk MEDIUMINT NOT NULL AUTO_INCREMENT,
4159+ a INT NOT NULL,
4160+ b INT NOT NULL,
4161+ c INT NOT NULL,
4162+ d INT NOT NULL,
4163+ PRIMARY KEY pk (pk),
4164+ KEY idx_a (a),
4165+ KEY idx_b (b),
4166+ KEY idx_c (c),
4167+ KEY idx_d (d)
4168+)engine=InnoDB;
4169+
4170+INSERT INTO t2 SELECT * FROM t1;
4171+ANALYZE TABLE t2;
4172+
4173+--let $query = WHERE pk<2492 AND d=1
4174+--replace_column 9 #
4175+--eval EXPLAIN UPDATE t2 SET a=2 $query
4176+--eval UPDATE t2 SET a=2 $query
4177+
4178+# 2. REPLACE and INSERT
4179+
4180+CREATE TABLE t3(
4181+ a INT NOT NULL,
4182+ b INT NOT NULL,
4183+ c INT NOT NULL,
4184+ d INT NOT NULL,
4185+ e INT
4186+);
4187+
4188+INSERT INTO t3(a,b,c,d,e) VALUES (3890,3890,3890,3890,3890);
4189+INSERT INTO t3(a,b,c,d,e) VALUES (4000,4000,4000,4000,4000);
4190+
4191+--let $query = INTO t3 SELECT * FROM t1 WHERE b=6 AND c=6
4192+--replace_result "idx_c,idx_b" "idx_b,idx_c"
4193+--replace_column 9 #
4194+--eval EXPLAIN REPLACE $query
4195+--eval SELECT COUNT(*) FROM t3
4196+--eval REPLACE $query
4197+--eval SELECT COUNT(*) FROM t3
4198+
4199+--let $query = INTO t3 SELECT * FROM t1 WHERE d=6 AND a IS NOT NULL AND b=6
4200+--replace_column 9 #
4201+--replace_result "idx_d,idx_b" "idx_b,idx_d"
4202+--eval EXPLAIN INSERT $query
4203+--eval SELECT COUNT(*) FROM t3
4204+--eval INSERT $query
4205+--eval SELECT COUNT(*) FROM t3
4206+
4207+# Test case for multi column set-up.
4208+
4209+CREATE TABLE t4 (
4210+ pk MEDIUMINT NOT NULL AUTO_INCREMENT,
4211+ a INT NOT NULL,
4212+ b INT NOT NULL,
4213+ c INT NOT NULL,
4214+ d INT NOT NULL,
4215+ PRIMARY KEY pk (pk),
4216+ KEY idx_cd (c,d),
4217+ KEY idx_bd (b,d)
4218+);
4219+
4220+INSERT INTO t4 SELECT * FROM t1;
4221+
4222+# The following statement analyzes and
4223+# stores the key distribution for a table.
4224+
4225+ANALYZE TABLE t4;
4226+
4227+--let $query = WHERE b=6 AND c=6 AND d=6
4228+--replace_result idx_b idx_x idx_c idx_x idx_d idx_x
4229+--replace_column 9 #
4230+--eval EXPLAIN UPDATE t4 SET a=2 $query
4231+--eval SELECT COUNT(*), SUM(a) FROM t4 $query
4232+--eval UPDATE t4 SET a=2 $query
4233+--eval SELECT COUNT(*), SUM(a) FROM t4 $query
4234+
4235+DROP TABLE t1,t2,t3,t4;
4236+
4237+#
4238+# end of test cases for intersect index_merge optimization technique
4239+#
4240+
4241+
4242+
4243
4244=== added file 'mysql-test/include/index_merge_multi_col_setup.inc'
4245--- mysql-test/include/index_merge_multi_col_setup.inc 1970-01-01 00:00:00 +0000
4246+++ mysql-test/include/index_merge_multi_col_setup.inc 2013-11-27 10:38:56 +0000
4247@@ -0,0 +1,75 @@
4248+#
4249+# Creating table with multi column index setup
4250+#
4251+
4252+--disable_warnings
4253+DROP TABLE IF EXISTS t1;
4254+--enable_warnings
4255+
4256+CREATE TABLE t1
4257+(
4258+ key1 INT NOT NULL,
4259+ key2 INT NOT NULL,
4260+ key3 INT NOT NULL,
4261+ key4 INT NOT NULL,
4262+ key5 INT,
4263+ key6 INT,
4264+ key7 INT NOT NULL,
4265+ key8 INT NOT NULL,
4266+ INDEX i1(key1,key2),
4267+ INDEX i2(key2,key1),
4268+ INDEX i3(key3,key4),
4269+ INDEX i4(key4,key3),
4270+ INDEX i5(key5,key6),
4271+ INDEX i6(key6,key5),
4272+ INDEX i7(key7,key8),
4273+ INDEX i8(key8,key7)
4274+);
4275+
4276+--disable_query_log
4277+
4278+
4279+# inserting values
4280+
4281+INSERT INTO t1 VALUES ( 1,1,1,1,1,1,1,1),(2,2,2,2,2,2,2,2);
4282+
4283+let $i=10;
4284+set @d=2;
4285+while($i)
4286+{
4287+ INSERT INTO t1 SELECT key1+@d, key2+@d, key3+@d, key4+@d,
4288+ key5+@d, key6+@d, key7+@d, key8+@d FROM t1;
4289+ set @d=@d*2;
4290+ dec $i;
4291+}
4292+
4293+
4294+# Inserting null values.
4295+
4296+let $i=5;
4297+set @d=5;
4298+while($i)
4299+{
4300+ INSERT INTO t1 VALUES (key1+@d, key2+@d, key3+@d, key4+@d,
4301+ key5+@d, NULL, key7+@d, key8+@d);
4302+ set @d=@d*2;
4303+ dec $i;
4304+}
4305+
4306+let $i=4;
4307+set @d=6;
4308+while($i)
4309+{
4310+ INSERT INTO t1 VALUES (key1+@d, key2+@d, key3+@d, key4+@d,
4311+ NULL, key6+@d, key7+@d, key8+@d);
4312+ set @d=@d*2;
4313+ dec $i;
4314+}
4315+
4316+--enable_query_log
4317+
4318+# To analyze and store the key distribution of the table.
4319+
4320+ANALYZE TABLE t1;
4321+
4322+
4323
4324=== added file 'mysql-test/include/index_merge_single_col_setup.inc'
4325--- mysql-test/include/index_merge_single_col_setup.inc 1970-01-01 00:00:00 +0000
4326+++ mysql-test/include/index_merge_single_col_setup.inc 2013-11-27 10:38:56 +0000
4327@@ -0,0 +1,72 @@
4328+#
4329+# Creating table with single column index setup
4330+#
4331+
4332+--disable_warnings
4333+DROP TABLE IF EXISTS t1;
4334+--enable_warnings
4335+
4336+CREATE TABLE t1
4337+(
4338+ key1 INT NOT NULL,
4339+ key2 INT NOT NULL,
4340+ key3 INT NOT NULL,
4341+ key4 INT NOT NULL,
4342+ key5 INT,
4343+ key6 INT,
4344+ key7 INT NOT NULL,
4345+ key8 INT NOT NULL,
4346+ INDEX i1(key1),
4347+ INDEX i2(key2),
4348+ INDEX i3(key3),
4349+ INDEX i4(key4),
4350+ INDEX i5(key5),
4351+ INDEX i6(key6)
4352+);
4353+
4354+--disable_query_log
4355+
4356+# inserting values
4357+
4358+INSERT INTO t1 VALUES ( 1,1,1,1,1,1,1,1),(2,2,2,2,2,2,2,2);
4359+
4360+let $i=10;
4361+set @d=2;
4362+while($i)
4363+{
4364+ INSERT INTO t1 SELECT key1+@d, key2+@d, key3+@d, key4+@d,
4365+ key5+@d, key6+@d, key7+@d, key8+@d FROM t1;
4366+ set @d=@d*2;
4367+ dec $i;
4368+}
4369+
4370+
4371+# inserting null values.
4372+
4373+let $i=5;
4374+set @d=5;
4375+while($i)
4376+{
4377+ INSERT INTO t1 VALUES (key1+@d, key2+@d, key3+@d, key4+@d,
4378+ key5+@d, NULL, key7+@d, key8+@d);
4379+ set @d=@d*2;
4380+ dec $i;
4381+}
4382+
4383+let $i=4;
4384+set @d=6;
4385+while($i)
4386+{
4387+ INSERT INTO t1 VALUES (key1+@d, key2+@d, key3+@d, key4+@d,
4388+ NULL, key6+@d, key7+@d, key8+@d);
4389+ set @d=@d*2;
4390+ dec $i;
4391+}
4392+
4393+--enable_query_log
4394+
4395+# The following statement analyzes and
4396+# stores the key distribution for a table.
4397+
4398+ANALYZE TABLE t1;
4399+
4400
4401=== added file 'mysql-test/include/index_merge_update.inc'
4402--- mysql-test/include/index_merge_update.inc 1970-01-01 00:00:00 +0000
4403+++ mysql-test/include/index_merge_update.inc 2013-11-27 10:38:56 +0000
4404@@ -0,0 +1,130 @@
4405+#
4406+# UPDATE statements using index_merge optimization
4407+#
4408+
4409+# The include file works as intended only when index_merge_single_col_setup.inc
4410+# or index_merge_multi_col_setup.inc is used. The table t1 set-up is done in
4411+# these two include files.
4412+
4413+--disable_warnings
4414+DROP TABLE IF EXISTS t2;
4415+--enable_warnings
4416+
4417+CREATE TABLE t2 LIKE t1;
4418+INSERT INTO t2 SELECT * FROM t1;
4419+ANALYZE TABLE t2;
4420+
4421+#1. UPDATE statements with various combinations of comparison operators
4422+
4423+# intersect optimization technique test cases for non-selects
4424+# are in a separate file(index_merge_intersect_dml.inc)
4425+# due to different table requirements.
4426+
4427+# union and sort_union
4428+
4429+--let $query = WHERE key1=80 OR key4=49
4430+--replace_column 9 #
4431+--eval EXPLAIN UPDATE t1 SET key6=7 $query
4432+--eval SELECT COUNT(*), SUM(key6) FROM t1 $query
4433+--eval UPDATE t1 SET key6=7 $query
4434+--eval SELECT COUNT(*), SUM(key6) FROM t1 $query
4435+
4436+--let $query = WHERE (key3=80 AND key5 IS NULL) OR (key2=49 AND key6 IS NULL)
4437+--replace_column 9 #
4438+--eval EXPLAIN UPDATE t1 SET key1=18 $query
4439+--eval SELECT COUNT(*), SUM(key1) FROM t1 $query
4440+--eval UPDATE t1 SET key1=18 $query
4441+--eval SELECT COUNT(*), SUM(key1) FROM t1 $query
4442+
4443+--let $query = WHERE (key4=42 AND key6 IS NOT NULL) OR (key1>4 AND key5 IS NULL) AND key2<>50
4444+--replace_column 9 #
4445+--eval EXPLAIN UPDATE t1 SET key3=18 $query
4446+--eval SELECT COUNT(*), SUM(key3) FROM t1 $query
4447+--eval UPDATE t1 SET key3=18 $query
4448+--eval SELECT COUNT(*), SUM(key3) FROM t1 $query
4449+
4450+--let $query = WHERE key2=80 OR key3=1025 OR key4 <=> NULL
4451+--replace_column 9 #
4452+--eval EXPLAIN UPDATE t1 SET key8=64 $query
4453+--eval SELECT COUNT(*), SUM(key8) FROM t1 $query
4454+--eval UPDATE t1 SET key8=64 $query
4455+--eval SELECT COUNT(*), SUM(key8) FROM t1 $query
4456+
4457+--let $query = WHERE (key1 < 3 OR key2 < 2) AND (key3 < 3 OR key4 < 3) AND (key5 < 2 OR key6 < 2)
4458+--replace_column 9 #
4459+--eval EXPLAIN UPDATE t1 SET key8=18 $query
4460+--eval SELECT COUNT(*), SUM(key8) FROM t1 $query
4461+--eval UPDATE t1 SET key8=18 $query
4462+--eval SELECT COUNT(*), SUM(key8) FROM t1 $query
4463+
4464+--let $query = WHERE key1 between 25 AND 40 OR key2 between 15 AND 49
4465+--replace_column 9 #
4466+--eval EXPLAIN UPDATE t1 SET key3=32 $query
4467+--eval SELECT COUNT(*), SUM(key3) FROM t1 $query
4468+--eval UPDATE t1 SET key3=32 $query
4469+--eval SELECT COUNT(*), SUM(key3) FROM t1 $query
4470+
4471+--let $query = WHERE key1 IN (15,70) OR key2 IN (15,70)
4472+--replace_column 9 #
4473+--eval EXPLAIN UPDATE t1 SET key7=25 $query
4474+--eval SELECT COUNT(*), SUM(key7) FROM t1 $query
4475+--eval UPDATE t1 SET key7=25 $query
4476+--eval SELECT COUNT(*), SUM(key7) FROM t1 $query
4477+
4478+#2. Statement with ORDER BY
4479+
4480+--let $query = WHERE key5<5 OR key8<10 ORDER BY key1
4481+--replace_column 9 #
4482+--eval EXPLAIN UPDATE t1 SET key1=10 $query
4483+--eval SELECT COUNT(*), SUM(key1) FROM t1 $query
4484+--eval UPDATE t1 SET key1=10 $query
4485+--eval SELECT COUNT(*), SUM(key1) FROM t1 $query
4486+
4487+#3. Multi table SQL statements
4488+
4489+--let $query = t1 left join t2 ON (t2.key1=t2.key1) SET t1.key4=15 WHERE t1.key5=40 OR t1.key4=15
4490+--replace_column 9 #
4491+--eval EXPLAIN UPDATE $query
4492+SELECT COUNT(*), SUM(key4) FROM t1;
4493+--eval UPDATE $query
4494+SELECT COUNT(*), SUM(key4) FROM t1;
4495+
4496+# Statements with subqueries
4497+
4498+--let $query2 = key6 < ANY (SELECT key6 FROM t1 WHERE key1=10 OR key5=3)
4499+--let $query1 = WHERE (key3=28 OR key4=10)
4500+--replace_column 9 #
4501+--eval EXPLAIN UPDATE t2 SET key7=7 $query1 AND $query2
4502+--eval SELECT COUNT(*), SUM(key7) FROM t2 $query1 AND $query2
4503+--eval UPDATE t2 SET key7=7 $query1 AND $query2
4504+--eval SELECT COUNT(*), SUM(key7) FROM t2 $query1 AND $query2
4505+
4506+--let $query3 = key1 < ANY (SELECT key1 FROM t1 WHERE key1<5 OR key4<7)
4507+--let $query2 = key4 < SOME (SELECT key4 FROM t1 WHERE key1<5 OR key4<8)
4508+--let $query1 = WHERE key1=25 OR key4=40
4509+--replace_column 9 #
4510+--eval EXPLAIN UPDATE t2 SET key2=2 $query1 AND ($query2 OR $query3)
4511+--eval SELECT COUNT(*), SUM(key2) FROM t2 $query1 AND ($query2 OR $query3)
4512+--eval UPDATE t2 SET key2=2 $query1 AND ($query2 OR $query3)
4513+--eval SELECT COUNT(*), SUM(key2) FROM t2 $query1 AND ($query2 OR $query3)
4514+
4515+--let $query = WHERE EXISTS (SELECT * FROM t1 WHERE key6<3 OR key4<10)
4516+--replace_column 9 #
4517+--eval EXPLAIN UPDATE t2 SET key3=20 $query
4518+--eval SELECT COUNT(*), SUM(key3) FROM t2 $query
4519+--eval UPDATE t2 SET key3=20 $query
4520+--eval SELECT COUNT(*), SUM(key3) FROM t2 $query
4521+
4522+# The following statement doesn't use index_merge optimization technique when
4523+# the table is created with single column index setup.
4524+
4525+--let $query = WHERE key5=80 OR key6=49
4526+--replace_column 9 #
4527+--eval EXPLAIN UPDATE t1 SET key8=50 $query
4528+--eval SELECT COUNT(*), SUM(key8) FROM t1 $query
4529+--eval UPDATE t1 SET key8=50 $query
4530+--eval SELECT COUNT(*), SUM(key8) FROM t1 $query
4531+
4532+#
4533+# end of UPDATE statements
4534+#
4535
4536=== added file 'mysql-test/include/install_semisync.inc'
4537--- mysql-test/include/install_semisync.inc 1970-01-01 00:00:00 +0000
4538+++ mysql-test/include/install_semisync.inc 2013-11-27 10:38:56 +0000
4539@@ -0,0 +1,39 @@
4540+#
4541+# Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
4542+#
4543+--let $include_filename= install_semisync.inc
4544+--source include/begin_include_file.inc
4545+
4546+--source include/not_embedded.inc
4547+--source include/not_gtid_enabled.inc
4548+--source include/have_semisync_plugin.inc
4549+
4550+--connection master
4551+
4552+--disable_query_log
4553+--let $value = query_get_value(show variables like 'rpl_semi_sync_master_enabled', Value, 1)
4554+if ($value == No such row)
4555+{
4556+ SET sql_log_bin = 0;
4557+ eval INSTALL PLUGIN rpl_semi_sync_master SONAME '$SEMISYNC_MASTER_PLUGIN';
4558+ SET GLOBAL rpl_semi_sync_master_enabled = 1;
4559+ SET sql_log_bin = 1;
4560+}
4561+--enable_query_log
4562+
4563+--connection slave
4564+--source include/stop_slave_io.inc
4565+
4566+--disable_query_log
4567+--let $value= query_get_value(show variables like 'rpl_semi_sync_slave_enabled', Value, 1)
4568+if ($value == No such row)
4569+{
4570+ SET sql_log_bin = 0;
4571+ eval INSTALL PLUGIN rpl_semi_sync_slave SONAME '$SEMISYNC_SLAVE_PLUGIN';
4572+ SET GLOBAL rpl_semi_sync_slave_enabled = 1;
4573+ SET sql_log_bin = 1;
4574+}
4575+--source include/start_slave_io.inc
4576+--enable_query_log
4577+
4578+--source include/end_include_file.inc
4579
4580=== modified file 'mysql-test/include/mtr_warnings.sql'
4581--- mysql-test/include/mtr_warnings.sql 2012-12-14 10:16:24 +0000
4582+++ mysql-test/include/mtr_warnings.sql 2013-11-27 10:38:56 +0000
4583@@ -1,4 +1,4 @@
4584--- Copyright (c) 2008, 2011, Oracle and/or its affiliates. All rights reserved.
4585+-- Copyright (c) 2008, 2013, Oracle and/or its affiliates. All rights reserved.
4586 --
4587 -- This program is free software; you can redistribute it and/or modify
4588 -- it under the terms of the GNU General Public License as published by
4589@@ -241,7 +241,9 @@
4590 */
4591 ("Slave SQL: Coordinator thread of multi-threaded slave is being stopped in the middle of assigning a group of events.*"),
4592
4593- ("Changed limits: max_open_files: * max_connections: * table_cache: *"),
4594+ ("Changed limits: max_open_files: *"),
4595+ ("Changed limits: max_connections: *"),
4596+ ("Changed limits: table_cache: *"),
4597 ("Could not increase number of max_open_files to more than *"),
4598
4599 ("THE_LAST_SUPPRESSION")||
4600
4601=== added file 'mysql-test/include/restart_readonly_mysqld.inc'
4602--- mysql-test/include/restart_readonly_mysqld.inc 1970-01-01 00:00:00 +0000
4603+++ mysql-test/include/restart_readonly_mysqld.inc 2013-11-27 10:38:56 +0000
4604@@ -0,0 +1,21 @@
4605+# Write file to make mysql-test-run.pl expect the "crash", but don't start
4606+# it until it's told to
4607+--let $_server_id= `SELECT @@server_id`
4608+--let $_expect_file_name= $MYSQLTEST_VARDIR/tmp/mysqld.$_server_id.expect
4609+--exec echo "wait" > $_expect_file_name
4610+
4611+# Send shutdown to the connected server and give
4612+# it 10 seconds to die before zapping it
4613+shutdown_server 10;
4614+
4615+# Write file to make mysql-test-run.pl start up the server again
4616+--exec echo "restart: --innodb-read-only " > $_expect_file_name
4617+
4618+# Turn on reconnect
4619+--enable_reconnect
4620+
4621+# Call script that will poll the server waiting for it to be back online again
4622+--source include/wait_until_connected_again.inc
4623+
4624+# Turn off reconnect again
4625+--disable_reconnect
4626
4627=== modified file 'mysql-test/include/rpl_stop_server.inc'
4628--- mysql-test/include/rpl_stop_server.inc 2012-01-16 22:21:16 +0000
4629+++ mysql-test/include/rpl_stop_server.inc 2013-11-27 10:38:56 +0000
4630@@ -47,8 +47,8 @@
4631 --exec echo "wait" > $MYSQLTEST_VARDIR/tmp/mysqld.$rpl_server_number.expect
4632
4633 # Send shutdown to the connected server and give
4634-# it 10 seconds to die before zapping it
4635-shutdown_server 10;
4636+# it 14 seconds to die before zapping it
4637+shutdown_server 14;
4638
4639 --source include/wait_until_disconnected.inc
4640
4641
4642=== modified file 'mysql-test/include/select.inc'
4643--- mysql-test/include/select.inc 2013-01-29 08:42:47 +0000
4644+++ mysql-test/include/select.inc 2013-11-27 10:38:56 +0000
4645@@ -2455,6 +2455,8 @@
4646
4647 create table t1 (s1 int);
4648 insert into t1 values (null),(1);
4649+select avg(s1) as x from t1 group by s1 with rollup;
4650+--error ER_WRONG_USAGE
4651 select distinct avg(s1) as x from t1 group by s1 with rollup;
4652 drop table t1;
4653
4654
4655=== modified file 'mysql-test/include/shutdown_mysqld.inc'
4656--- mysql-test/include/shutdown_mysqld.inc 2012-06-15 15:32:44 +0000
4657+++ mysql-test/include/shutdown_mysqld.inc 2013-11-27 10:38:56 +0000
4658@@ -13,6 +13,6 @@
4659 --exec echo "wait" > $_expect_file_name
4660
4661 # Send shutdown to the connected server
4662---shutdown_server 10
4663+--shutdown_server
4664 --source include/wait_until_disconnected.inc
4665
4666
4667=== modified file 'mysql-test/include/start_slave_sql.inc'
4668--- mysql-test/include/start_slave_sql.inc 2011-05-05 09:58:48 +0000
4669+++ mysql-test/include/start_slave_sql.inc 2013-11-27 10:38:56 +0000
4670@@ -32,7 +32,7 @@
4671
4672
4673 START SLAVE SQL_THREAD;
4674---source include/wait_for_slave_io_to_start.inc
4675+--source include/wait_for_slave_sql_to_start.inc
4676
4677
4678 --let $include_filename= start_slave_sql.inc
4679
4680=== modified file 'mysql-test/include/subquery.inc'
4681--- mysql-test/include/subquery.inc 2012-07-10 11:59:40 +0000
4682+++ mysql-test/include/subquery.inc 2013-11-27 10:38:56 +0000
4683@@ -4715,6 +4715,10 @@
4684
4685 --error ER_BAD_FIELD_ERROR
4686 EXPLAIN EXTENDED SELECT DISTINCT 1 FROM t1,
4687+(SELECT a AS away FROM t1 GROUP BY a WITH ROLLUP) AS d1
4688+WHERE t1.a = d1.a;
4689+--error ER_WRONG_USAGE
4690+EXPLAIN EXTENDED SELECT DISTINCT 1 FROM t1,
4691 (SELECT DISTINCTROW a AS away FROM t1 GROUP BY a WITH ROLLUP) AS d1
4692 WHERE t1.a = d1.a;
4693
4694
4695=== modified file 'mysql-test/include/test_fieldsize.inc'
4696--- mysql-test/include/test_fieldsize.inc 2012-03-06 14:29:42 +0000
4697+++ mysql-test/include/test_fieldsize.inc 2013-11-27 10:38:56 +0000
4698@@ -22,8 +22,7 @@
4699 eval $test_insert;
4700
4701 connection slave;
4702---let $slave_sql_errno= 1677
4703---let $show_slave_sql_error= 1
4704+--let $slave_sql_errno= convert_error(ER_SLAVE_CONVERSION_FAILED) # 1677
4705 --source include/wait_for_slave_sql_error.inc
4706
4707 # The following should be 0
4708
4709=== added file 'mysql-test/include/uninstall_semisync.inc'
4710--- mysql-test/include/uninstall_semisync.inc 1970-01-01 00:00:00 +0000
4711+++ mysql-test/include/uninstall_semisync.inc 2013-11-27 10:38:56 +0000
4712@@ -0,0 +1,23 @@
4713+#
4714+# Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
4715+#
4716+--let $include_filename= uninstall_semisync.inc
4717+--source include/begin_include_file.inc
4718+
4719+--disable_query_log
4720+--connection slave
4721+--source include/stop_slave_io.inc
4722+
4723+# Uninstall rpl_semi_sync_slave first
4724+--disable_warnings
4725+UNINSTALL PLUGIN rpl_semi_sync_slave;
4726+
4727+--connection master
4728+UNINSTALL PLUGIN rpl_semi_sync_master;
4729+--enable_warnings
4730+
4731+--connection slave
4732+--source include/start_slave_io.inc
4733+--enable_query_log
4734+
4735+--source include/end_include_file.inc
4736
4737=== modified file 'mysql-test/lib/My/CoreDump.pm'
4738--- mysql-test/lib/My/CoreDump.pm 2012-04-20 05:23:24 +0000
4739+++ mysql-test/lib/My/CoreDump.pm 2013-11-27 10:38:56 +0000
4740@@ -1,5 +1,5 @@
4741 # -*- cperl -*-
4742-# Copyright (c) 2008, 2012, Oracle and/or its affiliates. All rights reserved.
4743+# Copyright (c) 2008, 2013, Oracle and/or its affiliates. All rights reserved.
4744 #
4745 # This program is free software; you can redistribute it and/or modify
4746 # it under the terms of the GNU General Public License as published by
4747@@ -261,13 +261,17 @@
4748
4749
4750 sub show {
4751- my ($class, $core_name, $exe_mysqld)= @_;
4752+ my ($class, $core_name, $exe_mysqld, $parallel)= @_;
4753 $hint_mysqld= $exe_mysqld;
4754
4755 # On Windows, rely on cdb to be there...
4756 if (IS_WINDOWS)
4757 {
4758- _cdb($core_name);
4759+ # Starting cdb is unsafe when used with --parallel > 1 option
4760+ if ( $parallel < 2 )
4761+ {
4762+ _cdb($core_name);
4763+ }
4764 return;
4765 }
4766
4767
4768=== modified file 'mysql-test/lib/My/SafeProcess/CMakeLists.txt'
4769--- mysql-test/lib/My/SafeProcess/CMakeLists.txt 2013-02-26 05:45:28 +0000
4770+++ mysql-test/lib/My/SafeProcess/CMakeLists.txt 2013-11-27 10:38:56 +0000
4771@@ -1,4 +1,4 @@
4772-# Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.
4773+# Copyright (c) 2006, 2013, Oracle and/or its affiliates. All rights reserved.
4774 #
4775 # This program is free software; you can redistribute it and/or modify
4776 # it under the terms of the GNU General Public License as published by
4777@@ -13,6 +13,10 @@
4778 # along with this program; if not, write to the Free Software
4779 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
4780
4781+IF (NOT INSTALL_MYSQLTESTDIR)
4782+ RETURN()
4783+ENDIF()
4784+
4785 SET(INSTALL_ARGS
4786 DESTINATION "${INSTALL_MYSQLTESTDIR}/lib/My/SafeProcess"
4787 COMPONENT Test
4788@@ -25,8 +29,16 @@
4789 MYSQL_ADD_EXECUTABLE(my_safe_process safe_process.cc ${INSTALL_ARGS})
4790 ENDIF()
4791
4792-INSTALL(TARGETS my_safe_process DESTINATION "${INSTALL_MYSQLTESTDIR}/lib/My/SafeProcess" COMPONENT Test)
4793+INSTALL(TARGETS my_safe_process
4794+ DESTINATION "${INSTALL_MYSQLTESTDIR}/lib/My/SafeProcess" COMPONENT Test
4795+)
4796+
4797 IF(WIN32)
4798- INSTALL(TARGETS my_safe_kill DESTINATION "${INSTALL_MYSQLTESTDIR}/lib/My/SafeProcess" COMPONENT Test)
4799+ INSTALL(TARGETS my_safe_kill
4800+ DESTINATION "${INSTALL_MYSQLTESTDIR}/lib/My/SafeProcess" COMPONENT Test
4801+ )
4802 ENDIF()
4803-INSTALL(FILES Base.pm DESTINATION "${INSTALL_MYSQLTESTDIR}/lib/My/SafeProcess" COMPONENT Test)
4804+
4805+INSTALL(FILES Base.pm
4806+ DESTINATION "${INSTALL_MYSQLTESTDIR}/lib/My/SafeProcess" COMPONENT Test
4807+)
4808
4809=== modified file 'mysql-test/lib/My/SafeProcess/safe_process.cc'
4810--- mysql-test/lib/My/SafeProcess/safe_process.cc 2013-02-26 05:45:28 +0000
4811+++ mysql-test/lib/My/SafeProcess/safe_process.cc 2013-11-27 10:38:56 +0000
4812@@ -11,7 +11,7 @@
4813
4814 You should have received a copy of the GNU General Public License
4815 along with this program; if not, write to the Free Software
4816- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
4817+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
4818
4819
4820 /*
4821
4822=== modified file 'mysql-test/lib/My/SysInfo.pm'
4823--- mysql-test/lib/My/SysInfo.pm 2012-03-06 14:29:42 +0000
4824+++ mysql-test/lib/My/SysInfo.pm 2013-11-27 10:38:56 +0000
4825@@ -1,5 +1,5 @@
4826 # -*- cperl -*-
4827-# Copyright (c) 2008 MySQL AB, 2008 Sun Microsystems, Inc.
4828+# Copyright (c) 2013 MySQL AB, 2008 Sun Microsystems, Inc.
4829 # Use is subject to license terms.
4830 #
4831 # This program is free software; you can redistribute it and/or modify
4832@@ -60,7 +60,7 @@
4833 }
4834
4835 # Make sure bogomips is set to some value
4836- $cpuinfo->{bogomips} |= DEFAULT_BOGO_MIPS;
4837+ $cpuinfo->{bogomips} ||= DEFAULT_BOGO_MIPS;
4838
4839 # Cpus reported once, but with 'cpu_count' set to the actual number
4840 my $cpu_count= $cpuinfo->{cpu_count} || 1;
4841
4842=== modified file 'mysql-test/lib/v1/mysql-test-run.pl'
4843--- mysql-test/lib/v1/mysql-test-run.pl 2013-02-26 05:45:28 +0000
4844+++ mysql-test/lib/v1/mysql-test-run.pl 2013-11-27 10:38:56 +0000
4845@@ -1,7 +1,7 @@
4846 #!/usr/bin/perl
4847 # -*- cperl -*-
4848
4849-# Copyright (c) 2008, 2012, Oracle and/or its affiliates. All rights reserved.
4850+# Copyright (c) 2008, 2013, Oracle and/or its affiliates. All rights reserved.
4851 #
4852 # This program is free software; you can redistribute it and/or modify
4853 # it under the terms of the GNU General Public License as published by
4854@@ -133,7 +133,6 @@
4855 our $path_snapshot;
4856 our $path_mysqltest_log;
4857 our $path_current_test_log;
4858-our $path_my_basedir;
4859
4860 our $opt_vardir; # A path but set directly on cmd line
4861 our $path_vardir_trace; # unix formatted opt_vardir for trace files
4862@@ -765,8 +764,6 @@
4863 $glob_mysql_bench_dir= undef
4864 unless -d $glob_mysql_bench_dir;
4865
4866- $path_my_basedir=
4867- $source_dist ? $glob_mysql_test_dir : $glob_basedir;
4868
4869 $glob_timers= mtr_init_timers();
4870
4871@@ -3142,7 +3139,7 @@
4872 mtr_init_args(\$args);
4873 mtr_add_arg($args, "--no-defaults");
4874 mtr_add_arg($args, "--bootstrap");
4875- mtr_add_arg($args, "--basedir=%s", $path_my_basedir);
4876+ mtr_add_arg($args, "--basedir=%s", $glob_basedir);
4877 mtr_add_arg($args, "--datadir=%s", $data_dir);
4878 mtr_add_arg($args, "--loose-skip-ndbcluster");
4879 mtr_add_arg($args, "--tmpdir=.");
4880@@ -3292,7 +3289,7 @@
4881 log-error = $instance->{path_datadir}/mysqld$server_id.err.log
4882 log-slow-queries = $instance->{path_datadir}/mysqld$server_id.slow.log
4883 character-sets-dir = $path_charsetsdir
4884-basedir = $path_my_basedir
4885+basedir = $glob_basedir
4886 server_id = $server_id
4887 shutdown-delay = 10
4888 skip-stack-trace
4889@@ -3883,7 +3880,7 @@
4890
4891 mtr_add_arg($args, "%s--no-defaults", $prefix);
4892
4893- mtr_add_arg($args, "%s--basedir=%s", $prefix, $path_my_basedir);
4894+ mtr_add_arg($args, "%s--basedir=%s", $prefix, $glob_basedir);
4895 mtr_add_arg($args, "%s--character-sets-dir=%s", $prefix, $path_charsetsdir);
4896
4897 if ( $mysql_version_id >= 50036)
4898@@ -4075,7 +4072,7 @@
4899 }
4900
4901 mtr_add_arg($args, "%s--key_buffer_size=1M", $prefix);
4902- mtr_add_arg($args, "%s--sort_buffer=256K", $prefix);
4903+ mtr_add_arg($args, "%s--sort_buffer_size=256K", $prefix);
4904 mtr_add_arg($args, "%s--max_heap_table_size=1M", $prefix);
4905
4906 if ( $opt_ssl_supported )
4907
4908=== modified file 'mysql-test/mysql-test-run.pl'
4909--- mysql-test/mysql-test-run.pl 2013-02-20 09:31:47 +0000
4910+++ mysql-test/mysql-test-run.pl 2013-11-27 10:38:56 +0000
4911@@ -646,7 +646,7 @@
4912 mtr_report(" - found '$core_name'",
4913 "($num_saved_cores/$opt_max_save_core)");
4914
4915- My::CoreDump->show($core_file, $exe_mysqld);
4916+ My::CoreDump->show($core_file, $exe_mysqld, $opt_parallel);
4917
4918 if ($num_saved_cores >= $opt_max_save_core) {
4919 mtr_report(" - deleting it, already saved",
4920@@ -2059,7 +2059,17 @@
4921 }
4922 else
4923 {
4924- $exe_mysqltest= mtr_exe_exists("$path_client_bindir/mysqltest");
4925+ if ( defined $ENV{'MYSQL_TEST'} )
4926+ {
4927+ $exe_mysqltest=$ENV{'MYSQL_TEST'};
4928+ print "===========================================================\n";
4929+ print "WARNING:The mysqltest binary is fetched from $exe_mysqltest\n";
4930+ print "===========================================================\n";
4931+ }
4932+ else
4933+ {
4934+ $exe_mysqltest= mtr_exe_exists("$path_client_bindir/mysqltest");
4935+ }
4936 }
4937
4938 }
4939@@ -2215,7 +2225,7 @@
4940 mtr_error("Lines in $defs_file must have 3 or 4 items") unless $plug_var;
4941
4942 # If running debug server, plugins will be in 'debug' subdirectory
4943- $plug_file= "debug/$plug_file" if $running_debug;
4944+ $plug_file= "debug/$plug_file" if $running_debug && !$source_dist;
4945
4946 my ($plugin)= find_plugin($plug_file, $plug_loc);
4947
4948
4949=== modified file 'mysql-test/purify.supp'
4950--- mysql-test/purify.supp 2010-12-28 18:57:23 +0000
4951+++ mysql-test/purify.supp 2013-11-27 10:38:56 +0000
4952@@ -12,8 +12,8 @@
4953 #
4954 # You should have received a copy of the GNU Library General Public
4955 # License along with this library; if not, write to the Free
4956-# Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
4957-# MA 02111-1307, USA
4958+# Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
4959+# MA 02110-1301, USA
4960
4961 suppress UMR rw_read_held; mi_open; ha_myisam::open64; handler::ha_open; openfrm
4962 suppress UMR my_end; main
4963
4964=== modified file 'mysql-test/r/auth_rpl.result'
4965--- mysql-test/r/auth_rpl.result 2012-03-30 04:28:39 +0000
4966+++ mysql-test/r/auth_rpl.result 2013-11-27 10:38:56 +0000
4967@@ -1,7 +1,7 @@
4968 include/master-slave.inc
4969 Warnings:
4970 Note #### Sending passwords in plain text without SSL/TLS is extremely insecure.
4971-Note #### Storing MySQL user name or password information in the master.info repository is not secure and is therefore not recommended. Please see the MySQL Manual for more about this issue and possible alternatives.
4972+Note #### Storing MySQL user name or password information in the master info repository is not secure and is therefore not recommended. Please consider using the USER and PASSWORD connection options for START SLAVE; see the 'START SLAVE Syntax' in the MySQL Manual for more information.
4973 [connection master]
4974 [connection slave]
4975 include/stop_slave.inc
4976@@ -16,7 +16,7 @@
4977 MASTER_RETRY_COUNT= 0;
4978 Warnings:
4979 Note #### Sending passwords in plain text without SSL/TLS is extremely insecure.
4980-Note #### Storing MySQL user name or password information in the master.info repository is not secure and is therefore not recommended. Please see the MySQL Manual for more about this issue and possible alternatives.
4981+Note #### Storing MySQL user name or password information in the master info repository is not secure and is therefore not recommended. Please consider using the USER and PASSWORD connection options for START SLAVE; see the 'START SLAVE Syntax' in the MySQL Manual for more information.
4982 include/start_slave.inc
4983 # Slave in-sync with master now.
4984 SELECT user, plugin, authentication_string FROM mysql.user WHERE user LIKE 'plug_user';
4985@@ -27,7 +27,7 @@
4986 CHANGE MASTER TO MASTER_USER='root';
4987 Warnings:
4988 Note #### Sending passwords in plain text without SSL/TLS is extremely insecure.
4989-Note #### Storing MySQL user name or password information in the master.info repository is not secure and is therefore not recommended. Please see the MySQL Manual for more about this issue and possible alternatives.
4990+Note #### Storing MySQL user name or password information in the master info repository is not secure and is therefore not recommended. Please consider using the USER and PASSWORD connection options for START SLAVE; see the 'START SLAVE Syntax' in the MySQL Manual for more information.
4991 DROP USER 'plug_user';
4992 # Cleanup (on master).
4993 DROP USER 'plug_user';
4994
4995=== modified file 'mysql-test/r/create.result'
4996--- mysql-test/r/create.result 2012-10-22 08:08:04 +0000
4997+++ mysql-test/r/create.result 2013-11-27 10:38:56 +0000
4998@@ -878,9 +878,10 @@
4999 unlock tables;
5000 lock table t1 read, t2 read;
The diff has been truncated for viewing.

Subscribers

People subscribed via source and target branches

to all changes: