List:Commits« Previous MessageNext Message »
From:Alexander Barkov Date:November 21 2011 12:03pm
Subject:bzr push into mysql-trunk branch (alexander.barkov:3603 to 3604)
View as plain text  
 3604 Alexander Barkov	2011-11-21 [merge]
      Merging mysql-trunk 0> mysql-trunk-wl5885

    modified:
      mysql-test/r/create-big.result
      mysql-test/suite/federated/federated.test
      mysql-test/suite/federated/federated_plugin.test
      mysql-test/t/create-big.test
      mysql-test/t/disabled.def
      sql/sql_insert.cc
      sql/sql_table.cc
 3603 Alexander Barkov	2011-11-21 [merge]
      Merging mysql-trunk -> mysql-trunk-wl5885

    removed:
      mysql-test/extra/rpl_tests/rpl_parallel_benchmark_load.test
      mysql-test/r/disabled_partition.require
      mysql-test/r/not_partition.require
      mysql-test/suite/rpl/r/rpl_parallel_benchmark.result
      mysql-test/suite/rpl/t/rpl_parallel_benchmark-master.opt
      mysql-test/suite/rpl/t/rpl_parallel_benchmark-slave.opt
      mysql-test/suite/rpl/t/rpl_parallel_benchmark.test
      storage/innobase/include/srv0conc.h
      storage/innobase/srv/srv0conc.c
    added:
      mysql-test/include/have_innodb_16k.inc
      mysql-test/include/have_innodb_4k.inc
      mysql-test/include/have_innodb_8k.inc
      mysql-test/suite/innodb/r/innodb-ac-non-locking-select.result
      mysql-test/suite/innodb/r/innodb_16k.result
      mysql-test/suite/innodb/r/innodb_4k.result
      mysql-test/suite/innodb/r/innodb_8k.result
      mysql-test/suite/innodb/r/innodb_bug12661768.result
      mysql-test/suite/innodb/r/innodb_cmp_drop_table.result
      mysql-test/suite/innodb/r/innodb_index_large_prefix_4k.result
      mysql-test/suite/innodb/r/innodb_index_large_prefix_8k.result
      mysql-test/suite/innodb/r/innodb_misc1.result
      mysql-test/suite/innodb/t/innodb-ac-non-locking-select.test
      mysql-test/suite/innodb/t/innodb_16k.test
      mysql-test/suite/innodb/t/innodb_4k.test
      mysql-test/suite/innodb/t/innodb_8k.test
      mysql-test/suite/innodb/t/innodb_bug12661768.test
      mysql-test/suite/innodb/t/innodb_cmp_drop_table-master.opt
      mysql-test/suite/innodb/t/innodb_cmp_drop_table.test
      mysql-test/suite/innodb/t/innodb_index_large_prefix_4k.test
      mysql-test/suite/innodb/t/innodb_index_large_prefix_8k.test
      mysql-test/suite/innodb/t/innodb_misc1-master.opt
      mysql-test/suite/innodb/t/innodb_misc1.test
      mysql-test/suite/innodb_fts/
      mysql-test/suite/innodb_fts/r/
      mysql-test/suite/innodb_fts/r/fulltext.result
      mysql-test/suite/innodb_fts/r/fulltext2.result
      mysql-test/suite/innodb_fts/r/fulltext3.result
      mysql-test/suite/innodb_fts/r/fulltext_cache.result
      mysql-test/suite/innodb_fts/r/fulltext_distinct.result
      mysql-test/suite/innodb_fts/r/fulltext_left_join.result
      mysql-test/suite/innodb_fts/r/fulltext_misc.result
      mysql-test/suite/innodb_fts/r/fulltext_multi.result
      mysql-test/suite/innodb_fts/r/fulltext_order_by.result
      mysql-test/suite/innodb_fts/r/fulltext_update.result
      mysql-test/suite/innodb_fts/r/fulltext_var.result
      mysql-test/suite/innodb_fts/r/innodb-fts-basic.result
      mysql-test/suite/innodb_fts/r/innodb-fts-ddl.result
      mysql-test/suite/innodb_fts/r/innodb-fts-fic.result
      mysql-test/suite/innodb_fts/r/innodb-fts-stopword.result
      mysql-test/suite/innodb_fts/r/innodb_fts_large_records.result
      mysql-test/suite/innodb_fts/r/innodb_fts_misc.result
      mysql-test/suite/innodb_fts/r/innodb_fts_misc_1.result
      mysql-test/suite/innodb_fts/r/innodb_fts_mutiple_index.result
      mysql-test/suite/innodb_fts/r/innodb_fts_proximity.result
      mysql-test/suite/innodb_fts/r/innodb_fts_transaction.result
      mysql-test/suite/innodb_fts/t/
      mysql-test/suite/innodb_fts/t/disabled.def
      mysql-test/suite/innodb_fts/t/fulltext.test
      mysql-test/suite/innodb_fts/t/fulltext2.test
      mysql-test/suite/innodb_fts/t/fulltext3.test
      mysql-test/suite/innodb_fts/t/fulltext_cache.test
      mysql-test/suite/innodb_fts/t/fulltext_distinct.test
      mysql-test/suite/innodb_fts/t/fulltext_left_join.test
      mysql-test/suite/innodb_fts/t/fulltext_misc.test
      mysql-test/suite/innodb_fts/t/fulltext_multi.test
      mysql-test/suite/innodb_fts/t/fulltext_order_by.test
      mysql-test/suite/innodb_fts/t/fulltext_plugin-master.opt
      mysql-test/suite/innodb_fts/t/fulltext_update.test
      mysql-test/suite/innodb_fts/t/fulltext_var.test
      mysql-test/suite/innodb_fts/t/innodb-fts-basic.test
      mysql-test/suite/innodb_fts/t/innodb-fts-ddl.test
      mysql-test/suite/innodb_fts/t/innodb-fts-fic.test
      mysql-test/suite/innodb_fts/t/innodb-fts-stopword.test
      mysql-test/suite/innodb_fts/t/innodb_fts_large_records.test
      mysql-test/suite/innodb_fts/t/innodb_fts_misc.test
      mysql-test/suite/innodb_fts/t/innodb_fts_misc_1.test
      mysql-test/suite/innodb_fts/t/innodb_fts_mutiple_index.test
      mysql-test/suite/innodb_fts/t/innodb_fts_proximity.test
      mysql-test/suite/innodb_fts/t/innodb_fts_transaction.test
      mysql-test/suite/opt_trace/r/temp_table.result
      mysql-test/suite/opt_trace/t/temp_table.test
      mysql-test/suite/rpl/r/rpl_master_connection.result
      mysql-test/suite/rpl/r/rpl_row_find_row_debug.result
      mysql-test/suite/rpl/t/rpl_master_connection-master.opt
      mysql-test/suite/rpl/t/rpl_master_connection-slave.opt
      mysql-test/suite/rpl/t/rpl_master_connection.test
      mysql-test/suite/rpl/t/rpl_row_find_row_debug.test
      mysql-test/suite/sys_vars/r/innodb_disable_sort_file_cache_basic.result
      mysql-test/suite/sys_vars/r/innodb_ft_aux_table_basic.result
      mysql-test/suite/sys_vars/r/innodb_ft_cache_size_basic.result
      mysql-test/suite/sys_vars/r/innodb_ft_enable_diag_print_basic.result
      mysql-test/suite/sys_vars/r/innodb_ft_enable_stopword_basic.result
      mysql-test/suite/sys_vars/r/innodb_ft_max_token_size_basic.result
      mysql-test/suite/sys_vars/r/innodb_ft_min_token_size_basic.result
      mysql-test/suite/sys_vars/r/innodb_ft_num_word_optimize_basic.result
      mysql-test/suite/sys_vars/r/innodb_ft_server_stopword_table_basic.result
      mysql-test/suite/sys_vars/r/innodb_ft_sort_pll_degree_basic.result
      mysql-test/suite/sys_vars/r/innodb_ft_user_stopword_table_basic.result
      mysql-test/suite/sys_vars/r/innodb_optimize_fulltext_only_basic.result
      mysql-test/suite/sys_vars/r/innodb_page_size_basic.result
      mysql-test/suite/sys_vars/r/innodb_sort_buf_size_basic.result
      mysql-test/suite/sys_vars/r/metadata_locks_cache_size_basic.result
      mysql-test/suite/sys_vars/t/innodb_disable_sort_file_cache_basic.test
      mysql-test/suite/sys_vars/t/innodb_ft_aux_table_basic.test
      mysql-test/suite/sys_vars/t/innodb_ft_cache_size_basic.test
      mysql-test/suite/sys_vars/t/innodb_ft_enable_diag_print_basic.test
      mysql-test/suite/sys_vars/t/innodb_ft_enable_stopword_basic.test
      mysql-test/suite/sys_vars/t/innodb_ft_max_token_size_basic.test
      mysql-test/suite/sys_vars/t/innodb_ft_min_token_size_basic.test
      mysql-test/suite/sys_vars/t/innodb_ft_num_word_optimize_basic.test
      mysql-test/suite/sys_vars/t/innodb_ft_server_stopword_table_basic.test
      mysql-test/suite/sys_vars/t/innodb_ft_sort_pll_degree_basic.test
      mysql-test/suite/sys_vars/t/innodb_ft_user_stopword_table_basic.test
      mysql-test/suite/sys_vars/t/innodb_optimize_fulltext_only_basic.test
      mysql-test/suite/sys_vars/t/innodb_page_size_basic.test
      mysql-test/suite/sys_vars/t/innodb_sort_buf_size_basic.test
      mysql-test/suite/sys_vars/t/metadata_locks_cache_size_basic-master.opt
      mysql-test/suite/sys_vars/t/metadata_locks_cache_size_basic.test
      storage/innobase/fts/
      storage/innobase/fts/Makefile.query
      storage/innobase/fts/fts0ast.c
      storage/innobase/fts/fts0blex.c
      storage/innobase/fts/fts0blex.l
      storage/innobase/fts/fts0config.c
      storage/innobase/fts/fts0opt.c
      storage/innobase/fts/fts0pars.c
      storage/innobase/fts/fts0pars.y
      storage/innobase/fts/fts0que.c
      storage/innobase/fts/fts0sql.c
      storage/innobase/fts/fts0tlex.c
      storage/innobase/fts/fts0tlex.l
      storage/innobase/fts/make_parser.sh
      storage/innobase/fut/fut0fut.c
      storage/innobase/include/fts0ast.h
      storage/innobase/include/fts0blex.h
      storage/innobase/include/fts0fts.h
      storage/innobase/include/fts0opt.h
      storage/innobase/include/fts0pars.h
      storage/innobase/include/fts0priv.h
      storage/innobase/include/fts0tlex.h
      storage/innobase/include/fts0types.h
      storage/innobase/include/fts0types.ic
      storage/innobase/include/fts0vlc.ic
      storage/innobase/include/fts_uc_data.ic
      storage/innobase/include/row0ftsort.h
      storage/innobase/include/srv0conc.h
      storage/innobase/row/row0ftsort.c
      storage/innobase/srv/srv0conc.c
      unittest/gunit/cost_estimate-t.cc
    renamed:
      storage/innobase/fut/fut0fut.c => storage/innobase/fts/fts0fts.c
    modified:
      client/mysql_plugin.c
      client/mysql_upgrade.c
      cmd-line-utils/libedit/histedit.h
      cmd-line-utils/libedit/np/unvis.c
      cmd-line-utils/libedit/np/vis.c
      cmd-line-utils/libedit/read.c
      configure.cmake
      extra/CMakeLists.txt
      extra/innochecksum.c
      include/my_base.h
      libmysql/CMakeLists.txt
      mysql-test/collections/default.daily
      mysql-test/collections/default.experimental
      mysql-test/collections/default.push
      mysql-test/collections/default.weekly
      mysql-test/extra/rpl_tests/rpl_parallel_load.test
      mysql-test/include/index_merge_ror_cpk.inc
      mysql-test/include/mix2.inc
      mysql-test/include/mrr_tests.inc
      mysql-test/include/mtr_warnings.sql
      mysql-test/include/subquery_sj.inc
      mysql-test/mysql-test-run.pl
      mysql-test/r/auth_rpl.result
      mysql-test/r/derived.result
      mysql-test/r/distinct.result
      mysql-test/r/func_analyse.result
      mysql-test/r/func_misc.result
      mysql-test/r/func_str.result
      mysql-test/r/gis.result
      mysql-test/r/group_by.result
      mysql-test/r/group_min_max_innodb.result
      mysql-test/r/index_merge_innodb.result
      mysql-test/r/index_merge_myisam.result
      mysql-test/r/information_schema.result
      mysql-test/r/innodb_explain_non_select_all.result
      mysql-test/r/innodb_mrr.result
      mysql-test/r/innodb_mrr_cost.result
      mysql-test/r/innodb_mrr_cost_icp.result
      mysql-test/r/innodb_mrr_icp.result
      mysql-test/r/innodb_mrr_none.result
      mysql-test/r/innodb_mysql_lock.result
      mysql-test/r/myisam_explain_non_select_all.result
      mysql-test/r/mysql_upgrade.result
      mysql-test/r/mysqld--help-notwin.result
      mysql-test/r/mysqld--help-win.result
      mysql-test/r/mysqlshow.result
      mysql-test/r/not_partition.result
      mysql-test/r/partition_disabled.result
      mysql-test/r/partition_innodb.result
      mysql-test/r/partition_innodb_plugin.result
      mysql-test/r/partition_myisam.result
      mysql-test/r/plugin_auth.result
      mysql-test/r/ps_1general.result
      mysql-test/r/rpl_mysqldump_slave.result
      mysql-test/r/sp.result
      mysql-test/r/subquery_all.result
      mysql-test/r/subquery_all_bka.result
      mysql-test/r/subquery_mat_all.result
      mysql-test/r/subquery_sj_all.result
      mysql-test/r/subquery_sj_all_bka.result
      mysql-test/r/subquery_sj_all_bka_nixbnl.result
      mysql-test/r/subquery_sj_all_bkaunique.result
      mysql-test/r/subquery_sj_dupsweed.result
      mysql-test/r/subquery_sj_dupsweed_bka.result
      mysql-test/r/subquery_sj_dupsweed_bka_nixbnl.result
      mysql-test/r/subquery_sj_dupsweed_bkaunique.result
      mysql-test/r/subquery_sj_firstmatch.result
      mysql-test/r/subquery_sj_firstmatch_bka.result
      mysql-test/r/subquery_sj_firstmatch_bka_nixbnl.result
      mysql-test/r/subquery_sj_firstmatch_bkaunique.result
      mysql-test/r/subquery_sj_loosescan.result
      mysql-test/r/subquery_sj_loosescan_bka.result
      mysql-test/r/subquery_sj_loosescan_bka_nixbnl.result
      mysql-test/r/subquery_sj_loosescan_bkaunique.result
      mysql-test/r/subquery_sj_mat.result
      mysql-test/r/subquery_sj_mat_bka.result
      mysql-test/r/subquery_sj_mat_bka_nixbnl.result
      mysql-test/r/subquery_sj_mat_bkaunique.result
      mysql-test/r/subquery_sj_mat_nosj.result
      mysql-test/r/subquery_sj_none.result
      mysql-test/r/subquery_sj_none_bka.result
      mysql-test/r/subquery_sj_none_bka_nixbnl.result
      mysql-test/r/subquery_sj_none_bkaunique.result
      mysql-test/r/type_newdecimal.result
      mysql-test/r/view.result
      mysql-test/r/view_grant.result
      mysql-test/suite/binlog/r/binlog_rewrite.result
      mysql-test/suite/innodb/r/innodb-create-options.result
      mysql-test/suite/innodb/r/innodb-index.result
      mysql-test/suite/innodb/r/innodb-system-table-view.result
      mysql-test/suite/innodb/r/innodb-zip.result
      mysql-test/suite/innodb/r/innodb.result
      mysql-test/suite/innodb/r/innodb_buffer_pool_load.result
      mysql-test/suite/innodb/r/innodb_bug30423.result
      mysql-test/suite/innodb/r/innodb_bug53591.result
      mysql-test/suite/innodb/r/innodb_bug53592.result
      mysql-test/suite/innodb/r/innodb_index_large_prefix.result
      mysql-test/suite/innodb/r/innodb_information_schema.result
      mysql-test/suite/innodb/r/innodb_monitor.result
      mysql-test/suite/innodb/r/innodb_mysql.result
      mysql-test/suite/innodb/t/innodb-create-options.test
      mysql-test/suite/innodb/t/innodb-index.test
      mysql-test/suite/innodb/t/innodb-system-table-view.test
      mysql-test/suite/innodb/t/innodb-zip.test
      mysql-test/suite/innodb/t/innodb.test
      mysql-test/suite/innodb/t/innodb_buffer_pool_load.test
      mysql-test/suite/innodb/t/innodb_bug30423.test
      mysql-test/suite/innodb/t/innodb_bug34300.test
      mysql-test/suite/innodb/t/innodb_bug36172.test
      mysql-test/suite/innodb/t/innodb_bug53591.test
      mysql-test/suite/innodb/t/innodb_bug53592.test
      mysql-test/suite/innodb/t/innodb_bug60049.test
      mysql-test/suite/innodb/t/innodb_corrupt_bit.test
      mysql-test/suite/innodb/t/innodb_index_large_prefix.test
      mysql-test/suite/innodb/t/innodb_information_schema.test
      mysql-test/suite/innodb/t/innodb_mysql.test
      mysql-test/suite/innodb/t/innodb_prefix_index_liftedlimit.test
      mysql-test/suite/innodb/t/innodb_prefix_index_restart_server.test
      mysql-test/suite/innodb/t/innodb_trx_weight.test
      mysql-test/suite/large_tests/r/rpl_slave_net_timeout.result
      mysql-test/suite/opt_trace/include/general.inc
      mysql-test/suite/opt_trace/include/range.inc
      mysql-test/suite/opt_trace/include/subquery.inc
      mysql-test/suite/opt_trace/r/bugs_no_prot_all.result
      mysql-test/suite/opt_trace/r/bugs_ps_prot_all.result
      mysql-test/suite/opt_trace/r/charset.result
      mysql-test/suite/opt_trace/r/filesort_pq.result
      mysql-test/suite/opt_trace/r/general2_no_prot.result
      mysql-test/suite/opt_trace/r/general2_ps_prot.result
      mysql-test/suite/opt_trace/r/general_no_prot_all.result
      mysql-test/suite/opt_trace/r/general_no_prot_none.result
      mysql-test/suite/opt_trace/r/general_ps_prot_all.result
      mysql-test/suite/opt_trace/r/general_ps_prot_none.result
      mysql-test/suite/opt_trace/r/range_no_prot.result
      mysql-test/suite/opt_trace/r/range_ps_prot.result
      mysql-test/suite/opt_trace/r/security_no_prot.result
      mysql-test/suite/opt_trace/r/security_ps_prot.result
      mysql-test/suite/opt_trace/r/subquery_no_prot.result
      mysql-test/suite/opt_trace/r/subquery_ps_prot.result
      mysql-test/suite/parts/r/partition_debug_innodb.result
      mysql-test/suite/parts/r/rpl-partition-dml-1-1-innodb.result
      mysql-test/suite/parts/r/rpl-partition-dml-1-1-myisam.result
      mysql-test/suite/parts/r/rpl_partition.result
      mysql-test/suite/parts/t/partition_debug_innodb.test
      mysql-test/suite/perfschema/r/relaylog.result
      mysql-test/suite/rpl/r/rpl_000010.result
      mysql-test/suite/rpl/r/rpl_000011.result
      mysql-test/suite/rpl/r/rpl_000013.result
      mysql-test/suite/rpl/r/rpl_000017.result
      mysql-test/suite/rpl/r/rpl_DML_error.result
      mysql-test/suite/rpl/r/rpl_EE_err.result
      mysql-test/suite/rpl/r/rpl_LD_INFILE.result
      mysql-test/suite/rpl/r/rpl_alter.result
      mysql-test/suite/rpl/r/rpl_alter_db.result
      mysql-test/suite/rpl/r/rpl_alter_repository.result
      mysql-test/suite/rpl/r/rpl_auto_increment.result
      mysql-test/suite/rpl/r/rpl_auto_increment_11932.result
      mysql-test/suite/rpl/r/rpl_auto_increment_bug33029.result
      mysql-test/suite/rpl/r/rpl_auto_increment_update_failure.result
      mysql-test/suite/rpl/r/rpl_begin_commit_rollback.result
      mysql-test/suite/rpl/r/rpl_binlog_corruption.result
      mysql-test/suite/rpl/r/rpl_binlog_errors.result
      mysql-test/suite/rpl/r/rpl_binlog_grant.result
      mysql-test/suite/rpl/r/rpl_bit.result
      mysql-test/suite/rpl/r/rpl_bit_npk.result
      mysql-test/suite/rpl/r/rpl_blackhole.result
      mysql-test/suite/rpl/r/rpl_bug26395.result
      mysql-test/suite/rpl/r/rpl_bug31076.result
      mysql-test/suite/rpl/r/rpl_bug33931.result
      mysql-test/suite/rpl/r/rpl_bug37426.result
      mysql-test/suite/rpl/r/rpl_bug38694.result
      mysql-test/suite/rpl/r/rpl_bug41902.result
      mysql-test/suite/rpl/r/rpl_change_master.result
      mysql-test/suite/rpl/r/rpl_change_master_crash_safe.result
      mysql-test/suite/rpl/r/rpl_change_master_dbug.result
      mysql-test/suite/rpl/r/rpl_charset.result
      mysql-test/suite/rpl/r/rpl_charset_sjis.result
      mysql-test/suite/rpl/r/rpl_checksum.result
      mysql-test/suite/rpl/r/rpl_checksum_cache.result
      mysql-test/suite/rpl/r/rpl_circular_for_4_hosts.result
      mysql-test/suite/rpl/r/rpl_colSize.result
      mysql-test/suite/rpl/r/rpl_commit_after_flush.result
      mysql-test/suite/rpl/r/rpl_concurrency_error.result
      mysql-test/suite/rpl/r/rpl_conditional_comments.result
      mysql-test/suite/rpl/r/rpl_corruption.result
      mysql-test/suite/rpl/r/rpl_crash_safe_master.result
      mysql-test/suite/rpl/r/rpl_create_database.result
      mysql-test/suite/rpl/r/rpl_create_if_not_exists.result
      mysql-test/suite/rpl/r/rpl_create_tmp_table_if_not_exists.result
      mysql-test/suite/rpl/r/rpl_cross_version.result
      mysql-test/suite/rpl/r/rpl_current_user.result
      mysql-test/suite/rpl/r/rpl_deadlock_innodb.result
      mysql-test/suite/rpl/r/rpl_delete_no_where.result
      mysql-test/suite/rpl/r/rpl_do_db_filter.result
      mysql-test/suite/rpl/r/rpl_do_grant.result
      mysql-test/suite/rpl/r/rpl_do_table_filter_insensitive.result
      mysql-test/suite/rpl/r/rpl_do_table_filter_sensitive.result
      mysql-test/suite/rpl/r/rpl_drop.result
      mysql-test/suite/rpl/r/rpl_drop_db.result
      mysql-test/suite/rpl/r/rpl_drop_temp.result
      mysql-test/suite/rpl/r/rpl_drop_view.result
      mysql-test/suite/rpl/r/rpl_dual_pos_advance.result
      mysql-test/suite/rpl/r/rpl_empty_master_host.result
      mysql-test/suite/rpl/r/rpl_err_ignoredtable.result
      mysql-test/suite/rpl/r/rpl_events.result
      mysql-test/suite/rpl/r/rpl_extra_col_master_innodb.result
      mysql-test/suite/rpl/r/rpl_extra_col_master_myisam.result
      mysql-test/suite/rpl/r/rpl_extra_col_slave_innodb.result
      mysql-test/suite/rpl/r/rpl_extra_col_slave_myisam.result
      mysql-test/suite/rpl/r/rpl_failed_optimize.result
      mysql-test/suite/rpl/r/rpl_filter_database.result
      mysql-test/suite/rpl/r/rpl_filter_tables_not_exist.result
      mysql-test/suite/rpl/r/rpl_flush_logs.result
      mysql-test/suite/rpl/r/rpl_flushlog_loop.result
      mysql-test/suite/rpl/r/rpl_foreign_key_innodb.result
      mysql-test/suite/rpl/r/rpl_free_items.result
      mysql-test/suite/rpl/r/rpl_general_log.result
      mysql-test/suite/rpl/r/rpl_geometry.result
      mysql-test/suite/rpl/r/rpl_get_lock.result
      mysql-test/suite/rpl/r/rpl_get_master_version_and_clock.result
      mysql-test/suite/rpl/r/rpl_grant.result
      mysql-test/suite/rpl/r/rpl_grant_plugin.result
      mysql-test/suite/rpl/r/rpl_heartbeat.result
      mysql-test/suite/rpl/r/rpl_heartbeat_2slaves.result
      mysql-test/suite/rpl/r/rpl_heartbeat_basic.result
      mysql-test/suite/rpl/r/rpl_heartbeat_ssl.result
      mysql-test/suite/rpl/r/rpl_idempotency.result
      mysql-test/suite/rpl/r/rpl_ignore_db_filter.result
      mysql-test/suite/rpl/r/rpl_ignore_grant.result
      mysql-test/suite/rpl/r/rpl_ignore_revoke.result
      mysql-test/suite/rpl/r/rpl_ignore_table.result
      mysql-test/suite/rpl/r/rpl_ignore_table_filter_insensitive.result
      mysql-test/suite/rpl/r/rpl_ignore_table_filter_sensitive.result
      mysql-test/suite/rpl/r/rpl_ignore_table_update.result
      mysql-test/suite/rpl/r/rpl_incident.result
      mysql-test/suite/rpl/r/rpl_init_slave.result
      mysql-test/suite/rpl/r/rpl_init_slave_errors.result
      mysql-test/suite/rpl/r/rpl_innodb_bug28430.result
      mysql-test/suite/rpl/r/rpl_innodb_bug30888.result
      mysql-test/suite/rpl/r/rpl_innodb_mixed_ddl.result
      mysql-test/suite/rpl/r/rpl_innodb_mixed_dml.result
      mysql-test/suite/rpl/r/rpl_insert.result
      mysql-test/suite/rpl/r/rpl_insert_id.result
      mysql-test/suite/rpl/r/rpl_insert_id_pk.result
      mysql-test/suite/rpl/r/rpl_insert_ignore.result
      mysql-test/suite/rpl/r/rpl_invoked_features.result
      mysql-test/suite/rpl/r/rpl_ip_mix.result
      mysql-test/suite/rpl/r/rpl_ip_mix2.result
      mysql-test/suite/rpl/r/rpl_ipv4_as_ipv6.result
      mysql-test/suite/rpl/r/rpl_ipv6.result
      mysql-test/suite/rpl/r/rpl_killed_ddl.result
      mysql-test/suite/rpl/r/rpl_known_bugs_detection.result
      mysql-test/suite/rpl/r/rpl_lcase_tblnames_rewrite_db.result
      mysql-test/suite/rpl/r/rpl_loaddata.result
      mysql-test/suite/rpl/r/rpl_loaddata_charset.result
      mysql-test/suite/rpl/r/rpl_loaddata_fatal.result
      mysql-test/suite/rpl/r/rpl_loaddata_m.result
      mysql-test/suite/rpl/r/rpl_loaddata_map.result
      mysql-test/suite/rpl/r/rpl_loaddata_s.result
      mysql-test/suite/rpl/r/rpl_loaddata_simple.result
      mysql-test/suite/rpl/r/rpl_loaddata_symlink.result
      mysql-test/suite/rpl/r/rpl_loaddatalocal.result
      mysql-test/suite/rpl/r/rpl_loadfile.result
      mysql-test/suite/rpl/r/rpl_locale.result
      mysql-test/suite/rpl/r/rpl_log_pos.result
      mysql-test/suite/rpl/r/rpl_manual_change_index_file.result
      mysql-test/suite/rpl/r/rpl_many_optimize.result
      mysql-test/suite/rpl/r/rpl_master_pos_wait.result
      mysql-test/suite/rpl/r/rpl_migration_crash_safe.result
      mysql-test/suite/rpl/r/rpl_misc_functions.result
      mysql-test/suite/rpl/r/rpl_mix_found_rows.result
      mysql-test/suite/rpl/r/rpl_mix_insert_delayed.result
      mysql-test/suite/rpl/r/rpl_mixed_binlog_max_cache_size.result
      mysql-test/suite/rpl/r/rpl_mixed_bit_pk.result
      mysql-test/suite/rpl/r/rpl_mixed_ddl_dml.result
      mysql-test/suite/rpl/r/rpl_mixed_drop_create_temp_table.result
      mysql-test/suite/rpl/r/rpl_mixed_implicit_commit_binlog.result
      mysql-test/suite/rpl/r/rpl_mixed_mixing_engines.result
      mysql-test/suite/rpl/r/rpl_mixed_mts_crash_safe.result
      mysql-test/suite/rpl/r/rpl_mixed_mts_rec_crash_safe.result
      mysql-test/suite/rpl/r/rpl_mixed_mts_rec_crash_safe_checksum.result
      mysql-test/suite/rpl/r/rpl_mts_check_concurrency.result
      mysql-test/suite/rpl/r/rpl_multi_delete.result
      mysql-test/suite/rpl/r/rpl_multi_delete2.result
      mysql-test/suite/rpl/r/rpl_multi_engine.result
      mysql-test/suite/rpl/r/rpl_multi_update.result
      mysql-test/suite/rpl/r/rpl_multi_update2.result
      mysql-test/suite/rpl/r/rpl_multi_update3.result
      mysql-test/suite/rpl/r/rpl_multi_update4.result
      mysql-test/suite/rpl/r/rpl_mysql_upgrade.result
      mysql-test/suite/rpl/r/rpl_name_const.result
      mysql-test/suite/rpl/r/rpl_non_direct_mixed_mixing_engines.result
      mysql-test/suite/rpl/r/rpl_non_direct_row_mixing_engines.result
      mysql-test/suite/rpl/r/rpl_non_direct_stm_mixing_engines.result
      mysql-test/suite/rpl/r/rpl_nondeterministic_functions.result
      mysql-test/suite/rpl/r/rpl_not_null_innodb.result
      mysql-test/suite/rpl/r/rpl_not_null_myisam.result
      mysql-test/suite/rpl/r/rpl_optimize.result
      mysql-test/suite/rpl/r/rpl_packet.result
      mysql-test/suite/rpl/r/rpl_parallel.result
      mysql-test/suite/rpl/r/rpl_parallel_conf_limits.result
      mysql-test/suite/rpl/r/rpl_parallel_conflicts.result
      mysql-test/suite/rpl/r/rpl_parallel_ddl.result
      mysql-test/suite/rpl/r/rpl_parallel_innodb.result
      mysql-test/suite/rpl/r/rpl_parallel_multi_db.result
      mysql-test/suite/rpl/r/rpl_parallel_seconds_behind_master.result
      mysql-test/suite/rpl/r/rpl_parallel_start_stop.result
      mysql-test/suite/rpl/r/rpl_parallel_switch_sequential.result
      mysql-test/suite/rpl/r/rpl_parallel_temp_query.result
      mysql-test/suite/rpl/r/rpl_partition_archive.result
      mysql-test/suite/rpl/r/rpl_partition_innodb.result
      mysql-test/suite/rpl/r/rpl_partition_memory.result
      mysql-test/suite/rpl/r/rpl_partition_myisam.result
      mysql-test/suite/rpl/r/rpl_plugin_load.result
      mysql-test/suite/rpl/r/rpl_ps.result
      mysql-test/suite/rpl/r/rpl_rbr_to_sbr.result
      mysql-test/suite/rpl/r/rpl_read_old_relay_log_info.result
      mysql-test/suite/rpl/r/rpl_read_only.result
      mysql-test/suite/rpl/r/rpl_relay_space_innodb.result
      mysql-test/suite/rpl/r/rpl_relay_space_myisam.result
      mysql-test/suite/rpl/r/rpl_relayrotate.result
      mysql-test/suite/rpl/r/rpl_relayspace.result
      mysql-test/suite/rpl/r/rpl_replicate_do.result
      mysql-test/suite/rpl/r/rpl_replicate_ignore_db.result
      mysql-test/suite/rpl/r/rpl_report.result
      mysql-test/suite/rpl/r/rpl_rewrite_db_filter.result
      mysql-test/suite/rpl/r/rpl_rewrt_db.result
      mysql-test/suite/rpl/r/rpl_rotate_logs.result
      mysql-test/suite/rpl/r/rpl_rotate_purge_deadlock.result
      mysql-test/suite/rpl/r/rpl_row_001.result
      mysql-test/suite/rpl/r/rpl_row_4_bytes.result
      mysql-test/suite/rpl/r/rpl_row_NOW.result
      mysql-test/suite/rpl/r/rpl_row_USER.result
      mysql-test/suite/rpl/r/rpl_row_UUID.result
      mysql-test/suite/rpl/r/rpl_row_basic_11bugs.result
      mysql-test/suite/rpl/r/rpl_row_basic_2myisam.result
      mysql-test/suite/rpl/r/rpl_row_basic_3innodb.result
      mysql-test/suite/rpl/r/rpl_row_basic_8partition.result
      mysql-test/suite/rpl/r/rpl_row_binlog_max_cache_size.result
      mysql-test/suite/rpl/r/rpl_row_blob_innodb.result
      mysql-test/suite/rpl/r/rpl_row_blob_myisam.result
      mysql-test/suite/rpl/r/rpl_row_colSize.result
      mysql-test/suite/rpl/r/rpl_row_conflicts.result
      mysql-test/suite/rpl/r/rpl_row_corruption.result
      mysql-test/suite/rpl/r/rpl_row_crash_safe.result
      mysql-test/suite/rpl/r/rpl_row_delayed_ins.result
      mysql-test/suite/rpl/r/rpl_row_drop.result
      mysql-test/suite/rpl/r/rpl_row_drop_create_temp_table.result
      mysql-test/suite/rpl/r/rpl_row_event_max_size.result
      mysql-test/suite/rpl/r/rpl_row_find_row.result
      mysql-test/suite/rpl/r/rpl_row_flsh_tbls.result
      mysql-test/suite/rpl/r/rpl_row_func001.result
      mysql-test/suite/rpl/r/rpl_row_func002.result
      mysql-test/suite/rpl/r/rpl_row_func003.result
      mysql-test/suite/rpl/r/rpl_row_idempotency.result
      mysql-test/suite/rpl/r/rpl_row_ignorable_event.result
      mysql-test/suite/rpl/r/rpl_row_img_blobs.result
      mysql-test/suite/rpl/r/rpl_row_img_eng_full.result
      mysql-test/suite/rpl/r/rpl_row_img_eng_min.result
      mysql-test/suite/rpl/r/rpl_row_img_eng_noblob.result
      mysql-test/suite/rpl/r/rpl_row_img_idx_full.result
      mysql-test/suite/rpl/r/rpl_row_img_idx_min.result
      mysql-test/suite/rpl/r/rpl_row_img_idx_noblob.result
      mysql-test/suite/rpl/r/rpl_row_img_misc.result
      mysql-test/suite/rpl/r/rpl_row_img_sanity.result
      mysql-test/suite/rpl/r/rpl_row_implicit_commit_binlog.result
      mysql-test/suite/rpl/r/rpl_row_inexist_tbl.result
      mysql-test/suite/rpl/r/rpl_row_insert_delayed.result
      mysql-test/suite/rpl/r/rpl_row_lcase_tblnames.result
      mysql-test/suite/rpl/r/rpl_row_log.result
      mysql-test/suite/rpl/r/rpl_row_log_innodb.result
      mysql-test/suite/rpl/r/rpl_row_max_relay_size.result
      mysql-test/suite/rpl/r/rpl_row_mixing_engines.result
      mysql-test/suite/rpl/r/rpl_row_mts_crash_safe.result
      mysql-test/suite/rpl/r/rpl_row_mts_rec_crash_safe.result
      mysql-test/suite/rpl/r/rpl_row_mysqlbinlog.result
      mysql-test/suite/rpl/r/rpl_row_rec_comp_innodb.result
      mysql-test/suite/rpl/r/rpl_row_rec_comp_myisam.result
      mysql-test/suite/rpl/r/rpl_row_record_find_myisam.result
      mysql-test/suite/rpl/r/rpl_row_reset_slave.result
      mysql-test/suite/rpl/r/rpl_row_show_relaylog_events.result
      mysql-test/suite/rpl/r/rpl_row_sp001.result
      mysql-test/suite/rpl/r/rpl_row_sp002_innodb.result
      mysql-test/suite/rpl/r/rpl_row_sp003.result
      mysql-test/suite/rpl/r/rpl_row_sp005.result
      mysql-test/suite/rpl/r/rpl_row_sp006_InnoDB.result
      mysql-test/suite/rpl/r/rpl_row_sp007_innodb.result
      mysql-test/suite/rpl/r/rpl_row_sp008.result
      mysql-test/suite/rpl/r/rpl_row_sp009.result
      mysql-test/suite/rpl/r/rpl_row_sp010.result
      mysql-test/suite/rpl/r/rpl_row_sp011.result
      mysql-test/suite/rpl/r/rpl_row_sp012.result
      mysql-test/suite/rpl/r/rpl_row_tabledefs_2myisam.result
      mysql-test/suite/rpl/r/rpl_row_tabledefs_3innodb.result
      mysql-test/suite/rpl/r/rpl_row_tbl_metadata.result
      mysql-test/suite/rpl/r/rpl_row_trig001.result
      mysql-test/suite/rpl/r/rpl_row_trig002.result
      mysql-test/suite/rpl/r/rpl_row_trig003.result
      mysql-test/suite/rpl/r/rpl_row_trig004.result
      mysql-test/suite/rpl/r/rpl_row_trunc_temp.result
      mysql-test/suite/rpl/r/rpl_row_unsafe_funcs.result
      mysql-test/suite/rpl/r/rpl_row_utf16.result
      mysql-test/suite/rpl/r/rpl_row_utf32.result
      mysql-test/suite/rpl/r/rpl_row_view01.result
      mysql-test/suite/rpl/r/rpl_row_wide_table.result
      mysql-test/suite/rpl/r/rpl_savepoint.result
      mysql-test/suite/rpl/r/rpl_seconds_behind_master.result
      mysql-test/suite/rpl/r/rpl_semi_sync.result
      mysql-test/suite/rpl/r/rpl_semi_sync_event.result
      mysql-test/suite/rpl/r/rpl_sequential.result
      mysql-test/suite/rpl/r/rpl_server_id1.result
      mysql-test/suite/rpl/r/rpl_server_id2.result
      mysql-test/suite/rpl/r/rpl_server_id_ignore.result
      mysql-test/suite/rpl/r/rpl_server_uuid.result
      mysql-test/suite/rpl/r/rpl_session_var.result
      mysql-test/suite/rpl/r/rpl_set_charset.result
      mysql-test/suite/rpl/r/rpl_set_null_innodb.result
      mysql-test/suite/rpl/r/rpl_set_null_myisam.result
      mysql-test/suite/rpl/r/rpl_show_errors.result
      mysql-test/suite/rpl/r/rpl_show_master_info_file.result
      mysql-test/suite/rpl/r/rpl_show_slave_hosts.result
      mysql-test/suite/rpl/r/rpl_show_slave_running.result
      mysql-test/suite/rpl/r/rpl_skip_error.result
      mysql-test/suite/rpl/r/rpl_skip_incident.result
      mysql-test/suite/rpl/r/rpl_slave_grp_exec.result
      mysql-test/suite/rpl/r/rpl_slave_load_in.result
      mysql-test/suite/rpl/r/rpl_slave_load_remove_tmpfile.result
      mysql-test/suite/rpl/r/rpl_slave_load_tmpdir_not_exist.result
      mysql-test/suite/rpl/r/rpl_slave_skip.result
      mysql-test/suite/rpl/r/rpl_slave_start.result
      mysql-test/suite/rpl/r/rpl_slave_status.result
      mysql-test/suite/rpl/r/rpl_slow_query_log.result
      mysql-test/suite/rpl/r/rpl_sp.result
      mysql-test/suite/rpl/r/rpl_sp004.result
      mysql-test/suite/rpl/r/rpl_sp_effects.result
      mysql-test/suite/rpl/r/rpl_spec_variables.result
      mysql-test/suite/rpl/r/rpl_sporadic_master.result
      mysql-test/suite/rpl/r/rpl_ssl.result
      mysql-test/suite/rpl/r/rpl_ssl1.result
      mysql-test/suite/rpl/r/rpl_stm_000001.result
      mysql-test/suite/rpl/r/rpl_stm_EE_err2.result
      mysql-test/suite/rpl/r/rpl_stm_auto_increment_bug33029.result
      mysql-test/suite/rpl/r/rpl_stm_binlog_max_cache_size.result
      mysql-test/suite/rpl/r/rpl_stm_conflicts.result
      mysql-test/suite/rpl/r/rpl_stm_drop_create_temp_table.result
      mysql-test/suite/rpl/r/rpl_stm_flsh_tbls.result
      mysql-test/suite/rpl/r/rpl_stm_found_rows.result
      mysql-test/suite/rpl/r/rpl_stm_implicit_commit_binlog.result
      mysql-test/suite/rpl/r/rpl_stm_innodb.result
      mysql-test/suite/rpl/r/rpl_stm_insert_delayed.result
      mysql-test/suite/rpl/r/rpl_stm_lcase_tblnames.result
      mysql-test/suite/rpl/r/rpl_stm_loaddata_concurrent.result
      mysql-test/suite/rpl/r/rpl_stm_loadfile.result
      mysql-test/suite/rpl/r/rpl_stm_log.result
      mysql-test/suite/rpl/r/rpl_stm_max_relay_size.result
      mysql-test/suite/rpl/r/rpl_stm_mix_show_relaylog_events.result
      mysql-test/suite/rpl/r/rpl_stm_mixed_crash_safe.result
      mysql-test/suite/rpl/r/rpl_stm_mixing_engines.result
      mysql-test/suite/rpl/r/rpl_stm_mts_crash_safe.result
      mysql-test/suite/rpl/r/rpl_stm_mts_rec_crash_safe.result
      mysql-test/suite/rpl/r/rpl_stm_multi_query.result
      mysql-test/suite/rpl/r/rpl_stm_no_op.result
      mysql-test/suite/rpl/r/rpl_stm_reset_slave.result
      mysql-test/suite/rpl/r/rpl_stm_sql_mode.result
      mysql-test/suite/rpl/r/rpl_stm_start_stop_slave.result
      mysql-test/suite/rpl/r/rpl_stm_stop_middle_group.result
      mysql-test/suite/rpl/r/rpl_stm_user_variables.result
      mysql-test/suite/rpl/r/rpl_stop_slave.result
      mysql-test/suite/rpl/r/rpl_switch_stm_row_mixed.result
      mysql-test/suite/rpl/r/rpl_sync.result
      mysql-test/suite/rpl/r/rpl_temp_table.result
      mysql-test/suite/rpl/r/rpl_temp_table_mix_row.result
      mysql-test/suite/rpl/r/rpl_temporal_fractional.result
      mysql-test/suite/rpl/r/rpl_temporary.result
      mysql-test/suite/rpl/r/rpl_temporary_errors.result
      mysql-test/suite/rpl/r/rpl_test_framework.result
      mysql-test/suite/rpl/r/rpl_timezone.result
      mysql-test/suite/rpl/r/rpl_tmp_table_and_DDL.result
      mysql-test/suite/rpl/r/rpl_trigger.result
      mysql-test/suite/rpl/r/rpl_trunc_temp.result
      mysql-test/suite/rpl/r/rpl_truncate_2myisam.result
      mysql-test/suite/rpl/r/rpl_truncate_3innodb.result
      mysql-test/suite/rpl/r/rpl_typeconv.result
      mysql-test/suite/rpl/r/rpl_typeconv_innodb.result
      mysql-test/suite/rpl/r/rpl_udf.result
      mysql-test/suite/rpl/r/rpl_user.result
      mysql-test/suite/rpl/r/rpl_user_variables.result
      mysql-test/suite/rpl/r/rpl_variables.result
      mysql-test/suite/rpl/r/rpl_variables_stm.result
      mysql-test/suite/rpl/r/rpl_view.result
      mysql-test/suite/rpl/r/rpl_view_multi.result
      mysql-test/suite/sys_vars/inc/delayed_queue_size_basic.inc
      mysql-test/suite/sys_vars/inc/query_cache_size_basic.inc
      mysql-test/suite/sys_vars/r/innodb_monitor_disable_basic.result
      mysql-test/suite/sys_vars/r/innodb_monitor_enable_basic.result
      mysql-test/suite/sys_vars/r/innodb_monitor_reset_all_basic.result
      mysql-test/suite/sys_vars/r/innodb_monitor_reset_basic.result
      mysql-test/suite/sys_vars/r/log_warnings_basic_32.result
      mysql-test/suite/sys_vars/r/query_cache_size_basic_32.result
      mysql-test/suite/sys_vars/r/query_cache_size_basic_64.result
      mysql-test/suite/sys_vars/r/relay_log_basename_basic.result
      mysql-test/suite/sys_vars/r/relay_log_index_basic.result
      mysql-test/suite/sys_vars/r/rpl_init_slave_func.result
      mysql-test/suite/sys_vars/t/delayed_insert_timeout_basic.test
      mysql-test/suite/sys_vars/t/disabled.def
      mysql-test/suite/sys_vars/t/innodb_buffer_pool_load_at_startup_basic.test
      mysql-test/t/ctype_utf8mb4_innodb.test
      mysql-test/t/derived.test
      mysql-test/t/distinct.test
      mysql-test/t/func_analyse.test
      mysql-test/t/func_misc.test
      mysql-test/t/func_str.test
      mysql-test/t/gis.test
      mysql-test/t/group_by.test
      mysql-test/t/group_min_max_innodb.test
      mysql-test/t/innodb_mysql_lock.test
      mysql-test/t/mysql_plugin.test
      mysql-test/t/mysql_upgrade.test
      mysql-test/t/mysqlbinlog_row_innodb.test
      mysql-test/t/not_partition.test
      mysql-test/t/partition_disabled.test
      mysql-test/t/partition_innodb.test
      mysql-test/t/partition_innodb_plugin.test
      mysql-test/t/partition_myisam.test
      mysql-test/t/plugin_auth.test
      mysql-test/t/ps_1general.test
      mysql-test/t/rewrite_general_log.test
      mysql-test/t/sp.test
      mysql-test/t/type_newdecimal.test
      mysql-test/t/view.test
      mysql-test/t/view_grant.test
      mysql-test/valgrind.supp
      mysys/my_handler_errors.h
      scripts/mysql_config.sh
      scripts/mysqld_safe.sh
      sql/CMakeLists.txt
      sql/filesort.cc
      sql/ha_partition.cc
      sql/handler.cc
      sql/handler.h
      sql/item.cc
      sql/item.h
      sql/item_func.cc
      sql/item_geofunc.cc
      sql/item_strfunc.cc
      sql/lex.h
      sql/log_event.cc
      sql/log_event.h
      sql/mdl.cc
      sql/mdl.h
      sql/my_decimal.h
      sql/mysqld.cc
      sql/mysqld.h
      sql/opt_explain.cc
      sql/opt_range.cc
      sql/rpl_handler.cc
      sql/rpl_master.cc
      sql/rpl_mi.cc
      sql/rpl_mi.h
      sql/rpl_rli.cc
      sql/rpl_rli.h
      sql/rpl_slave.cc
      sql/share/errmsg-utf8.txt
      sql/sp_head.cc
      sql/sql_acl.cc
      sql/sql_bitmap.h
      sql/sql_cache.cc
      sql/sql_class.h
      sql/sql_const.h
      sql/sql_derived.cc
      sql/sql_lex.cc
      sql/sql_lex.h
      sql/sql_parse.cc
      sql/sql_partition.cc
      sql/sql_plist.h
      sql/sql_reload.cc
      sql/sql_select.cc
      sql/sql_select.h
      sql/sql_table.cc
      sql/sql_union.cc
      sql/sql_view.cc
      sql/sql_yacc.yy
      sql/sys_vars.cc
      sql/table.cc
      sql/table.h
      storage/innobase/CMakeLists.txt
      storage/innobase/btr/btr0btr.c
      storage/innobase/btr/btr0cur.c
      storage/innobase/buf/buf0buddy.c
      storage/innobase/buf/buf0buf.c
      storage/innobase/buf/buf0checksum.c
      storage/innobase/buf/buf0flu.c
      storage/innobase/dict/dict0crea.c
      storage/innobase/dict/dict0dict.c
      storage/innobase/dict/dict0load.c
      storage/innobase/dict/dict0mem.c
      storage/innobase/dict/dict0stats.c
      storage/innobase/eval/eval0eval.c
      storage/innobase/fil/fil0fil.c
      storage/innobase/fsp/fsp0fsp.c
      storage/innobase/handler/ha_innodb.cc
      storage/innobase/handler/ha_innodb.h
      storage/innobase/handler/handler0alter.cc
      storage/innobase/handler/i_s.cc
      storage/innobase/handler/i_s.h
      storage/innobase/ibuf/ibuf0ibuf.c
      storage/innobase/include/btr0cur.h
      storage/innobase/include/buf0buf.h
      storage/innobase/include/buf0buf.ic
      storage/innobase/include/buf0checksum.h
      storage/innobase/include/buf0types.h
      storage/innobase/include/data0type.h
      storage/innobase/include/data0type.ic
      storage/innobase/include/db0err.h
      storage/innobase/include/dict0dict.h
      storage/innobase/include/dict0dict.ic
      storage/innobase/include/dict0mem.h
      storage/innobase/include/fil0fil.h
      storage/innobase/include/fsp0fsp.h
      storage/innobase/include/fsp0fsp.ic
      storage/innobase/include/fsp0types.h
      storage/innobase/include/ha_prototypes.h
      storage/innobase/include/lock0types.h
      storage/innobase/include/mach0data.h
      storage/innobase/include/mach0data.ic
      storage/innobase/include/os0sync.h
      storage/innobase/include/pars0grm.h
      storage/innobase/include/pars0pars.h
      storage/innobase/include/pars0sym.h
      storage/innobase/include/que0que.h
      storage/innobase/include/que0que.ic
      storage/innobase/include/read0read.h
      storage/innobase/include/rem0cmp.h
      storage/innobase/include/rem0cmp.ic
      storage/innobase/include/rem0rec.h
      storage/innobase/include/rem0rec.ic
      storage/innobase/include/row0merge.h
      storage/innobase/include/row0mysql.h
      storage/innobase/include/row0sel.h
      storage/innobase/include/row0upd.h
      storage/innobase/include/row0upd.ic
      storage/innobase/include/srv0mon.h
      storage/innobase/include/srv0srv.h
      storage/innobase/include/srv0start.h
      storage/innobase/include/sync0rw.h
      storage/innobase/include/sync0sync.h
      storage/innobase/include/trx0i_s.h
      storage/innobase/include/trx0sys.h
      storage/innobase/include/trx0sys.ic
      storage/innobase/include/trx0trx.h
      storage/innobase/include/trx0trx.ic
      storage/innobase/include/trx0undo.h
      storage/innobase/include/univ.i
      storage/innobase/include/ut0dbg.h
      storage/innobase/include/ut0list.h
      storage/innobase/include/ut0list.ic
      storage/innobase/include/ut0mem.h
      storage/innobase/include/ut0rbt.h
      storage/innobase/include/ut0rnd.h
      storage/innobase/include/ut0rnd.ic
      storage/innobase/include/ut0ut.h
      storage/innobase/include/ut0vec.h
      storage/innobase/include/ut0vec.ic
      storage/innobase/include/ut0wqueue.h
      storage/innobase/lock/lock0lock.c
      storage/innobase/log/log0recv.c
      storage/innobase/os/os0file.c
      storage/innobase/os/os0sync.c
      storage/innobase/page/page0page.c
      storage/innobase/pars/lexyy.c
      storage/innobase/pars/pars0grm.c
      storage/innobase/pars/pars0grm.y
      storage/innobase/pars/pars0lex.l
      storage/innobase/pars/pars0opt.c
      storage/innobase/pars/pars0pars.c
      storage/innobase/pars/pars0sym.c
      storage/innobase/read/read0read.c
      storage/innobase/rem/rem0cmp.c
      storage/innobase/rem/rem0rec.c
      storage/innobase/row/row0ins.c
      storage/innobase/row/row0merge.c
      storage/innobase/row/row0mysql.c
      storage/innobase/row/row0purge.c
      storage/innobase/row/row0sel.c
      storage/innobase/row/row0uins.c
      storage/innobase/row/row0umod.c
      storage/innobase/row/row0upd.c
      storage/innobase/row/row0vers.c
      storage/innobase/srv/srv0mon.c
      storage/innobase/srv/srv0srv.c
      storage/innobase/srv/srv0start.c
      storage/innobase/sync/sync0sync.c
      storage/innobase/trx/trx0i_s.c
      storage/innobase/trx/trx0purge.c
      storage/innobase/trx/trx0roll.c
      storage/innobase/trx/trx0sys.c
      storage/innobase/trx/trx0trx.c
      storage/innobase/trx/trx0undo.c
      storage/innobase/ut/ut0list.c
      storage/innobase/ut/ut0mem.c
      storage/innobase/ut/ut0rbt.c
      storage/innobase/ut/ut0ut.c
      storage/innobase/ut/ut0vec.c
      storage/innobase/ut/ut0wqueue.c
      storage/myisam/ha_myisam.cc
      storage/myisam/ha_myisam.h
      strings/decimal.c
      support-files/mysql.spec.sh
      tests/mysql_client_test.c
      unittest/gunit/CMakeLists.txt
      unittest/gunit/my_decimal-t.cc
      storage/innobase/fts/fts0fts.c
=== modified file 'mysql-test/r/create-big.result'
--- a/mysql-test/r/create-big.result	2010-05-24 13:54:08 +0000
+++ b/mysql-test/r/create-big.result	2011-11-21 11:28:32 +0000
@@ -1,7 +1,10 @@
 drop table if exists t1,t2,t3,t4,t5;
-set session debug="+d,sleep_create_select_before_create";
+set debug_sync='RESET';
+set debug_sync='create_table_select_before_create SIGNAL parked WAIT_FOR go';
 create table t1 select 1 as i;;
-create table t1 (j char(5));
+set debug_sync='now WAIT_FOR parked';
+create table t1 (j char(5));;
+set debug_sync='now SIGNAL go';
 ERROR 42S01: Table 't1' already exists
 show create table t1;
 Table	Create Table
@@ -9,8 +12,11 @@ t1	CREATE TABLE `t1` (
   `i` int(1) NOT NULL DEFAULT '0'
 ) ENGINE=MyISAM DEFAULT CHARSET=latin1
 drop table t1;
+set debug_sync='create_table_select_before_create SIGNAL parked WAIT_FOR go';
 create table t1 select 1 as i;;
-create table t1 select "Test" as j;
+set debug_sync='now WAIT_FOR parked';
+create table t1 select 'Test' as j;;
+set debug_sync='now SIGNAL go';
 ERROR 42S01: Table 't1' already exists
 show create table t1;
 Table	Create Table
@@ -19,8 +25,11 @@ t1	CREATE TABLE `t1` (
 ) ENGINE=MyISAM DEFAULT CHARSET=latin1
 drop table t1;
 create table t3 (j char(5));
+set debug_sync='create_table_select_before_create SIGNAL parked WAIT_FOR go';
 create table t1 select 1 as i;;
-create table t1 like t3;
+set debug_sync='now WAIT_FOR parked';
+create table t1 like t3;;
+set debug_sync='now SIGNAL go';
 ERROR 42S01: Table 't1' already exists
 show create table t1;
 Table	Create Table
@@ -28,8 +37,11 @@ t1	CREATE TABLE `t1` (
   `i` int(1) NOT NULL DEFAULT '0'
 ) ENGINE=MyISAM DEFAULT CHARSET=latin1
 drop table t1;
+set debug_sync='create_table_select_before_create SIGNAL parked WAIT_FOR go';
 create table t1 select 1 as i;;
-rename table t3 to t1;
+set debug_sync='now WAIT_FOR parked';
+rename table t3 to t1;;
+set debug_sync='now SIGNAL go';
 ERROR 42S01: Table 't1' already exists
 show create table t1;
 Table	Create Table
@@ -37,82 +49,117 @@ t1	CREATE TABLE `t1` (
   `i` int(1) NOT NULL DEFAULT '0'
 ) ENGINE=MyISAM DEFAULT CHARSET=latin1
 drop table t1;
+set debug_sync='create_table_select_before_create SIGNAL parked WAIT_FOR go';
 create table t1 select 1 as i;;
+set debug_sync='now WAIT_FOR parked';
 alter table t3 rename to t1;
 ERROR 42S01: Table 't1' already exists
+set debug_sync='now SIGNAL go';
 show create table t1;
 Table	Create Table
 t1	CREATE TABLE `t1` (
   `i` int(1) NOT NULL DEFAULT '0'
 ) ENGINE=MyISAM DEFAULT CHARSET=latin1
 drop table t1;
+set debug_sync='create_table_select_before_create SIGNAL parked WAIT_FOR go';
 create table t1 select 1 as i;;
+set debug_sync='now WAIT_FOR parked';
 alter table t3 rename to t1, add k int;
 ERROR 42S01: Table 't1' already exists
+set debug_sync='now SIGNAL go';
 show create table t1;
 Table	Create Table
 t1	CREATE TABLE `t1` (
   `i` int(1) NOT NULL DEFAULT '0'
 ) ENGINE=MyISAM DEFAULT CHARSET=latin1
-drop table t1, t3;
-set session debug="-d,sleep_create_select_before_create:+d,sleep_create_select_before_open";
+drop table t1,t3;
+set debug_sync='create_table_select_before_open SIGNAL parked WAIT_FOR go';
+set debug_sync='create_table_select_before_open SIGNAL parked WAIT_FOR go';
 create table t1 select 1 as i;;
-drop table t1;
+set debug_sync='now WAIT_FOR parked';
+drop table t1;;
+set debug_sync='now SIGNAL go';
+set debug_sync='create_table_select_before_create SIGNAL parked WAIT_FOR go';
 create table t1 select 1 as i;;
-rename table t1 to t2;
+set debug_sync='now WAIT_FOR parked';
+rename table t1 to t2;;
+set debug_sync='now SIGNAL go';
 drop table t2;
+set debug_sync='create_table_select_before_create SIGNAL parked WAIT_FOR go';
 create table t1 select 1 as i;;
-select * from t1;
+set debug_sync='now WAIT_FOR parked';
+select * from t1;;
+set debug_sync='now SIGNAL go';
 i
 1
 drop table t1;
+set debug_sync='create_table_select_before_create SIGNAL parked WAIT_FOR go';
 create table t1 select 1 as i;;
-insert into t1 values (2);
+set debug_sync='now WAIT_FOR parked';
+insert into t1 values (2);;
+set debug_sync='now SIGNAL go';
 select * from t1;
 i
 1
 2
 drop table t1;
 set @a:=0;
+set debug_sync='create_table_select_before_create SIGNAL parked WAIT_FOR go';
 create table t1 select 1 as i;;
-create trigger t1_bi before insert on t1 for each row set @a:=1;
+set debug_sync='now WAIT_FOR parked';
+create trigger t1_bi before insert on t1 for each row set @a:=1;;
+set debug_sync='now SIGNAL go';
 select @a;
 @a
 0
 drop table t1;
-set session debug="-d,sleep_create_select_before_open:+d,sleep_create_select_before_lock";
-create table t1 select 1 as i;;
-drop table t1;
+set debug_sync='create_table_select_before_lock SIGNAL parked WAIT_FOR go';
 create table t1 select 1 as i;;
-rename table t1 to t2;
-drop table t2;
-create table t1 select 1 as i;;
-select * from t1;
+set debug_sync='now WAIT_FOR parked';
+drop table t1;;
+set debug_sync='now SIGNAL go';
+set debug_sync='create_table_select_before_lock SIGNAL parked WAIT_FOR go';
+create table t1 select 1 as i;;
+set debug_sync='now WAIT_FOR parked';
+rename table t1 to t2;;
+set debug_sync='now SIGNAL go';
+drop table t2;
+set debug_sync='create_table_select_before_lock SIGNAL parked WAIT_FOR go';
+create table t1 select 1 as i;;
+set debug_sync='now WAIT_FOR parked';
+select * from t1;;
+set debug_sync='now SIGNAL go';
 i
 1
 drop table t1;
+set debug_sync='create_table_select_before_lock SIGNAL parked WAIT_FOR go';
 create table t1 select 1 as i;;
-insert into t1 values (2);
+set debug_sync='now WAIT_FOR parked';
+insert into t1 values (2);;
+set debug_sync='now SIGNAL go';
 select * from t1;
 i
 1
 2
 drop table t1;
 set @a:=0;
+set debug_sync='create_table_select_before_lock SIGNAL parked WAIT_FOR go';
 create table t1 select 1 as i;;
-create trigger t1_bi before insert on t1 for each row set @a:=1;
+set debug_sync='now WAIT_FOR parked';
+create trigger t1_bi before insert on t1 for each row set @a:=1;;
+set debug_sync='now SIGNAL go';
 select @a;
 @a
 0
 drop table t1;
-set session debug="-d,sleep_create_select_before_lock:+d,sleep_create_select_before_check_if_exists";
-create table t1 (i int);
+set debug_sync='create_table_select_before_check_if_exists SIGNAL parked WAIT_FOR go';
 create table if not exists t1 select 1 as i;;
-drop table t1;
-Warnings:
-Note	1050	Table 't1' already exists
+set debug_sync='now WAIT_FOR parked';
+drop table t1;;
+set debug_sync='now SIGNAL go';
 create table t1 (i int);
 set @a:=0;
+set debug_sync='create_table_select_before_check_if_exists SIGNAL parked WAIT_FOR go';
 create table if not exists t1 select 1 as i;;
 create trigger t1_bi before insert on t1 for each row set @a:=1;
 Warnings:
@@ -122,53 +169,17 @@ select @a;
 0
 select * from t1;
 i
-1
 drop table t1;
-set session debug="-d,sleep_create_select_before_check_if_exists";
-create table t2 (a int);
-create table t4 (b int);
-lock table t4 write;
-select 1;
-1
-1
-create table t3 as select * from t4;;
-create table t1 select * from t2, t3;;
-unlock tables;
-select * from t1;
-a	b
-show create table t1;
-Table	Create Table
-t1	CREATE TABLE `t1` (
-  `a` int(11) DEFAULT NULL,
-  `b` int(11) DEFAULT NULL
-) ENGINE=MyISAM DEFAULT CHARSET=latin1
-drop table t1, t3;
-lock table t4 read;
-select 1;
-1
-1
-rename table t4 to t3;;
-create table if not exists t1 select 1 as i from t2, t3;;
-create table t5 (j int);
-rename table t5 to t1;
-unlock tables;
-Warnings:
-Note	1050	Table 't1' already exists
-select * from t1;
-j
-show create table t1;
-Table	Create Table
-t1	CREATE TABLE `t1` (
-  `j` int(11) DEFAULT NULL
-) ENGINE=MyISAM DEFAULT CHARSET=latin1
-drop table t1, t2, t3;
 drop table if exists t1,t2;
+set debug_sync='RESET';
 create table t1 (i int);
-set session debug="+d,sleep_create_like_before_check_if_exists";
+set debug_sync='create_table_like_after_open SIGNAL parked WAIT_FOR go';
 reset master;
 create table t2 like t1;;
+set debug_sync='now WAIT_FOR parked';
 insert into t1 values (1);
-drop table t1;
+drop table t1;;
+set debug_sync='now SIGNAL go';
 show create table t2;
 Table	Create Table
 t2	CREATE TABLE `t2` (
@@ -177,71 +188,41 @@ t2	CREATE TABLE `t2` (
 drop table t2;
 show binlog events from <binlog_start>;
 Log_name	Pos	Event_type	Server_id	End_log_pos	Info
+master-bin.000001	#	Query	#	#	BEGIN
 master-bin.000001	#	Query	#	#	use `test`; insert into t1 values (1)
+master-bin.000001	#	Query	#	#	COMMIT
 master-bin.000001	#	Query	#	#	use `test`; create table t2 like t1
-master-bin.000001	#	Query	#	#	use `test`; drop table t1
-master-bin.000001	#	Query	#	#	use `test`; drop table t2
+master-bin.000001	#	Query	#	#	use `test`; DROP TABLE `t1` /* generated by server */
+master-bin.000001	#	Query	#	#	use `test`; DROP TABLE `t2` /* generated by server */
 create table t1 (i int);
-set session debug="-d,sleep_create_like_before_check_if_exists:+d,sleep_create_like_before_copy";
-create table t2 like t1;;
-create table if not exists t2 (j int);
-Warnings:
-Note	1050	Table 't2' already exists
-show create table t2;
-Table	Create Table
-t2	CREATE TABLE `t2` (
-  `i` int(11) DEFAULT NULL
-) ENGINE=MyISAM DEFAULT CHARSET=latin1
-drop table t2;
+set debug_sync='create_table_like_before_binlog SIGNAL parked WAIT_FOR go';
 reset master;
 create table t2 like t1;;
-drop table t1;
-drop table t2;
-show binlog events from <binlog_start>;
-Log_name	Pos	Event_type	Server_id	End_log_pos	Info
-master-bin.000001	#	Query	#	#	use `test`; create table t2 like t1
-master-bin.000001	#	Query	#	#	use `test`; drop table t1
-master-bin.000001	#	Query	#	#	use `test`; drop table t2
-create table t1 (i int);
-set session debug="-d,sleep_create_like_before_copy:+d,sleep_create_like_before_ha_create";
-reset master;
-create table t2 like t1;;
-insert into t2 values (1);
-drop table t2;
-create table t2 like t1;;
-drop table t2;
-create table t2 like t1;;
-drop table t1;
-drop table t2;
-show binlog events from <binlog_start>;
-Log_name	Pos	Event_type	Server_id	End_log_pos	Info
-master-bin.000001	#	Query	#	#	use `test`; create table t2 like t1
-master-bin.000001	#	Query	#	#	use `test`; insert into t2 values (1)
-master-bin.000001	#	Query	#	#	use `test`; drop table t2
-master-bin.000001	#	Query	#	#	use `test`; create table t2 like t1
-master-bin.000001	#	Query	#	#	use `test`; drop table t2
-master-bin.000001	#	Query	#	#	use `test`; create table t2 like t1
-master-bin.000001	#	Query	#	#	use `test`; drop table t1
-master-bin.000001	#	Query	#	#	use `test`; drop table t2
-create table t1 (i int);
-set session debug="-d,sleep_create_like_before_ha_create:+d,sleep_create_like_before_binlogging";
-reset master;
-create table t2 like t1;;
-insert into t2 values (1);
-drop table t2;
-create table t2 like t1;;
-drop table t2;
-create table t2 like t1;;
-drop table t1;
+set debug_sync='now WAIT_FOR parked';
+insert into t2 values (1);;
+set debug_sync='now SIGNAL go';
+drop table t2;
+set debug_sync='create_table_like_before_binlog SIGNAL parked WAIT_FOR go';
+create table t2 like t1;;
+set debug_sync='now WAIT_FOR parked';
+drop table t2;;
+set debug_sync='now SIGNAL go';
+set debug_sync='create_table_like_before_binlog SIGNAL parked WAIT_FOR go';
+create table t2 like t1;;
+set debug_sync='now WAIT_FOR parked';
+drop table t1;;
+set debug_sync='now SIGNAL go';
 drop table t2;
+set debug_sync='RESET';
 show binlog events from <binlog_start>;
 Log_name	Pos	Event_type	Server_id	End_log_pos	Info
 master-bin.000001	#	Query	#	#	use `test`; create table t2 like t1
+master-bin.000001	#	Query	#	#	BEGIN
 master-bin.000001	#	Query	#	#	use `test`; insert into t2 values (1)
-master-bin.000001	#	Query	#	#	use `test`; drop table t2
+master-bin.000001	#	Query	#	#	COMMIT
+master-bin.000001	#	Query	#	#	use `test`; DROP TABLE `t2` /* generated by server */
 master-bin.000001	#	Query	#	#	use `test`; create table t2 like t1
-master-bin.000001	#	Query	#	#	use `test`; drop table t2
+master-bin.000001	#	Query	#	#	use `test`; DROP TABLE `t2` /* generated by server */
 master-bin.000001	#	Query	#	#	use `test`; create table t2 like t1
-master-bin.000001	#	Query	#	#	use `test`; drop table t1
-master-bin.000001	#	Query	#	#	use `test`; drop table t2
-set session debug="-d,sleep_create_like_before_binlogging";
+master-bin.000001	#	Query	#	#	use `test`; DROP TABLE `t1` /* generated by server */
+master-bin.000001	#	Query	#	#	use `test`; DROP TABLE `t2` /* generated by server */

=== modified file 'mysql-test/suite/federated/federated.test'
--- a/mysql-test/suite/federated/federated.test	2010-03-05 10:51:37 +0000
+++ b/mysql-test/suite/federated/federated.test	2011-11-21 11:28:35 +0000
@@ -4,8 +4,6 @@
 #
 
 
-# should work with embedded server after mysqltest is fixed
---source include/not_embedded.inc
 --source federated.inc
 
 connection default;

=== modified file 'mysql-test/suite/federated/federated_plugin.test'
--- a/mysql-test/suite/federated/federated_plugin.test	2011-09-15 11:09:24 +0000
+++ b/mysql-test/suite/federated/federated_plugin.test	2011-11-21 11:28:35 +0000
@@ -1,3 +1,4 @@
+--source include/not_embedded.inc
 --source include/have_federated_plugin.inc
 
 # Uninstall will not uninstall if ps has been used

=== modified file 'mysql-test/t/create-big.test'
--- a/mysql-test/t/create-big.test	2010-05-24 13:54:08 +0000
+++ b/mysql-test/t/create-big.test	2011-11-21 11:28:32 +0000
@@ -7,11 +7,13 @@
 #
 # This test takes rather long time so let us run it only in --big-test mode
 --source include/big_test.inc
-# We are using some debug-only features in this test
---source include/have_debug.inc
+# We need the Debug Sync Facility.
+--source include/have_debug_sync.inc
 # Some of tests below also use binlog to check that statements are
 # executed and logged in correct order
 --source include/have_binlog_format_mixed_or_statement.inc
+# Save the initial number of concurrent sessions.
+--source include/count_sessions.inc
 
 # Create auxilliary connections
 connect (addconroot1, localhost, root,,);
@@ -22,7 +24,7 @@ connection default;
 --disable_warnings
 drop table if exists t1,t2,t3,t4,t5;
 --enable_warnings
-
+set debug_sync='RESET';
 
 #
 # Tests for concurrency problems in CREATE TABLE ... SELECT
@@ -34,244 +36,378 @@ drop table if exists t1,t2,t3,t4,t5;
 # What happens in situation when other statement messes with
 # table to be created before it is created ?
 # Concurrent CREATE TABLE
-set session debug="+d,sleep_create_select_before_create";
+set debug_sync='create_table_select_before_create SIGNAL parked WAIT_FOR go';
 --send create table t1 select 1 as i;
 connection addconroot1;
---sleep 2
---error ER_TABLE_EXISTS_ERROR
-create table t1 (j char(5));
+set debug_sync='now WAIT_FOR parked';
+--send create table t1 (j char(5));
+connection addconroot2;
+let $wait_condition=
+    select count(*) = 1 from information_schema.processlist
+    where state = "Waiting for table metadata lock" and
+          info = "create table t1 (j char(5))";
+--source include/wait_condition.inc
+set debug_sync='now SIGNAL go';
 connection default;
 --reap
+connection addconroot1;
+--error ER_TABLE_EXISTS_ERROR
+--reap
+connection default;
 show create table t1;
 drop table t1;
+
 # Concurrent CREATE TABLE ... SELECT
+set debug_sync='create_table_select_before_create SIGNAL parked WAIT_FOR go';
 --send create table t1 select 1 as i;
 connection addconroot1;
---sleep 2
---error ER_TABLE_EXISTS_ERROR
-create table t1 select "Test" as j;
+set debug_sync='now WAIT_FOR parked';
+--send create table t1 select 'Test' as j;
+connection addconroot2;
+# Wait until the above CREATE TABLE t1 is blocked due to CREATE
+let $wait_condition=
+    select count(*) = 1 from information_schema.processlist
+    where state = "Waiting for table metadata lock" and
+          info = "create table t1 select 'Test' as j";
+--source include/wait_condition.inc
+set debug_sync='now SIGNAL go';
 connection default;
 --reap
+connection addconroot1;
+--error ER_TABLE_EXISTS_ERROR
+--reap
+connection default;
 show create table t1;
 drop table t1;
+
 # Concurrent CREATE TABLE LIKE
 create table t3 (j char(5));
+set debug_sync='create_table_select_before_create SIGNAL parked WAIT_FOR go';
 --send create table t1 select 1 as i;
 connection addconroot1;
---sleep 2
---error ER_TABLE_EXISTS_ERROR
-create table t1 like t3;
+set debug_sync='now WAIT_FOR parked';
+--send create table t1 like t3;
+connection addconroot2;
+# Wait until the above CREATE TABLE t1 is blocked due to CREATE
+let $wait_condition=
+    select count(*) = 1 from information_schema.processlist
+    where state = "Waiting for table metadata lock" and
+          info = "create table t1 like t3";
+--source include/wait_condition.inc
+set debug_sync='now SIGNAL go';
 connection default;
 --reap
+connection addconroot1;
+--error ER_TABLE_EXISTS_ERROR
+--reap
+connection default;
 show create table t1;
 drop table t1;
+
 # Concurrent RENAME TABLE
+set debug_sync='create_table_select_before_create SIGNAL parked WAIT_FOR go';
 --send create table t1 select 1 as i;
 connection addconroot1;
---sleep 2
---error ER_TABLE_EXISTS_ERROR
-rename table t3 to t1;
+set debug_sync='now WAIT_FOR parked';
+--send rename table t3 to t1;
+connection addconroot2;
+# Wait until the above RENAME TABLE is blocked due to CREATE
+let $wait_condition=
+    select count(*) = 1 from information_schema.processlist
+    where state = "Waiting for table metadata lock" and
+          info = "rename table t3 to t1";
+--source include/wait_condition.inc
+set debug_sync='now SIGNAL go';
 connection default;
 --reap
+connection addconroot1;
+--error ER_TABLE_EXISTS_ERROR
+--reap
+connection default;
 show create table t1;
 drop table t1;
+
 # Concurrent ALTER TABLE RENAME
+set debug_sync='create_table_select_before_create SIGNAL parked WAIT_FOR go';
 --send create table t1 select 1 as i;
 connection addconroot1;
---sleep 2
+set debug_sync='now WAIT_FOR parked';
 --error ER_TABLE_EXISTS_ERROR
 alter table t3 rename to t1;
+set debug_sync='now SIGNAL go';
 connection default;
 --reap
+connection default;
 show create table t1;
 drop table t1;
+
 # Concurrent ALTER TABLE RENAME which also adds column
+set debug_sync='create_table_select_before_create SIGNAL parked WAIT_FOR go';
 --send create table t1 select 1 as i;
 connection addconroot1;
---sleep 2
+set debug_sync='now WAIT_FOR parked';
 --error ER_TABLE_EXISTS_ERROR
 alter table t3 rename to t1, add k int;
+set debug_sync='now SIGNAL go';
 connection default;
 --reap
 show create table t1;
-drop table t1, t3;
+drop table t1,t3;
+
 # What happens if other statement sneaks in after the table
 # creation but before its opening ?
-set session debug="-d,sleep_create_select_before_create:+d,sleep_create_select_before_open";
+set debug_sync='create_table_select_before_open SIGNAL parked WAIT_FOR go';
+connection default;
+
 # Concurrent DROP TABLE
+set debug_sync='create_table_select_before_open SIGNAL parked WAIT_FOR go';
 --send create table t1 select 1 as i;
 connection addconroot1;
---sleep 2
-drop table t1;
+set debug_sync='now WAIT_FOR parked';
+--send drop table t1;
+connection addconroot2;
+# Wait until the above DROP TABLE is blocked due to CREATE
+let $wait_condition=
+    select count(*) = 1 from information_schema.processlist
+    where state = "Waiting for table metadata lock" and
+          info = "drop table t1";
+--source include/wait_condition.inc
+set debug_sync='now SIGNAL go';
 connection default;
 --reap
+connection addconroot1;
+--reap
+connection default;
+
 # Concurrent RENAME TABLE
+set debug_sync='create_table_select_before_create SIGNAL parked WAIT_FOR go';
 --send create table t1 select 1 as i;
 connection addconroot1;
---sleep 2
-rename table t1 to t2;
+set debug_sync='now WAIT_FOR parked';
+--send rename table t1 to t2;
+connection addconroot2;
+# Wait until the above RENAME TABLE is blocked due to CREATE
+let $wait_condition=
+    select count(*) = 1 from information_schema.processlist
+    where state = "Waiting for table metadata lock" and
+          info = "rename table t1 to t2";
+--source include/wait_condition.inc
+set debug_sync='now SIGNAL go';
 connection default;
 --reap
+connection addconroot1;
+--reap
+connection default;
 drop table t2;
+
 # Concurrent SELECT
+set debug_sync='create_table_select_before_create SIGNAL parked WAIT_FOR go';
 --send create table t1 select 1 as i;
 connection addconroot1;
---sleep 2
-select * from t1;
+set debug_sync='now WAIT_FOR parked';
+--send select * from t1;
+connection addconroot2;
+# Wait until the above SELECT is blocked due to CREATE
+let $wait_condition=
+    select count(*) = 1 from information_schema.processlist
+    where state = "Waiting for table metadata lock" and
+          info = "select * from t1";
+--source include/wait_condition.inc
+set debug_sync='now SIGNAL go';
 connection default;
 --reap
+connection addconroot1;
+--reap
+connection default;
 drop table t1;
+
 # Concurrent INSERT
+set debug_sync='create_table_select_before_create SIGNAL parked WAIT_FOR go';
 --send create table t1 select 1 as i;
 connection addconroot1;
---sleep 2
-insert into t1 values (2);
+set debug_sync='now WAIT_FOR parked';
+--send insert into t1 values (2);
+connection addconroot2;
+# Wait until the above INSERT is blocked due to CREATE
+let $wait_condition=
+    select count(*) = 1 from information_schema.processlist
+    where state = "Waiting for table metadata lock" and
+          info = "insert into t1 values (2)";
+--source include/wait_condition.inc
+set debug_sync='now SIGNAL go';
 connection default;
 --reap
+connection addconroot1;
+--reap
+connection default;
 select * from t1;
 drop table t1;
+
 # Concurrent CREATE TRIGGER 
 set @a:=0;
+set debug_sync='create_table_select_before_create SIGNAL parked WAIT_FOR go';
 --send create table t1 select 1 as i;
 connection addconroot1;
---sleep 2
-create trigger t1_bi before insert on t1 for each row set @a:=1;
+set debug_sync='now WAIT_FOR parked';
+--send create trigger t1_bi before insert on t1 for each row set @a:=1;
+connection addconroot2;
+# Wait until the above CREATE TRIGGER is blocked due to CREATE TABLE
+let $wait_condition=
+    select count(*) = 1 from information_schema.processlist
+    where state = "Waiting for table metadata lock" and
+          info = "create trigger t1_bi before insert on t1 for each row set @a:=1";
+--source include/wait_condition.inc
+set debug_sync='now SIGNAL go';
 connection default;
 --reap
+connection addconroot1;
+--reap
+connection default;
 select @a;
 drop table t1;
+
 # Okay, now the same tests for the potential gap between open and lock
-set session debug="-d,sleep_create_select_before_open:+d,sleep_create_select_before_lock";
+set debug_sync='create_table_select_before_lock SIGNAL parked WAIT_FOR go';
+
 # Concurrent DROP TABLE
 --send create table t1 select 1 as i;
 connection addconroot1;
---sleep 2
-drop table t1;
+set debug_sync='now WAIT_FOR parked';
+--send drop table t1;
+connection addconroot2;
+# Wait until the above DROP TABLE is blocked due to CREATE TABLE
+let $wait_condition=
+    select count(*) = 1 from information_schema.processlist
+    where state = "Waiting for table metadata lock" and
+          info = "drop table t1";
+--source include/wait_condition.inc
+set debug_sync='now SIGNAL go';
 connection default;
 --reap
+connection addconroot1;
+--reap
+connection default;
+
 # Concurrent RENAME TABLE
+set debug_sync='create_table_select_before_lock SIGNAL parked WAIT_FOR go';
 --send create table t1 select 1 as i;
 connection addconroot1;
---sleep 2
-rename table t1 to t2;
+set debug_sync='now WAIT_FOR parked';
+--send rename table t1 to t2;
+connection addconroot2;
+# Wait until the above RENAME TABLE is blocked due to CREATE TABLE
+let $wait_condition=
+    select count(*) = 1 from information_schema.processlist
+    where state = "Waiting for table metadata lock" and
+          info = "rename table t1 to t2";
+--source include/wait_condition.inc
+set debug_sync='now SIGNAL go';
 connection default;
 --reap
+connection addconroot1;
+--reap
+connection default;
 drop table t2;
+
 # Concurrent SELECT
+set debug_sync='create_table_select_before_lock SIGNAL parked WAIT_FOR go';
 --send create table t1 select 1 as i;
 connection addconroot1;
---sleep 2
-select * from t1;
+set debug_sync='now WAIT_FOR parked';
+--send select * from t1;
+connection addconroot2;
+# Wait until the above SELECT is blocked due to CREATE TABLE
+let $wait_condition=
+    select count(*) = 1 from information_schema.processlist
+    where state = "Waiting for table metadata lock" and
+          info = "select * from t1";
+--source include/wait_condition.inc
+set debug_sync='now SIGNAL go';
 connection default;
 --reap
+connection addconroot1;
+--reap
+connection default;
 drop table t1;
+
 # Concurrent INSERT
+set debug_sync='create_table_select_before_lock SIGNAL parked WAIT_FOR go';
 --send create table t1 select 1 as i;
 connection addconroot1;
---sleep 2
-insert into t1 values (2);
+set debug_sync='now WAIT_FOR parked';
+--send insert into t1 values (2);
+connection addconroot2;
+# Wait until the above INSERT INTO t1 is blocked due to CREATE TABLE
+let $wait_condition=
+    select count(*) = 1 from information_schema.processlist
+    where state = "Waiting for table metadata lock" and
+          info = "insert into t1 values (2)";
+--source include/wait_condition.inc
+set debug_sync='now SIGNAL go';
 connection default;
 --reap
+connection addconroot1;
+--reap
+connection default;
 select * from t1;
 drop table t1;
+
 # Concurrent CREATE TRIGGER 
 set @a:=0;
+set debug_sync='create_table_select_before_lock SIGNAL parked WAIT_FOR go';
 --send create table t1 select 1 as i;
 connection addconroot1;
---sleep 2
-create trigger t1_bi before insert on t1 for each row set @a:=1;
+set debug_sync='now WAIT_FOR parked';
+--send create trigger t1_bi before insert on t1 for each row set @a:=1;
+connection addconroot2;
+# Wait until the above CREATE TRIGGER is blocked due to CREATE TABLE
+let $wait_condition=
+    select count(*) = 1 from information_schema.processlist
+    where state = "Waiting for table metadata lock" and
+          info = "create trigger t1_bi before insert on t1 for each row set @a:=1";
+--source include/wait_condition.inc
+set debug_sync='now SIGNAL go';
 connection default;
 --reap
+connection addconroot1;
+--reap
+connection default;
 select @a;
 drop table t1;
-# Some tests for case with existing table
-set session debug="-d,sleep_create_select_before_lock:+d,sleep_create_select_before_check_if_exists";
-create table t1 (i int);
+
 # Concurrent DROP TABLE
+set debug_sync='create_table_select_before_check_if_exists SIGNAL parked WAIT_FOR go';
 --send create table if not exists t1 select 1 as i;
 connection addconroot1;
---sleep 2
-drop table t1;
+set debug_sync='now WAIT_FOR parked';
+--send drop table t1;
+connection addconroot2;
+# Wait until the above DROP TABLE is blocked due to CREATE TABLE
+let $wait_condition=
+    select count(*) = 1 from information_schema.processlist
+    where state = "Waiting for table metadata lock" and
+          info = "drop table t1";
+--source include/wait_condition.inc
+set debug_sync='now SIGNAL go';
 connection default;
 --reap
-# Concurrent CREATE TRIGGER 
+connection addconroot1;
+--reap
+connection default;
+
+# Concurrent CREATE TRIGGER
 create table t1 (i int);
 set @a:=0;
+set debug_sync='create_table_select_before_check_if_exists SIGNAL parked WAIT_FOR go';
 --send create table if not exists t1 select 1 as i;
 connection addconroot1;
---sleep 2
 create trigger t1_bi before insert on t1 for each row set @a:=1;
 connection default;
 --reap
+connection default;
 select @a;
 select * from t1;
 drop table t1;
-set session debug="-d,sleep_create_select_before_check_if_exists";
-
-
-# Test for some details of CREATE TABLE ... SELECT implementation.
-#
-# We check that create placeholder is handled properly if we have
-# to reopen tables in open_tables().
-# This test heavily relies on current implementation of name-locking/
-# table cache so it may stop working if it changes. OTOH it such problem
-# will serve as warning that such changes should not be done lightly.
-create table t2 (a int);
-create table t4 (b int);
-connection addconroot2;
-lock table t4 write;
-select 1;
-connection addconroot1;
-# Create placeholder/name-lock for t3
---send create table t3 as select * from t4;
---sleep 2
-connection default;
-# This statement creates placeholder for t1, then opens t2,
-# then meets name-lock for t3 and then reopens all tables
---send create table t1 select * from t2, t3;
---sleep 2
-connection addconroot2;
-unlock tables;
-connection addconroot1;
---reap
-connection default;
---reap
-select * from t1;
-show create table t1;
-drop table t1, t3;
-# Now similar test which proves that we really temporarily
-# remove placeholder when we reopen tables.
-connection addconroot2;
-lock table t4 read;
-select 1;
-connection addconroot1;
-# Create name-lock for t3 
---send rename table t4 to t3;
---sleep 2
-connection default;
-# This statement creates placeholder for t1, then opens t2,
-# then meets name-lock for t3 and then reopens all tables
---send create table if not exists t1 select 1 as i from t2, t3;
---sleep 2
-connection addconroot3;
-# We should be able to take name-lock on table t1 as we should not have
-# open placeholder for it at this point (otherwise it is possible to
-# come-up with situation which will lead to deadlock, e.g. think of
-# concurrent CREATE TABLE t1 SELECT * FROM t2 and RENAME TABLE t2 TO t1)
-create table t5 (j int);
-# This statement takes name-lock on t1 and therefore proves 
-# that there is no active open placeholder for it.
-rename table t5 to t1;
-connection addconroot2;
-unlock tables;
-connection addconroot1;
---reap
-connection default;
---reap
-select * from t1;
-show create table t1;
-drop table t1, t2, t3;
-
 
 # Tests for possible concurrency issues with CREATE TABLE ... LIKE
 #
@@ -286,103 +422,101 @@ drop table t1, t2, t3;
 --disable_warnings
 drop table if exists t1,t2;
 --enable_warnings
+set debug_sync='RESET';
 
 # What happens if some statements sneak in right after we have
-# opened source table ?
+# acquired locks and opened source table ?
 create table t1 (i int);
-set session debug="+d,sleep_create_like_before_check_if_exists";
+set debug_sync='create_table_like_after_open SIGNAL parked WAIT_FOR go';
 # Reset binlog to have clear start
 reset master;
 --send create table t2 like t1;
 connection addconroot1;
---sleep 2
+set debug_sync='now WAIT_FOR parked';
 # DML on source table should be allowed to run concurrently
 insert into t1 values (1);
 # And DDL should wait
-drop table t1;
+--send drop table t1;
+connection addconroot2;
+let $wait_condition=
+    select count(*) = 1 from information_schema.processlist
+    where state = "Waiting for table metadata lock" and
+          info = "drop table t1";
+--source include/wait_condition.inc
+set debug_sync='now SIGNAL go';
 connection default;
 --reap
+connection addconroot1;
+--reap
+connection default;
 show create table t2;
 drop table t2;
 # Let us check that statements were executed/binlogged in correct order
 source include/show_binlog_events.inc;
 
-# Now let us check the gap between check for target table
-# existance and copying of .frm file. 
+# Now check the gap between table creation and binlogging
 create table t1 (i int);
-set session debug="-d,sleep_create_like_before_check_if_exists:+d,sleep_create_like_before_copy";
-# It should be impossible to create target table concurrently
---send create table t2 like t1;
-connection addconroot1;
---sleep 2
-create table if not exists t2 (j int);
-connection default;
---reap
-show create table t2;
-drop table t2;
-# And concurrent DDL on the source table should be still disallowed 
+set debug_sync='create_table_like_before_binlog SIGNAL parked WAIT_FOR go';
 reset master;
 --send create table t2 like t1;
 connection addconroot1;
---sleep 2
-drop table t1;
+set debug_sync='now WAIT_FOR parked';
+--send insert into t2 values (1);
+connection addconroot2;
+let $wait_condition=
+    select count(*) = 1 from information_schema.processlist
+    where state = "Waiting for table metadata lock" and
+          info = "insert into t2 values (1)";
+--source include/wait_condition.inc
+set debug_sync='now SIGNAL go';
 connection default;
 --reap
-drop table t2;
-source include/show_binlog_events.inc;
 
-# And now he gap between copying of .frm file and ha_create_table() call. 
-create table t1 (i int);
-set session debug="-d,sleep_create_like_before_copy:+d,sleep_create_like_before_ha_create";
-# Both DML and DDL on target table should wait till operation completes
-reset master;
---send create table t2 like t1;
 connection addconroot1;
---sleep 2
-insert into t2 values (1);
-connection default;
 --reap
+connection default;
 drop table t2;
+set debug_sync='create_table_like_before_binlog SIGNAL parked WAIT_FOR go';
 --send create table t2 like t1;
 connection addconroot1;
---sleep 2
-drop table t2;
+set debug_sync='now WAIT_FOR parked';
+--send drop table t2;
+connection addconroot2;
+let $wait_condition=
+    select count(*) = 1 from information_schema.processlist
+    where state = "Waiting for table metadata lock" and
+          info = "drop table t2";
+--source include/wait_condition.inc
+set debug_sync='now SIGNAL go';
 connection default;
 --reap
-# Concurrent DDL on the source table still waits 
---send create table t2 like t1;
 connection addconroot1;
---sleep 2
-drop table t1;
-connection default;
 --reap
-drop table t2;
-source include/show_binlog_events.inc;
-
-# Finally we check the gap between ha_create_table() and binlogging
-create table t1 (i int);
-set session debug="-d,sleep_create_like_before_ha_create:+d,sleep_create_like_before_binlogging";
-reset master;
---send create table t2 like t1;
-connection addconroot1;
---sleep 2
-insert into t2 values (1);
 connection default;
---reap
-drop table t2;
+set debug_sync='create_table_like_before_binlog SIGNAL parked WAIT_FOR go';
 --send create table t2 like t1;
 connection addconroot1;
---sleep 2
-drop table t2;
+set debug_sync='now WAIT_FOR parked';
+--send drop table t1;
+connection addconroot2;
+let $wait_condition=
+    select count(*) = 1 from information_schema.processlist
+    where state = "Waiting for table metadata lock" and
+          info = "drop table t1";
+--source include/wait_condition.inc
+set debug_sync='now SIGNAL go';
 connection default;
 --reap
---send create table t2 like t1;
 connection addconroot1;
---sleep 2
-drop table t1;
-connection default;
 --reap
+connection default;
 drop table t2;
-source include/show_binlog_events.inc;
+disconnect addconroot1;
+disconnect addconroot2;
+disconnect addconroot3;
 
-set session debug="-d,sleep_create_like_before_binlogging";
+set debug_sync='RESET';
+source include/show_binlog_events.inc;
+# Check that all connections opened by test cases in this file are really
+# gone so execution of other tests won't be affected by their presence.
+--source include/wait_until_count_sessions.inc

=== modified file 'mysql-test/t/disabled.def'
--- a/mysql-test/t/disabled.def	2011-11-10 11:59:23 +0000
+++ b/mysql-test/t/disabled.def	2011-11-21 11:37:49 +0000
@@ -12,7 +12,6 @@
 lowercase_table3         : Bug#11762269 2010-06-30 alik main.lowercase_table3 on Mac OSX
 read_many_rows_innodb    : Bug#11748886 2010-11-15 mattiasj report already exists
 sum_distinct-big         : Bug#11764126 2010-11-15 mattiasj was not tested
-create-big               : Bug#11748731 2010-11-15 mattiasj was not tested
 archive-big              : Bug#11817185 2011-03-10 Anitha Disabled since this leads to timeout on Solaris Sparc
 log_tables-big           : Bug#11756699 2010-11-15 mattiasj report already exists
 mysql_embedded           : Bug#12561297 2011-11-08 Mayank Innodb behavior causes this test case to fail.

=== modified file 'sql/sql_insert.cc'
--- a/sql/sql_insert.cc	2011-11-17 13:41:28 +0000
+++ b/sql/sql_insert.cc	2011-11-21 12:02:21 +0000
@@ -3769,7 +3769,7 @@ static TABLE *create_table_from_items(TH
     alter_info->create_list.push_back(cr_field);
   }
 
-  DBUG_EXECUTE_IF("sleep_create_select_before_create", my_sleep(6000000););
+  DEBUG_SYNC(thd,"create_table_select_before_create");
 
   /*
     Create and lock table.
@@ -3793,7 +3793,7 @@ static TABLE *create_table_from_items(TH
                                     create_info, alter_info, 0,
                                     select_field_count, NULL))
     {
-      DBUG_EXECUTE_IF("sleep_create_select_before_open", my_sleep(6000000););
+      DEBUG_SYNC(thd,"create_table_select_before_open");
 
       if (!(create_info->options & HA_LEX_CREATE_TMP_TABLE))
       {
@@ -3832,7 +3832,7 @@ static TABLE *create_table_from_items(TH
       DBUG_RETURN(0);
   }
 
-  DBUG_EXECUTE_IF("sleep_create_select_before_lock", my_sleep(6000000););
+  DEBUG_SYNC(thd,"create_table_select_before_lock");
 
   table->reginfo.lock_type=TL_WRITE;
   hooks->prelock(&table, 1);                    // Call prelock hooks
@@ -3927,7 +3927,7 @@ select_create::prepare(List<Item> &value
   unit= u;
   DBUG_ASSERT(create_table->table == NULL);
 
-  DBUG_EXECUTE_IF("sleep_create_select_before_check_if_exists", my_sleep(6000000););
+  DEBUG_SYNC(thd,"create_table_select_before_check_if_exists");
 
   if (!(table= create_table_from_items(thd, create_info, create_table,
                                        alter_info, &values,

=== modified file 'sql/sql_table.cc'
--- a/sql/sql_table.cc	2011-11-21 11:58:25 +0000
+++ b/sql/sql_table.cc	2011-11-21 12:02:21 +0000
@@ -4765,6 +4765,8 @@ bool mysql_create_like_table(THD* thd, T
     goto err;
   src_table->table->use_all_columns();
 
+  DEBUG_SYNC(thd, "create_table_like_after_open");
+
   /* Fill HA_CREATE_INFO and Alter_info with description of source table. */
   memset(&local_create_info, 0, sizeof(local_create_info));
   local_create_info.db_type= src_table->table->s->db_type();
@@ -4813,6 +4815,9 @@ bool mysql_create_like_table(THD* thd, T
               thd->mdl_context.is_lock_owner(MDL_key::TABLE, table->db,
                                              table->table_name,
                                              MDL_EXCLUSIVE));
+
+  DEBUG_SYNC(thd, "create_table_like_before_binlog");
+
   /*
     CREATE TEMPORARY TABLE doesn't terminate a transaction. Calling
     stmt.mark_created_temp_table() guarantees the transaction can be binlogged

No bundle (reason: useless for push emails).
Thread
bzr push into mysql-trunk branch (alexander.barkov:3603 to 3604) Alexander Barkov22 Nov