3092 Bjorn Munch 2011-07-21
Small fix for mtr --explain-protocol:
Check for 'require' should be done *after* run_explain, or we will be checking
the output of explain for a match, which will of course fail.
modified:
client/mysqltest.cc
3091 Bjorn Munch 2011-07-21 [merge]
merge from trunk
added:
mysql-test/include/have_optimizer_trace.inc
mysql-test/suite/opt_trace/
mysql-test/suite/opt_trace/include/
mysql-test/suite/opt_trace/include/bugs.inc
mysql-test/suite/opt_trace/include/general.inc
mysql-test/suite/opt_trace/include/general2.inc
mysql-test/suite/opt_trace/include/range.inc
mysql-test/suite/opt_trace/include/security.inc
mysql-test/suite/opt_trace/include/subquery.inc
mysql-test/suite/opt_trace/r/
mysql-test/suite/opt_trace/r/bugs_no_prot_all.result
mysql-test/suite/opt_trace/r/bugs_no_prot_none.result
mysql-test/suite/opt_trace/r/bugs_ps_prot_all.result
mysql-test/suite/opt_trace/r/bugs_ps_prot_none.result
mysql-test/suite/opt_trace/r/charset.result
mysql-test/suite/opt_trace/r/debug.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/opt_trace/t/
mysql-test/suite/opt_trace/t/bugs_no_prot_all.test
mysql-test/suite/opt_trace/t/bugs_no_prot_none.test
mysql-test/suite/opt_trace/t/bugs_ps_prot_all.test
mysql-test/suite/opt_trace/t/bugs_ps_prot_none.test
mysql-test/suite/opt_trace/t/charset.test
mysql-test/suite/opt_trace/t/debug.test
mysql-test/suite/opt_trace/t/general2_no_prot.test
mysql-test/suite/opt_trace/t/general2_ps_prot.test
mysql-test/suite/opt_trace/t/general_no_prot_all.test
mysql-test/suite/opt_trace/t/general_no_prot_none.test
mysql-test/suite/opt_trace/t/general_ps_prot_all.test
mysql-test/suite/opt_trace/t/general_ps_prot_none.test
mysql-test/suite/opt_trace/t/range_no_prot.test
mysql-test/suite/opt_trace/t/range_ps_prot.test
mysql-test/suite/opt_trace/t/security_no_prot.test
mysql-test/suite/opt_trace/t/security_ps_prot.test
mysql-test/suite/opt_trace/t/subquery_no_prot.test
mysql-test/suite/opt_trace/t/subquery_ps_prot.test
mysql-test/suite/opt_trace/validate_json.py
mysql-test/suite/sys_vars/r/innodb_random_read_ahead_basic.result
mysql-test/suite/sys_vars/r/innodb_undo_directory_basic.result
mysql-test/suite/sys_vars/r/innodb_undo_logs_basic.result
mysql-test/suite/sys_vars/r/innodb_undo_tablespaces_basic.result
mysql-test/suite/sys_vars/r/optimizer_trace_basic.result
mysql-test/suite/sys_vars/r/optimizer_trace_features_basic.result
mysql-test/suite/sys_vars/r/optimizer_trace_limit_basic.result
mysql-test/suite/sys_vars/r/optimizer_trace_max_mem_size_basic.result
mysql-test/suite/sys_vars/r/optimizer_trace_offset_basic.result
mysql-test/suite/sys_vars/r/optimizer_trace_offset_max.result
mysql-test/suite/sys_vars/t/innodb_random_read_ahead_basic.test
mysql-test/suite/sys_vars/t/innodb_undo_directory_basic.test
mysql-test/suite/sys_vars/t/innodb_undo_logs_basic.test
mysql-test/suite/sys_vars/t/innodb_undo_tablespaces_basic.test
mysql-test/suite/sys_vars/t/optimizer_trace_basic.test
mysql-test/suite/sys_vars/t/optimizer_trace_features_basic.test
mysql-test/suite/sys_vars/t/optimizer_trace_limit_basic.test
mysql-test/suite/sys_vars/t/optimizer_trace_max_mem_size_basic.test
mysql-test/suite/sys_vars/t/optimizer_trace_offset_basic.test
mysql-test/suite/sys_vars/t/optimizer_trace_offset_max-master.opt
mysql-test/suite/sys_vars/t/optimizer_trace_offset_max.test
sql/opt_trace.cc
sql/opt_trace.h
sql/opt_trace2server.cc
sql/opt_trace_Doxyfile
sql/opt_trace_context.h
unittest/gunit/opt_trace-t.cc
modified:
.bzrignore
CMakeLists.txt
client/mysqltest.cc
config.h.cmake
dbug/dbug.c
include/my_getopt.h
include/my_sys.h
include/mysql/plugin.h
include/mysql/plugin_audit.h.pp
include/mysql/plugin_auth.h.pp
include/mysql/plugin_ftparser.h.pp
include/mysql/psi/psi.h
include/mysql/psi/psi_abi_v1.h.pp
libmysqld/examples/CMakeLists.txt
mysql-test/collections/default.daily
mysql-test/collections/default.experimental
mysql-test/collections/default.weekly
mysql-test/extra/rpl_tests/rpl_reset_slave.test
mysql-test/include/subquery.inc
mysql-test/mysql-test-run.pl
mysql-test/r/archive_gis.result
mysql-test/r/auto_increment.result
mysql-test/r/bench_count_distinct.result
mysql-test/r/bigint.result
mysql-test/r/case.result
mysql-test/r/cast.result
mysql-test/r/compare.result
mysql-test/r/compress.result
mysql-test/r/ctype_binary.result
mysql-test/r/ctype_collate.result
mysql-test/r/ctype_cp1251.result
mysql-test/r/ctype_latin1.result
mysql-test/r/ctype_ucs.result
mysql-test/r/ctype_utf8.result
mysql-test/r/date_formats.result
mysql-test/r/explain.result
mysql-test/r/fulltext.result
mysql-test/r/func_compress.result
mysql-test/r/func_crypt.result
mysql-test/r/func_default.result
mysql-test/r/func_encrypt.result
mysql-test/r/func_gconcat.result
mysql-test/r/func_group.result
mysql-test/r/func_if.result
mysql-test/r/func_in_all.result
mysql-test/r/func_in_icp.result
mysql-test/r/func_in_icp_mrr.result
mysql-test/r/func_in_mrr.result
mysql-test/r/func_in_mrr_cost.result
mysql-test/r/func_in_none.result
mysql-test/r/func_like.result
mysql-test/r/func_math.result
mysql-test/r/func_op.result
mysql-test/r/func_regexp.result
mysql-test/r/func_set.result
mysql-test/r/func_str.result
mysql-test/r/func_system.result
mysql-test/r/func_test.result
mysql-test/r/func_time.result
mysql-test/r/gis.result
mysql-test/r/group_by.result
mysql-test/r/group_min_max.result
mysql-test/r/having.result
mysql-test/r/information_schema.result
mysql-test/r/information_schema_db.result
mysql-test/r/innodb_explain_non_select_all.result
mysql-test/r/innodb_explain_non_select_none.result
mysql-test/r/innodb_mrr.result
mysql-test/r/innodb_mrr_all.result
mysql-test/r/innodb_mrr_cost.result
mysql-test/r/innodb_mrr_cost_all.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/insert_update.result
mysql-test/r/join.result
mysql-test/r/join_nested.result
mysql-test/r/join_nested_jcl6.result
mysql-test/r/join_outer.result
mysql-test/r/join_outer_jcl6.result
mysql-test/r/myisam_explain_non_select_all.result
mysql-test/r/myisam_explain_non_select_none.result
mysql-test/r/myisam_mrr.result
mysql-test/r/myisam_mrr_all.result
mysql-test/r/myisam_mrr_cost.result
mysql-test/r/myisam_mrr_cost_all.result
mysql-test/r/myisam_mrr_cost_icp.result
mysql-test/r/myisam_mrr_icp.result
mysql-test/r/myisam_mrr_none.result
mysql-test/r/mysqld--help-notwin.result
mysql-test/r/mysqld--help-win.result
mysql-test/r/mysqlshow.result
mysql-test/r/named_pipe.result
mysql-test/r/negation_elimination.result
mysql-test/r/null.result
mysql-test/r/olap.result
mysql-test/r/order_by_all.result
mysql-test/r/order_by_icp_mrr.result
mysql-test/r/order_by_none.result
mysql-test/r/partition.result
mysql-test/r/partition_pruning.result
mysql-test/r/ps.result
mysql-test/r/query_cache.result
mysql-test/r/row.result
mysql-test/r/select_all.result
mysql-test/r/select_all_jcl6.result
mysql-test/r/select_icp_mrr.result
mysql-test/r/select_icp_mrr_jcl6.result
mysql-test/r/select_none.result
mysql-test/r/select_none_jcl6.result
mysql-test/r/shm.result
mysql-test/r/ssl.result
mysql-test/r/ssl_compress.result
mysql-test/r/subquery_all.result
mysql-test/r/subquery_all_jcl6.result
mysql-test/r/subquery_mat.result
mysql-test/r/subquery_mat_all.result
mysql-test/r/subquery_mat_none.result
mysql-test/r/subquery_nomat_nosj.result
mysql-test/r/subquery_nomat_nosj_jcl6.result
mysql-test/r/subquery_none.result
mysql-test/r/subquery_none_jcl6.result
mysql-test/r/subquery_sj_all.result
mysql-test/r/subquery_sj_all_jcl6.result
mysql-test/r/subquery_sj_all_jcl7.result
mysql-test/r/subquery_sj_dupsweed.result
mysql-test/r/subquery_sj_dupsweed_jcl6.result
mysql-test/r/subquery_sj_dupsweed_jcl7.result
mysql-test/r/subquery_sj_firstmatch.result
mysql-test/r/subquery_sj_firstmatch_jcl6.result
mysql-test/r/subquery_sj_firstmatch_jcl7.result
mysql-test/r/subquery_sj_loosescan.result
mysql-test/r/subquery_sj_loosescan_jcl6.result
mysql-test/r/subquery_sj_loosescan_jcl7.result
mysql-test/r/subquery_sj_mat.result
mysql-test/r/subquery_sj_mat_jcl6.result
mysql-test/r/subquery_sj_mat_jcl7.result
mysql-test/r/subquery_sj_mat_nosj.result
mysql-test/r/subquery_sj_none.result
mysql-test/r/subquery_sj_none_jcl6.result
mysql-test/r/subquery_sj_none_jcl7.result
mysql-test/r/subselect_innodb.result
mysql-test/r/type_blob.result
mysql-test/r/type_datetime.result
mysql-test/r/udf.result
mysql-test/r/union.result
mysql-test/r/varbinary.result
mysql-test/r/variables.result
mysql-test/r/view.result
mysql-test/suite/binlog/r/binlog_stm_blackhole.result
mysql-test/suite/funcs_1/r/is_columns_is.result
mysql-test/suite/funcs_1/r/is_columns_is_embedded.result
mysql-test/suite/funcs_1/r/is_tables_is.result
mysql-test/suite/innodb/r/innodb_gis.result
mysql-test/suite/perfschema/include/event_aggregate_cleanup.inc
mysql-test/suite/perfschema/include/event_aggregate_load.inc
mysql-test/suite/perfschema/include/event_aggregate_setup.inc
mysql-test/suite/perfschema/include/table_aggregate_cleanup.inc
mysql-test/suite/perfschema/include/table_aggregate_load.inc
mysql-test/suite/perfschema/include/table_aggregate_setup.inc
mysql-test/suite/perfschema/r/dml_setup_objects.result
mysql-test/suite/perfschema/r/event_aggregate.result
mysql-test/suite/perfschema/r/information_schema.result
mysql-test/suite/perfschema/r/pfs_upgrade.result
mysql-test/suite/perfschema/r/privilege_table_io.result
mysql-test/suite/perfschema/r/schema.result
mysql-test/suite/perfschema/r/setup_objects.result
mysql-test/suite/perfschema/r/table_aggregate_global_2u_2t.result
mysql-test/suite/perfschema/r/table_aggregate_global_2u_3t.result
mysql-test/suite/perfschema/r/table_aggregate_global_4u_2t.result
mysql-test/suite/perfschema/r/table_aggregate_global_4u_3t.result
mysql-test/suite/perfschema/r/table_aggregate_hist_2u_2t.result
mysql-test/suite/perfschema/r/table_aggregate_hist_2u_3t.result
mysql-test/suite/perfschema/r/table_aggregate_hist_4u_2t.result
mysql-test/suite/perfschema/r/table_aggregate_hist_4u_3t.result
mysql-test/suite/perfschema/r/table_aggregate_off.result
mysql-test/suite/perfschema/r/table_aggregate_thread_2u_2t.result
mysql-test/suite/perfschema/r/table_aggregate_thread_2u_3t.result
mysql-test/suite/perfschema/r/table_aggregate_thread_4u_2t.result
mysql-test/suite/perfschema/r/table_aggregate_thread_4u_3t.result
mysql-test/suite/perfschema/r/table_io_aggregate_global_2u_2t.result
mysql-test/suite/perfschema/r/table_io_aggregate_global_2u_3t.result
mysql-test/suite/perfschema/r/table_io_aggregate_global_4u_2t.result
mysql-test/suite/perfschema/r/table_io_aggregate_global_4u_3t.result
mysql-test/suite/perfschema/r/table_io_aggregate_hist_2u_2t.result
mysql-test/suite/perfschema/r/table_io_aggregate_hist_2u_3t.result
mysql-test/suite/perfschema/r/table_io_aggregate_hist_4u_2t.result
mysql-test/suite/perfschema/r/table_io_aggregate_hist_4u_3t.result
mysql-test/suite/perfschema/r/table_io_aggregate_thread_2u_2t.result
mysql-test/suite/perfschema/r/table_io_aggregate_thread_2u_3t.result
mysql-test/suite/perfschema/r/table_io_aggregate_thread_4u_2t.result
mysql-test/suite/perfschema/r/table_io_aggregate_thread_4u_3t.result
mysql-test/suite/perfschema/r/table_lock_aggregate_global_2u_2t.result
mysql-test/suite/perfschema/r/table_lock_aggregate_global_2u_3t.result
mysql-test/suite/perfschema/r/table_lock_aggregate_global_4u_2t.result
mysql-test/suite/perfschema/r/table_lock_aggregate_global_4u_3t.result
mysql-test/suite/perfschema/r/table_lock_aggregate_hist_2u_2t.result
mysql-test/suite/perfschema/r/table_lock_aggregate_hist_2u_3t.result
mysql-test/suite/perfschema/r/table_lock_aggregate_hist_4u_2t.result
mysql-test/suite/perfschema/r/table_lock_aggregate_hist_4u_3t.result
mysql-test/suite/perfschema/r/table_lock_aggregate_thread_2u_2t.result
mysql-test/suite/perfschema/r/table_lock_aggregate_thread_2u_3t.result
mysql-test/suite/perfschema/r/table_lock_aggregate_thread_4u_2t.result
mysql-test/suite/perfschema/r/table_lock_aggregate_thread_4u_3t.result
mysql-test/suite/perfschema/r/table_schema.result
mysql-test/suite/perfschema/t/dml_setup_objects.test
mysql-test/suite/perfschema/t/privilege_table_io.test
mysql-test/suite/perfschema/t/setup_objects.test
mysql-test/suite/rpl/r/rpl_get_lock.result
mysql-test/suite/rpl/r/rpl_master_pos_wait.result
mysql-test/suite/rpl/r/rpl_row_reset_slave.result
mysql-test/suite/rpl/r/rpl_stm_reset_slave.result
mysql-test/suite/sys_vars/r/all_vars.result
mysql-test/suite/sys_vars/t/all_vars.test
mysql-test/t/func_math.test
mysql-test/t/implicit_commit.test
mysys/array.c
mysys/my_alloc.c
mysys/my_getopt.c
mysys/my_malloc.c
mysys/psi_noop.cc
scripts/mysql_system_tables.sql
sql/CMakeLists.txt
sql/ha_ndbcluster.cc
sql/ha_partition.cc
sql/ha_partition.h
sql/handler.cc
sql/handler.h
sql/item.cc
sql/item_cmpfunc.cc
sql/item_cmpfunc.h
sql/item_func.cc
sql/item_subselect.cc
sql/item_subselect.h
sql/log_event.cc
sql/mysqld.cc
sql/mysqld.h
sql/opt_explain.cc
sql/opt_range.cc
sql/opt_range.h
sql/rpl_mi.cc
sql/rpl_mi.h
sql/rpl_slave.cc
sql/set_var.cc
sql/set_var.h
sql/sp_head.cc
sql/sp_head.h
sql/sql_array.h
sql/sql_base.cc
sql/sql_class.cc
sql/sql_class.h
sql/sql_delete.cc
sql/sql_derived.cc
sql/sql_help.cc
sql/sql_lex.h
sql/sql_parse.cc
sql/sql_plugin.h
sql/sql_prepare.cc
sql/sql_profile.cc
sql/sql_select.cc
sql/sql_select.h
sql/sql_show.cc
sql/sql_test.cc
sql/sql_test.h
sql/sql_update.cc
sql/sql_view.cc
sql/sql_yacc.yy
sql/sys_vars.cc
sql/sys_vars.h
sql/table.cc
storage/innobase/buf/buf0buf.c
storage/innobase/buf/buf0rea.c
storage/innobase/dict/dict0crea.c
storage/innobase/fil/fil0fil.c
storage/innobase/handler/ha_innodb.cc
storage/innobase/include/buf0buf.h
storage/innobase/include/buf0buf.ic
storage/innobase/include/buf0lru.h
storage/innobase/include/buf0rea.h
storage/innobase/include/os0file.h
storage/innobase/include/os0file.ic
storage/innobase/include/srv0srv.h
storage/innobase/include/trx0rseg.h
storage/innobase/include/trx0sys.h
storage/innobase/include/trx0sys.ic
storage/innobase/include/ut0ut.h
storage/innobase/log/log0recv.c
storage/innobase/os/os0file.c
storage/innobase/row/row0purge.c
storage/innobase/srv/srv0mon.c
storage/innobase/srv/srv0srv.c
storage/innobase/srv/srv0start.c
storage/innobase/trx/trx0purge.c
storage/innobase/trx/trx0rseg.c
storage/innobase/trx/trx0sys.c
storage/innobase/trx/trx0trx.c
storage/innobase/trx/trx0undo.c
storage/innobase/ut/ut0ut.c
storage/perfschema/pfs.cc
storage/perfschema/pfs_defaults.cc
storage/perfschema/pfs_instr.cc
storage/perfschema/pfs_instr.h
storage/perfschema/pfs_setup_object.cc
storage/perfschema/table_setup_objects.cc
storage/perfschema/table_setup_objects.h
strings/decimal.c
unittest/gunit/CMakeLists.txt
unittest/gunit/my_decimal-t.cc
=== modified file 'client/mysqltest.cc'
--- a/client/mysqltest.cc 2011-07-21 12:14:09 +0000
+++ b/client/mysqltest.cc 2011-07-21 13:49:07 +0000
@@ -8691,11 +8691,6 @@ int main(int argc, char **argv)
/* Check for special property for this query */
display_result_vertically|= (command->type == Q_QUERY_VERTICAL);
- if (save_file[0])
- {
- strmake(command->require_file, save_file, sizeof(save_file) - 1);
- save_file[0]= 0;
- }
/*
We run EXPLAIN _before_ the query. If query is UPDATE/DELETE is
matters: a DELETE may delete rows, and then EXPLAIN DELETE will
@@ -8703,6 +8698,12 @@ int main(int argc, char **argv)
interesting, EXPLAIN is now first.
*/
run_explain(cur_con, command, flags);
+ /* Check for 'require' */
+ if (*save_file)
+ {
+ strmake(command->require_file, save_file, sizeof(save_file) - 1);
+ *save_file= 0;
+ }
run_query(cur_con, command, flags);
display_opt_trace(cur_con, command, flags);
command_executed++;
No bundle (reason: useless for push emails).
| Thread |
|---|
| • bzr push into mysql-trunk-mtr branch (bjorn.munch:3091 to 3092) | Bjorn Munch | 21 Jul |