List:Commits« Previous MessageNext Message »
From:Mayank Prasad Date:August 2 2011 8:04pm
Subject:bzr push into mysql-trunk-wl5767 branch (mayank.prasad:3373 to 3374)
WL#5767
View as plain text  
 3374 Mayank Prasad	2011-08-03
      WL#5767 : PERFORMANCE SCHEMA, statement digest
      
      Changes:
      --------
      1. Code changes to Adjust "SHOW ENGINE PERFORMANCE_SCHEMA STATUS".
      2. Code changes to pass every token from Lexer to PS.

    modified:
      include/mysql/psi/psi.h
      include/mysql/psi/psi_abi_v1.h.pp
      include/mysql/psi/psi_abi_v2.h.pp
      mysys/psi_noop.cc
      sql/sql_lex.cc
      sql/sql_lex.h
      storage/perfschema/pfs.cc
      storage/perfschema/pfs_digest.cc
      storage/perfschema/pfs_digest.h
      storage/perfschema/pfs_engine_table.cc
      storage/perfschema/pfs_instr.cc
      storage/perfschema/pfs_instr.h
 3373 Mayank Prasad	2011-08-02 [merge]
      wl#5767 : PERFORMANCE SCHEMA, statement digest
      
      merge mysql-trunk->mysql-trunk-wl5767

    removed:
      mysql-test/suite/innodb/include/innodb_stats_bootstrap.inc
      storage/innobase/scripts/
      storage/innobase/scripts/persistent_storage.sql
      storage/ndb/test/sql/
      storage/ndb/test/sql/BANK.sql
      storage/ndb/test/sql/T1.sql
      storage/ndb/test/sql/test_create_drop.pl
      storage/ndb/test/sql/test_range_bounds.pl
    added:
      mysql-test/include/explain_non_select.inc
      mysql-test/include/explain_utils.inc
      mysql-test/include/have_optimizer_trace.inc
      mysql-test/r/grant_explain_non_select.result
      mysql-test/r/innodb_explain_non_select_all.result
      mysql-test/r/innodb_explain_non_select_none.result
      mysql-test/r/join_cache_jcl0.result
      mysql-test/r/myisam_explain_non_select_all.result
      mysql-test/r/myisam_explain_non_select_none.result
      mysql-test/r/mysql_binary_mode.result
      mysql-test/r/mysql_embedded.result
      mysql-test/r/secure_file_priv_win.result
      mysql-test/suite/innodb/r/innodb_buffer_pool_load.result
      mysql-test/suite/innodb/t/innodb_buffer_pool_load-master.opt
      mysql-test/suite/innodb/t/innodb_buffer_pool_load.test
      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/perfschema/include/stage_cleanup.inc
      mysql-test/suite/perfschema/include/stage_setup.inc
      mysql-test/suite/perfschema/r/stage_mdl_function.result
      mysql-test/suite/perfschema/r/stage_mdl_global.result
      mysql-test/suite/perfschema/r/stage_mdl_procedure.result
      mysql-test/suite/perfschema/r/stage_mdl_table.result
      mysql-test/suite/perfschema/r/table_schema.result
      mysql-test/suite/perfschema/t/stage_mdl_function.test
      mysql-test/suite/perfschema/t/stage_mdl_global.test
      mysql-test/suite/perfschema/t/stage_mdl_procedure.test
      mysql-test/suite/perfschema/t/stage_mdl_table.test
      mysql-test/suite/perfschema/t/table_schema.test
      mysql-test/suite/rpl/r/rpl_row_corruption.result
      mysql-test/suite/rpl/t/rpl_row_corruption-slave.opt
      mysql-test/suite/rpl/t/rpl_row_corruption.test
      mysql-test/suite/sys_vars/inc/bin_relay_log_basename_index.inc
      mysql-test/suite/sys_vars/r/default_tmp_storage_engine_basic.result
      mysql-test/suite/sys_vars/r/innodb_buffer_pool_dump_at_shutdown_basic.result
      mysql-test/suite/sys_vars/r/innodb_buffer_pool_dump_now_basic.result
      mysql-test/suite/sys_vars/r/innodb_buffer_pool_filename_basic.result
      mysql-test/suite/sys_vars/r/innodb_buffer_pool_load_abort_basic.result
      mysql-test/suite/sys_vars/r/innodb_buffer_pool_load_at_startup_basic.result
      mysql-test/suite/sys_vars/r/innodb_buffer_pool_load_now_basic.result
      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/log_bin_basename_basic.result
      mysql-test/suite/sys_vars/r/log_bin_index_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/r/relay_log_basename_basic.result
      mysql-test/suite/sys_vars/t/default_tmp_storage_engine_basic.test
      mysql-test/suite/sys_vars/t/innodb_buffer_pool_dump_at_shutdown_basic.test
      mysql-test/suite/sys_vars/t/innodb_buffer_pool_dump_now_basic.test
      mysql-test/suite/sys_vars/t/innodb_buffer_pool_filename_basic-master.opt
      mysql-test/suite/sys_vars/t/innodb_buffer_pool_filename_basic.test
      mysql-test/suite/sys_vars/t/innodb_buffer_pool_load_abort_basic.test
      mysql-test/suite/sys_vars/t/innodb_buffer_pool_load_at_startup_basic.test
      mysql-test/suite/sys_vars/t/innodb_buffer_pool_load_now_basic.test
      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/log_bin_basename_basic.test
      mysql-test/suite/sys_vars/t/log_bin_index_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
      mysql-test/suite/sys_vars/t/relay_log_basename_basic.test
      mysql-test/t/grant_explain_non_select.test
      mysql-test/t/innodb_explain_non_select_all.test
      mysql-test/t/innodb_explain_non_select_none.test
      mysql-test/t/join_cache_jcl0.test
      mysql-test/t/myisam_explain_non_select_all.test
      mysql-test/t/myisam_explain_non_select_none.test
      mysql-test/t/mysql_binary_mode.test
      mysql-test/t/mysql_embedded.test
      mysql-test/t/secure_file_priv_win-master.opt
      mysql-test/t/secure_file_priv_win.test
      mysys/psi_noop.cc
      sql/opt_explain.cc
      sql/opt_explain.h
      sql/opt_trace.cc
      sql/opt_trace.h
      sql/opt_trace2server.cc
      sql/opt_trace_Doxyfile
      sql/opt_trace_context.h
      storage/innobase/buf/buf0dump.c
      storage/innobase/include/buf0dump.h
      unittest/gunit/bounds_checked_array-t.cc
      unittest/gunit/opt_trace-t.cc
    modified:
      .bzrignore
      BUILD/FINISH.sh
      BUILD/autorun.sh
      BUILD/build_mccge.sh
      BUILD/check-cpu
      BUILD/cmake_configure.sh
      BUILD/compile-dist
      BUILD/compile-ia64-debug-max
      BUILD/compile-pentium-debug
      BUILD/compile-pentium-debug-max
      BUILD/compile-pentium-debug-openssl
      BUILD/compile-pentium-debug-yassl
      BUILD/compile-pentium-icc-valgrind-max
      BUILD/compile-pentium-valgrind-max
      BUILD/compile-pentium64-debug
      BUILD/compile-pentium64-debug-max
      BUILD/compile-pentium64-valgrind-max
      BUILD/compile-solaris-amd64-forte
      BUILD/compile-solaris-amd64-forte-debug
      BUILD/compile-solaris-sparc
      BUILD/compile-solaris-sparc-forte
      CMakeLists.txt
      client/client_priv.h
      client/completion_hash.cc
      client/my_readline.h
      client/mysql.cc
      client/mysql_upgrade.c
      client/mysqladmin.cc
      client/mysqlbinlog.cc
      client/mysqlcheck.c
      client/mysqldump.c
      client/mysqlimport.c
      client/mysqlshow.c
      client/mysqlslap.c
      client/mysqltest.cc
      client/readline.cc
      client/sql_string.cc
      cmake/abi_check.cmake
      cmake/bison.cmake
      cmake/build_configurations/mysql_release.cmake
      cmake/cat.cmake
      cmake/check_minimal_version.cmake
      cmake/cmake_parse_arguments.cmake
      cmake/configure.pl
      cmake/cpack_source_ignore_files.cmake
      cmake/create_initial_db.cmake.in
      cmake/do_abi_check.cmake
      cmake/dtrace.cmake
      cmake/dtrace_prelink.cmake
      cmake/install_layout.cmake
      cmake/install_macros.cmake
      cmake/libutils.cmake
      cmake/maintainer.cmake
      cmake/make_dist.cmake.in
      cmake/merge_archives_unix.cmake.in
      cmake/mysql_add_executable.cmake
      cmake/mysql_version.cmake
      cmake/os/AIX.cmake
      cmake/os/Cygwin.cmake
      cmake/os/Darwin.cmake
      cmake/os/HP-UX.cmake
      cmake/os/Linux.cmake
      cmake/os/OS400.cmake
      cmake/os/SunOS.cmake
      cmake/os/Windows.cmake
      cmake/os/WindowsCache.cmake
      cmake/package_name.cmake
      cmake/plugin.cmake
      cmake/readline.cmake
      cmake/stack_direction.c
      cmake/versioninfo.rc.in
      cmake/zlib.cmake
      cmd-line-utils/readline/CMakeLists.txt
      config.h.cmake
      configure.cmake
      dbug/dbug.c
      dbug/dbug_add_tags.pl
      dbug/dbug_analyze.c
      dbug/my_main.c
      dbug/tests.c
      extra/comp_err.c
      extra/innochecksum.c
      extra/my_print_defaults.c
      extra/mysql_waitpid.c
      extra/perror.c
      extra/replace.c
      extra/resolve_stack_dump.c
      extra/resolveip.c
      extra/yassl/include/cert_wrapper.hpp
      extra/yassl/include/openssl/prefix_ssl.h
      extra/yassl/include/openssl/ssl.h
      extra/yassl/include/openssl/transport_types.h
      extra/yassl/include/socket_wrapper.hpp
      extra/yassl/include/yassl_error.hpp
      extra/yassl/include/yassl_imp.hpp
      extra/yassl/include/yassl_int.hpp
      extra/yassl/include/yassl_types.hpp
      extra/yassl/src/buffer.cpp
      extra/yassl/src/cert_wrapper.cpp
      extra/yassl/src/crypto_wrapper.cpp
      extra/yassl/src/handshake.cpp
      extra/yassl/src/socket_wrapper.cpp
      extra/yassl/src/ssl.cpp
      extra/yassl/src/yassl_error.cpp
      extra/yassl/src/yassl_imp.cpp
      extra/yassl/src/yassl_int.cpp
      extra/yassl/taocrypt/include/asn.hpp
      extra/yassl/taocrypt/include/block.hpp
      extra/yassl/taocrypt/include/blowfish.hpp
      extra/yassl/taocrypt/include/misc.hpp
      extra/yassl/taocrypt/include/modes.hpp
      extra/yassl/taocrypt/include/runtime.hpp
      extra/yassl/taocrypt/src/aes.cpp
      extra/yassl/taocrypt/src/algebra.cpp
      extra/yassl/taocrypt/src/asn.cpp
      extra/yassl/taocrypt/src/blowfish.cpp
      extra/yassl/taocrypt/src/coding.cpp
      extra/yassl/taocrypt/src/integer.cpp
      extra/yassl/taocrypt/src/misc.cpp
      extra/yassl/taocrypt/src/random.cpp
      extra/yassl/taocrypt/src/twofish.cpp
      extra/yassl/testsuite/test.hpp
      include/atomic/gcc_builtins.h
      include/atomic/generic-msvc.h
      include/atomic/nolock.h
      include/atomic/rwlock.h
      include/atomic/solaris.h
      include/atomic/x86-gcc.h
      include/base64.h
      include/decimal.h
      include/errmsg.h
      include/hash.h
      include/heap.h
      include/keycache.h
      include/lf.h
      include/m_string.h
      include/my_aes.h
      include/my_alarm.h
      include/my_alloc.h
      include/my_atomic.h
      include/my_attribute.h
      include/my_bit.h
      include/my_bitmap.h
      include/my_compiler.h
      include/my_dbug.h
      include/my_dir.h
      include/my_getopt.h
      include/my_global.h
      include/my_libwrap.h
      include/my_list.h
      include/my_nosys.h
      include/my_rdtsc.h
      include/my_stacktrace.h
      include/my_sys.h
      include/my_time.h
      include/my_uctype.h
      include/myisam.h
      include/myisammrg.h
      include/myisampack.h
      include/mysql.h
      include/mysql/client_plugin.h
      include/mysql/plugin.h
      include/mysql/plugin_audit.h
      include/mysql/plugin_audit.h.pp
      include/mysql/plugin_auth.h
      include/mysql/plugin_auth.h.pp
      include/mysql/plugin_auth_common.h
      include/mysql/plugin_ftparser.h.pp
      include/mysql/psi/mysql_file.h
      include/mysql/psi/mysql_stage.h
      include/mysql/psi/mysql_statement.h
      include/mysql/psi/mysql_table.h
      include/mysql/psi/mysql_thread.h
      include/mysql/psi/psi.h
      include/mysql/psi/psi_abi_v1.h.pp
      include/mysql/service_my_snprintf.h
      include/mysql/service_thd_alloc.h
      include/mysql/service_thd_wait.h
      include/mysql/service_thread_scheduler.h
      include/mysql/services.h
      include/mysql/thread_pool_priv.h
      include/mysql_com.h
      include/mysql_embed.h
      include/mysys_err.h
      include/password.h
      include/probes_mysql.d.base
      include/probes_mysql.h
      include/queues.h
      include/rijndael.h
      include/service_versions.h
      include/sha1.h
      include/sha2.h
      include/sql_common.h
      include/sslopt-case.h
      include/sslopt-longopts.h
      include/sslopt-vars.h
      include/thr_alarm.h
      include/thr_lock.h
      include/waiting_threads.h
      include/welcome_copyright_notice.h
      libmysql/client_settings.h
      libmysql/errmsg.c
      libmysql/get_password.c
      libmysqld/emb_qcache.cc
      libmysqld/emb_qcache.h
      libmysqld/embedded_priv.h
      libmysqld/examples/CMakeLists.txt
      libmysqld/examples/builder-sample/emb_sample.bpr
      libmysqld/examples/builder-sample/emb_sample.cpp
      libmysqld/examples/builder-sample/emb_samples.cpp
      libmysqld/examples/builder-sample/emb_samples.h
      libmysqld/lib_sql.cc
      libmysqld/libmysqld.c
      libservices/CMakeLists.txt
      libservices/HOWTO
      libservices/my_snprintf_service.c
      libservices/my_thread_scheduler_service.c
      libservices/thd_alloc_service.c
      libservices/thd_wait_service.c
      mysql-test/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/default_my.cnf
      mysql-test/include/default_mysqld.cnf
      mysql-test/include/icp_tests.inc
      mysql-test/include/join_cache.inc
      mysql-test/include/mix1.inc
      mysql-test/include/mtr_check.sql
      mysql-test/include/mtr_warnings.sql
      mysql-test/include/set_binlog_format_mixed.sql
      mysql-test/include/set_binlog_format_row.sql
      mysql-test/include/set_binlog_format_statement.sql
      mysql-test/include/subquery.inc
      mysql-test/include/subquery_mat.inc
      mysql-test/include/subquery_sj.inc
      mysql-test/lib/My/Config.pm
      mysql-test/lib/My/ConfigFactory.pm
      mysql-test/lib/My/File/Path.pm
      mysql-test/lib/My/Find.pm
      mysql-test/lib/My/Handles.pm
      mysql-test/lib/My/Options.pm
      mysql-test/lib/My/Platform.pm
      mysql-test/lib/My/SafeProcess.pm
      mysql-test/lib/My/SafeProcess/Base.pm
      mysql-test/lib/My/SafeProcess/safe_kill_win.cc
      mysql-test/lib/My/SafeProcess/safe_process.pl
      mysql-test/lib/My/SafeProcess/safe_process_win.cc
      mysql-test/lib/My/SysInfo.pm
      mysql-test/lib/mtr_cases.pm
      mysql-test/lib/mtr_gprof.pl
      mysql-test/lib/mtr_io.pl
      mysql-test/lib/mtr_stress.pl
      mysql-test/lib/mtr_unique.pm
      mysql-test/lib/t/Base.t
      mysql-test/lib/t/Find.t
      mysql-test/lib/t/Options.t
      mysql-test/lib/t/Platform.t
      mysql-test/lib/t/SafeProcess.t
      mysql-test/lib/t/SafeProcessStress.pl
      mysql-test/lib/t/copytree.t
      mysql-test/lib/t/dummyd.pl
      mysql-test/lib/t/rmtree.t
      mysql-test/lib/t/testMyConfig.t
      mysql-test/lib/t/testMyConfigFactory.t
      mysql-test/lib/t/test_child.pl
      mysql-test/lib/v1/My/Config.pm
      mysql-test/lib/v1/mtr_cases.pl
      mysql-test/lib/v1/mtr_gcov.pl
      mysql-test/lib/v1/mtr_gprof.pl
      mysql-test/lib/v1/mtr_im.pl
      mysql-test/lib/v1/mtr_io.pl
      mysql-test/lib/v1/mtr_match.pl
      mysql-test/lib/v1/mtr_misc.pl
      mysql-test/lib/v1/mtr_process.pl
      mysql-test/lib/v1/mtr_report.pl
      mysql-test/lib/v1/mtr_stress.pl
      mysql-test/lib/v1/mtr_timer.pl
      mysql-test/lib/v1/mtr_unique.pl
      mysql-test/lib/v1/mysql-test-run.pl
      mysql-test/mysql-test-run.pl
      mysql-test/r/1st.result
      mysql-test/r/alter_table.result
      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/connect.result
      mysql-test/r/count_distinct.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_utf16.result
      mysql-test/r/ctype_utf8.result
      mysql-test/r/date_formats.result
      mysql-test/r/distinct.result
      mysql-test/r/events_bugs.result
      mysql-test/r/explain.result
      mysql-test/r/flush.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-precise.result
      mysql-test/r/gis-rtree.result
      mysql-test/r/gis.result
      mysql-test/r/grant.result
      mysql-test/r/greedy_optimizer.result
      mysql-test/r/group_by.result
      mysql-test/r/group_min_max.result
      mysql-test/r/having.result
      mysql-test/r/information_schema-big.result
      mysql-test/r/information_schema.result
      mysql-test/r/information_schema_db.result
      mysql-test/r/innodb_icp.result
      mysql-test/r/innodb_icp_all.result
      mysql-test/r/innodb_icp_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_cache_jcl1.result
      mysql-test/r/join_cache_jcl2.result
      mysql-test/r/join_cache_jcl3.result
      mysql-test/r/join_cache_jcl4.result
      mysql-test/r/join_cache_jcl5.result
      mysql-test/r/join_cache_jcl6.result
      mysql-test/r/join_cache_jcl7.result
      mysql-test/r/join_cache_jcl8.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/log_tables_upgrade.result
      mysql-test/r/lowercase_table4.result
      mysql-test/r/merge.result
      mysql-test/r/multi_update.result
      mysql-test/r/multi_update_innodb.result
      mysql-test/r/myisam_icp.result
      mysql-test/r/myisam_icp_all.result
      mysql-test/r/myisam_icp_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/mysql_upgrade.result
      mysql-test/r/mysql_upgrade_ssl.result
      mysql-test/r/mysqlcheck.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/null_key_all.result
      mysql-test/r/null_key_icp.result
      mysql-test/r/null_key_none.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/parser.result
      mysql-test/r/partition.result
      mysql-test/r/partition_datatype.result
      mysql-test/r/partition_pruning.result
      mysql-test/r/plugin_auth.result
      mysql-test/r/ps.result
      mysql-test/r/query_cache.result
      mysql-test/r/query_cache_28249.result
      mysql-test/r/range_all.result
      mysql-test/r/row.result
      mysql-test/r/select_all.result
      mysql-test/r/select_all_jcl6.result
      mysql-test/r/select_found.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/signal.result
      mysql-test/r/signal_demo3.result
      mysql-test/r/sp-big.result
      mysql-test/r/sp-bugs.result
      mysql-test/r/sp-code.result
      mysql-test/r/sp-error.result
      mysql-test/r/sp-security.result
      mysql-test/r/sp.result
      mysql-test/r/sp_notembedded.result
      mysql-test/r/sp_sync.result
      mysql-test/r/sp_trans.result
      mysql-test/r/ssl.result
      mysql-test/r/ssl_compress.result
      mysql-test/r/strict.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/symlink.result
      mysql-test/r/system_mysql_db.result
      mysql-test/r/trigger-compat.result
      mysql-test/r/trigger.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/r/xml.result
      mysql-test/std_data/latin1.xml
      mysql-test/suite/binlog/r/binlog_stm_blackhole.result
      mysql-test/suite/binlog/t/binlog_row_mix_innodb_myisam-master.opt
      mysql-test/suite/binlog/t/binlog_stm_mix_innodb_myisam-master.opt
      mysql-test/suite/federated/federated.result
      mysql-test/suite/funcs_1/r/innodb_storedproc_02.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_columns_mysql.result
      mysql-test/suite/funcs_1/r/is_columns_mysql_embedded.result
      mysql-test/suite/funcs_1/r/is_key_column_usage.result
      mysql-test/suite/funcs_1/r/is_statistics.result
      mysql-test/suite/funcs_1/r/is_statistics_mysql.result
      mysql-test/suite/funcs_1/r/is_statistics_mysql_embedded.result
      mysql-test/suite/funcs_1/r/is_table_constraints.result
      mysql-test/suite/funcs_1/r/is_table_constraints_mysql.result
      mysql-test/suite/funcs_1/r/is_table_constraints_mysql_embedded.result
      mysql-test/suite/funcs_1/r/is_tables_is.result
      mysql-test/suite/funcs_1/r/is_tables_mysql.result
      mysql-test/suite/funcs_1/r/is_tables_mysql_embedded.result
      mysql-test/suite/funcs_1/r/memory_storedproc_02.result
      mysql-test/suite/funcs_1/r/myisam_storedproc_02.result
      mysql-test/suite/funcs_1/r/storedproc.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-use-sys-malloc.result
      mysql-test/suite/innodb/r/innodb-zip.result
      mysql-test/suite/innodb/r/innodb_bug54044.result
      mysql-test/suite/innodb/r/innodb_bug57904.result
      mysql-test/suite/innodb/r/innodb_gis.result
      mysql-test/suite/innodb/r/innodb_mysql.result
      mysql-test/suite/innodb/t/innodb-index.test
      mysql-test/suite/innodb/t/innodb-system-table-view.test
      mysql-test/suite/innodb/t/innodb-use-sys-malloc-master.opt
      mysql-test/suite/innodb/t/innodb-use-sys-malloc.test
      mysql-test/suite/innodb/t/innodb-zip.test
      mysql-test/suite/innodb/t/innodb_bug11933790.test
      mysql-test/suite/innodb/t/innodb_bug54044.test
      mysql-test/suite/innodb/t/innodb_bug57904.test
      mysql-test/suite/innodb/t/innodb_bug60049.test
      mysql-test/suite/innodb/t/innodb_prefix_index_restart_server.test
      mysql-test/suite/innodb/t/innodb_stats.test
      mysql-test/suite/innodb/t/innodb_stats_drop_locked.test
      mysql-test/suite/perfschema/include/cleanup_helper.inc
      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/schema.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/include/upgrade_check.inc
      mysql-test/suite/perfschema/r/all_tests.result
      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/ortho_iter.result
      mysql-test/suite/perfschema/r/pfs_upgrade.result
      mysql-test/suite/perfschema/r/privilege_table_io.result
      mysql-test/suite/perfschema/r/query_cache.result
      mysql-test/suite/perfschema/r/relaylog.result
      mysql-test/suite/perfschema/r/schema.result
      mysql-test/suite/perfschema/r/selects.result
      mysql-test/suite/perfschema/r/setup_objects.result
      mysql-test/suite/perfschema/r/start_server_innodb.result
      mysql-test/suite/perfschema/r/start_server_no_cond_class.result
      mysql-test/suite/perfschema/r/start_server_no_cond_inst.result
      mysql-test/suite/perfschema/r/start_server_no_file_class.result
      mysql-test/suite/perfschema/r/start_server_no_file_inst.result
      mysql-test/suite/perfschema/r/start_server_no_mutex_class.result
      mysql-test/suite/perfschema/r/start_server_no_mutex_inst.result
      mysql-test/suite/perfschema/r/start_server_no_rwlock_class.result
      mysql-test/suite/perfschema/r/start_server_no_rwlock_inst.result
      mysql-test/suite/perfschema/r/start_server_no_setup_actors.result
      mysql-test/suite/perfschema/r/start_server_no_setup_objects.result
      mysql-test/suite/perfschema/r/start_server_no_stages_history.result
      mysql-test/suite/perfschema/r/start_server_no_stages_history_long.result
      mysql-test/suite/perfschema/r/start_server_no_statement_class.result
      mysql-test/suite/perfschema/r/start_server_no_statements_history.result
      mysql-test/suite/perfschema/r/start_server_no_statements_history_long.result
      mysql-test/suite/perfschema/r/start_server_no_table_hdl.result
      mysql-test/suite/perfschema/r/start_server_no_table_inst.result
      mysql-test/suite/perfschema/r/start_server_no_thread_class.result
      mysql-test/suite/perfschema/r/start_server_no_thread_inst.result
      mysql-test/suite/perfschema/r/start_server_off.result
      mysql-test/suite/perfschema/r/start_server_on.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/t/all_tests.test
      mysql-test/suite/perfschema/t/dml_setup_objects.test
      mysql-test/suite/perfschema/t/part_table_io.test
      mysql-test/suite/perfschema/t/privilege_table_io.test
      mysql-test/suite/perfschema/t/relaylog.test
      mysql-test/suite/perfschema/t/selects.test
      mysql-test/suite/perfschema/t/setup_objects.test
      mysql-test/suite/perfschema_stress/README
      mysql-test/suite/perfschema_stress/include/settings.inc
      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_row_sp005.result
      mysql-test/suite/rpl/r/rpl_row_sp006_InnoDB.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/r/relay_log_index_basic.result
      mysql-test/suite/sys_vars/t/all_vars.test
      mysql-test/suite/sys_vars/t/relay_log_index_basic.test
      mysql-test/t/alter_table.test
      mysql-test/t/bootstrap-master.opt
      mysql-test/t/bootstrap.test
      mysql-test/t/ctype_utf16.test
      mysql-test/t/ctype_utf8mb4-master.opt
      mysql-test/t/disabled.def
      mysql-test/t/events_bugs.test
      mysql-test/t/explain.test
      mysql-test/t/flush.test
      mysql-test/t/func_if.test
      mysql-test/t/func_math.test
      mysql-test/t/func_str.test
      mysql-test/t/func_time.test
      mysql-test/t/gis-precise.test
      mysql-test/t/gis-rtree.test
      mysql-test/t/gis.test
      mysql-test/t/grant.test
      mysql-test/t/greedy_optimizer.test
      mysql-test/t/group_by.test
      mysql-test/t/implicit_commit.test
      mysql-test/t/information_schema.test
      mysql-test/t/join_outer.test
      mysql-test/t/merge.test
      mysql-test/t/multi_update.test
      mysql-test/t/multi_update_innodb.test
      mysql-test/t/parser.test
      mysql-test/t/partition.test
      mysql-test/t/partition_datatype.test
      mysql-test/t/partition_pruning.test
      mysql-test/t/plugin_auth.test
      mysql-test/t/ps.test
      mysql-test/t/query_cache_28249.test
      mysql-test/t/sp-error.test
      mysql-test/t/sp-security.test
      mysql-test/t/sp.test
      mysql-test/t/sp_notembedded.test
      mysql-test/t/sp_sync.test
      mysql-test/t/symlink.test
      mysql-test/t/system_mysql_db_fix40123.test
      mysql-test/t/system_mysql_db_fix50030.test
      mysql-test/t/system_mysql_db_fix50117.test
      mysql-test/t/trigger-compat.test
      mysql-test/t/type_datetime.test
      mysql-test/t/view.test
      mysql-test/t/xml.test
      mysys/CMakeLists.txt
      mysys/array.c
      mysys/base64.c
      mysys/charset-def.c
      mysys/checksum.c
      mysys/errors.c
      mysys/hash.c
      mysys/lf_alloc-pin.c
      mysys/lf_dynarray.c
      mysys/lf_hash.c
      mysys/list.c
      mysys/mf_cache.c
      mysys/mf_dirname.c
      mysys/mf_fn_ext.c
      mysys/mf_format.c
      mysys/mf_getdate.c
      mysys/mf_iocache.c
      mysys/mf_iocache2.c
      mysys/mf_keycache.c
      mysys/mf_keycaches.c
      mysys/mf_loadpath.c
      mysys/mf_pack.c
      mysys/mf_path.c
      mysys/mf_radix.c
      mysys/mf_sort.c
      mysys/mf_tempdir.c
      mysys/mf_tempfile.c
      mysys/mf_unixpath.c
      mysys/my_aes.c
      mysys/my_alloc.c
      mysys/my_atomic.c
      mysys/my_bit.c
      mysys/my_bitmap.c
      mysys/my_chsize.c
      mysys/my_compress.c
      mysys/my_conio.c
      mysys/my_copy.c
      mysys/my_create.c
      mysys/my_delete.c
      mysys/my_error.c
      mysys/my_file.c
      mysys/my_fstream.c
      mysys/my_gethwaddr.c
      mysys/my_getncpus.c
      mysys/my_getopt.c
      mysys/my_getwd.c
      mysys/my_init.c
      mysys/my_largepage.c
      mysys/my_lib.c
      mysys/my_lock.c
      mysys/my_lockmem.c
      mysys/my_malloc.c
      mysys/my_mess.c
      mysys/my_mmap.c
      mysys/my_new.cc
      mysys/my_once.c
      mysys/my_open.c
      mysys/my_pread.c
      mysys/my_pthread.c
      mysys/my_quick.c
      mysys/my_rdtsc.c
      mysys/my_read.c
      mysys/my_redel.c
      mysys/my_rename.c
      mysys/my_seek.c
      mysys/my_sleep.c
      mysys/my_static.c
      mysys/my_static.h
      mysys/my_symlink.c
      mysys/my_sync.c
      mysys/my_thr_init.c
      mysys/my_timer_cycles.il
      mysys/my_wincond.c
      mysys/my_windac.c
      mysys/my_winerr.c
      mysys/my_winfile.c
      mysys/my_winthread.c
      mysys/my_write.c
      mysys/mysys_priv.h
      mysys/ptr_cmp.c
      mysys/queues.c
      mysys/rijndael.c
      mysys/sha1.c
      mysys/stacktrace.c
      mysys/string.c
      mysys/test_charset.c
      mysys/testhash.c
      mysys/thr_lock.c
      mysys/thr_mutex.c
      mysys/thr_rwlock.c
      mysys/waiting_threads.c
      packaging/WiX/CMakeLists.txt
      packaging/WiX/CPackWixConfig.cmake
      packaging/WiX/ca/CMakeLists.txt
      packaging/WiX/ca/CustomAction.cpp
      packaging/WiX/create_msi.cmake.in
      packaging/WiX/custom_ui.wxs
      packaging/WiX/extra.wxs.in
      packaging/WiX/mysql_server.wxs.in
      plugin/audit_null/audit_null.c
      plugin/auth/auth_socket.c
      plugin/auth/test_plugin.c
      plugin/daemon_example/daemon_example.cc
      plugin/fulltext/plugin_example.c
      plugin/semisync/semisync_master.cc
      plugin/semisync/semisync_master.h
      plugin/semisync/semisync_master_plugin.cc
      plugin/semisync/semisync_slave.cc
      plugin/semisync/semisync_slave.h
      regex/CMakeLists.txt
      scripts/dheadgen.pl
      scripts/make_binary_distribution.sh
      scripts/make_win_bin_dist
      scripts/mysql_config.pl.in
      scripts/mysql_config.sh
      scripts/mysql_convert_table_format.sh
      scripts/mysql_find_rows.sh
      scripts/mysql_fix_extensions.sh
      scripts/mysql_install_db.pl.in
      scripts/mysql_install_db.sh
      scripts/mysql_secure_installation.pl.in
      scripts/mysql_secure_installation.sh
      scripts/mysql_setpermission.sh
      scripts/mysql_system_tables.sql
      scripts/mysql_system_tables_data.sql
      scripts/mysql_system_tables_fix.sql
      scripts/mysql_zap.sh
      scripts/mysqlaccess.sh
      scripts/mysqld_multi.sh
      scripts/mysqldumpslow.sh
      scripts/mysqlhotcopy.sh
      sql-bench/as3ap.sh
      sql-bench/bench-count-distinct.sh
      sql-bench/bench-init.pl.sh
      sql-bench/compare-results.sh
      sql-bench/copy-db.sh
      sql-bench/crash-me.sh
      sql-bench/run-all-tests.sh
      sql-bench/server-cfg.sh
      sql-bench/test-ATIS.sh
      sql-bench/test-alter-table.sh
      sql-bench/test-big-tables.sh
      sql-bench/test-connect.sh
      sql-bench/test-create.sh
      sql-bench/test-insert.sh
      sql-bench/test-select.sh
      sql-bench/test-transactions.sh
      sql-bench/test-wisconsin.sh
      sql-common/client.c
      sql-common/client_plugin.c
      sql-common/my_time.c
      sql-common/my_user.c
      sql/CMakeLists.txt
      sql/binlog.cc
      sql/client_settings.h
      sql/contributors.h
      sql/custom_conf.h
      sql/debug_sync.cc
      sql/debug_sync.h
      sql/des_key_file.cc
      sql/event_data_objects.cc
      sql/event_db_repository.cc
      sql/event_db_repository.h
      sql/event_parse_data.cc
      sql/event_parse_data.h
      sql/event_queue.cc
      sql/event_queue.h
      sql/event_scheduler.cc
      sql/event_scheduler.h
      sql/events.cc
      sql/events.h
      sql/field.cc
      sql/field.h
      sql/field_conv.cc
      sql/filesort.cc
      sql/filesort_utils.cc
      sql/filesort_utils.h
      sql/gcalc_slicescan.cc
      sql/gcalc_slicescan.h
      sql/gcalc_tools.cc
      sql/gcalc_tools.h
      sql/gen_lex_hash.cc
      sql/gstream.cc
      sql/ha_ndbcluster.cc
      sql/ha_ndbcluster_binlog.cc
      sql/ha_ndbcluster_cond.cc
      sql/ha_partition.cc
      sql/ha_partition.h
      sql/handler.cc
      sql/handler.h
      sql/hash_filo.cc
      sql/hash_filo.h
      sql/item.cc
      sql/item.h
      sql/item_cmpfunc.cc
      sql/item_cmpfunc.h
      sql/item_create.cc
      sql/item_func.cc
      sql/item_func.h
      sql/item_geofunc.cc
      sql/item_row.cc
      sql/item_row.h
      sql/item_strfunc.cc
      sql/item_strfunc.h
      sql/item_subselect.cc
      sql/item_subselect.h
      sql/item_sum.cc
      sql/item_timefunc.cc
      sql/item_timefunc.h
      sql/item_xmlfunc.cc
      sql/item_xmlfunc.h
      sql/keycaches.cc
      sql/lex_symbol.h
      sql/lock.cc
      sql/lock.h
      sql/log.cc
      sql/log_event.cc
      sql/log_event_old.cc
      sql/log_event_old.h
      sql/main.cc
      sql/mdl.cc
      sql/mdl.h
      sql/message.h
      sql/my_decimal.cc
      sql/my_decimal.h
      sql/mysqld.cc
      sql/mysqld.h
      sql/mysqld_suffix.h
      sql/opt_range.cc
      sql/opt_range.h
      sql/opt_sum.cc
      sql/partition_info.cc
      sql/password.c
      sql/plistsort.c
      sql/procedure.cc
      sql/protocol.cc
      sql/records.cc
      sql/records.h
      sql/replication.h
      sql/rpl_constants.h
      sql/rpl_info.cc
      sql/rpl_info.h
      sql/rpl_info_factory.cc
      sql/rpl_info_factory.h
      sql/rpl_info_file.cc
      sql/rpl_info_file.h
      sql/rpl_info_handler.cc
      sql/rpl_info_handler.h
      sql/rpl_info_table.cc
      sql/rpl_info_table.h
      sql/rpl_info_table_access.cc
      sql/rpl_info_values.cc
      sql/rpl_master.cc
      sql/rpl_mi.cc
      sql/rpl_mi.h
      sql/rpl_record.cc
      sql/rpl_record_old.cc
      sql/rpl_reporting.cc
      sql/rpl_reporting.h
      sql/rpl_rli.cc
      sql/rpl_rli.h
      sql/rpl_slave.cc
      sql/rpl_slave.h
      sql/rpl_utility.h
      sql/scheduler.cc
      sql/scheduler.h
      sql/server_ids.h
      sql/set_var.cc
      sql/set_var.h
      sql/share/CMakeLists.txt
      sql/share/charsets/cp1251.xml
      sql/share/errmsg-utf8.txt
      sql/sp.cc
      sql/sp_cache.cc
      sql/sp_cache.h
      sql/sp_head.cc
      sql/sp_head.h
      sql/sp_pcontext.cc
      sql/sp_pcontext.h
      sql/sp_rcontext.cc
      sql/sp_rcontext.h
      sql/spatial.cc
      sql/sql_acl.cc
      sql/sql_acl.h
      sql/sql_admin.cc
      sql/sql_admin.h
      sql/sql_alloc_error_handler.cc
      sql/sql_alter.cc
      sql/sql_alter.h
      sql/sql_analyse.cc
      sql/sql_analyse.h
      sql/sql_array.h
      sql/sql_audit.cc
      sql/sql_audit.h
      sql/sql_base.cc
      sql/sql_base.h
      sql/sql_binlog.cc
      sql/sql_builtin.cc.in
      sql/sql_cache.cc
      sql/sql_callback.h
      sql/sql_class.cc
      sql/sql_class.h
      sql/sql_cmd.h
      sql/sql_connect.cc
      sql/sql_connect.h
      sql/sql_const.h
      sql/sql_crypt.cc
      sql/sql_crypt.h
      sql/sql_cursor.h
      sql/sql_db.cc
      sql/sql_delete.cc
      sql/sql_derived.cc
      sql/sql_do.cc
      sql/sql_error.cc
      sql/sql_error.h
      sql/sql_handler.cc
      sql/sql_handler.h
      sql/sql_help.cc
      sql/sql_insert.cc
      sql/sql_join_cache.cc
      sql/sql_lex.cc
      sql/sql_lex.h
      sql/sql_list.cc
      sql/sql_list.h
      sql/sql_load.cc
      sql/sql_locale.cc
      sql/sql_parse.cc
      sql/sql_parse.h
      sql/sql_partition.cc
      sql/sql_partition.h
      sql/sql_partition_admin.cc
      sql/sql_partition_admin.h
      sql/sql_plist.h
      sql/sql_plugin.cc
      sql/sql_plugin.h
      sql/sql_plugin_services.h
      sql/sql_prepare.cc
      sql/sql_prepare.h
      sql/sql_priv.h
      sql/sql_profile.cc
      sql/sql_rename.cc
      sql/sql_select.cc
      sql/sql_select.h
      sql/sql_servers.cc
      sql/sql_show.cc
      sql/sql_show.h
      sql/sql_signal.cc
      sql/sql_signal.h
      sql/sql_string.h
      sql/sql_table.cc
      sql/sql_table.h
      sql/sql_tablespace.cc
      sql/sql_test.cc
      sql/sql_test.h
      sql/sql_time.cc
      sql/sql_time.h
      sql/sql_trigger.cc
      sql/sql_trigger.h
      sql/sql_udf.h
      sql/sql_union.cc
      sql/sql_update.cc
      sql/sql_view.cc
      sql/sql_yacc.yy
      sql/structs.h
      sql/sys_vars.cc
      sql/sys_vars.h
      sql/table.cc
      sql/table.h
      sql/transaction.cc
      sql/transaction.h
      sql/tzfile.h
      sql/tztime.cc
      sql/tztime.h
      sql/udf_example.c
      sql/unireg.cc
      storage/archive/archive_reader.c
      storage/archive/ha_archive.cc
      storage/archive/ha_archive.h
      storage/blackhole/ha_blackhole.cc
      storage/blackhole/ha_blackhole.h
      storage/csv/ha_tina.cc
      storage/csv/ha_tina.h
      storage/csv/transparent_file.cc
      storage/csv/transparent_file.h
      storage/example/ha_example.cc
      storage/example/ha_example.h
      storage/federated/ha_federated.cc
      storage/federated/ha_federated.h
      storage/heap/ha_heap.cc
      storage/heap/ha_heap.h
      storage/heap/heapdef.h
      storage/heap/hp_block.c
      storage/heap/hp_clear.c
      storage/heap/hp_close.c
      storage/heap/hp_create.c
      storage/heap/hp_open.c
      storage/heap/hp_panic.c
      storage/heap/hp_rename.c
      storage/heap/hp_rkey.c
      storage/heap/hp_static.c
      storage/heap/hp_test1.c
      storage/heap/hp_test2.c
      storage/heap/hp_write.c
      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/buf0flu.c
      storage/innobase/buf/buf0lru.c
      storage/innobase/buf/buf0rea.c
      storage/innobase/dict/dict0crea.c
      storage/innobase/fil/fil0fil.c
      storage/innobase/handler/ha_innodb.cc
      storage/innobase/handler/handler0alter.cc
      storage/innobase/handler/i_s.cc
      storage/innobase/include/btr0btr.h
      storage/innobase/include/btr0cur.h
      storage/innobase/include/btr0cur.ic
      storage/innobase/include/buf0buddy.h
      storage/innobase/include/buf0buddy.ic
      storage/innobase/include/buf0buf.h
      storage/innobase/include/buf0buf.ic
      storage/innobase/include/buf0lru.h
      storage/innobase/include/buf0rea.h
      storage/innobase/include/buf0types.h
      storage/innobase/include/db0err.h
      storage/innobase/include/os0file.h
      storage/innobase/include/os0file.ic
      storage/innobase/include/os0sync.ic
      storage/innobase/include/page0cur.ic
      storage/innobase/include/page0page.h
      storage/innobase/include/page0page.ic
      storage/innobase/include/rem0rec.h
      storage/innobase/include/rem0rec.ic
      storage/innobase/include/row0row.h
      storage/innobase/include/row0row.ic
      storage/innobase/include/row0upd.ic
      storage/innobase/include/srv0srv.h
      storage/innobase/include/srv0start.h
      storage/innobase/include/sync0rw.ic
      storage/innobase/include/sync0sync.h
      storage/innobase/include/sync0sync.ic
      storage/innobase/include/trx0rseg.h
      storage/innobase/include/trx0sys.h
      storage/innobase/include/trx0sys.ic
      storage/innobase/include/trx0trx.h
      storage/innobase/include/trx0trx.ic
      storage/innobase/include/univ.i
      storage/innobase/include/ut0ut.h
      storage/innobase/lock/lock0lock.c
      storage/innobase/log/log0recv.c
      storage/innobase/os/os0file.c
      storage/innobase/page/page0cur.c
      storage/innobase/page/page0page.c
      storage/innobase/page/page0zip.c
      storage/innobase/read/read0read.c
      storage/innobase/rem/rem0rec.c
      storage/innobase/row/row0ins.c
      storage/innobase/row/row0mysql.c
      storage/innobase/row/row0purge.c
      storage/innobase/row/row0row.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/sync0rw.c
      storage/innobase/sync/sync0sync.c
      storage/innobase/trx/trx0i_s.c
      storage/innobase/trx/trx0purge.c
      storage/innobase/trx/trx0rec.c
      storage/innobase/trx/trx0roll.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/myisam/fulltext.h
      storage/myisam/ha_myisam.cc
      storage/myisam/ha_myisam.h
      storage/myisam/mi_cache.c
      storage/myisam/mi_changed.c
      storage/myisam/mi_check.c
      storage/myisam/mi_close.c
      storage/myisam/mi_create.c
      storage/myisam/mi_dbug.c
      storage/myisam/mi_delete.c
      storage/myisam/mi_delete_all.c
      storage/myisam/mi_delete_table.c
      storage/myisam/mi_dynrec.c
      storage/myisam/mi_extra.c
      storage/myisam/mi_extrafunc.h
      storage/myisam/mi_info.c
      storage/myisam/mi_keycache.c
      storage/myisam/mi_locking.c
      storage/myisam/mi_log.c
      storage/myisam/mi_open.c
      storage/myisam/mi_packrec.c
      storage/myisam/mi_page.c
      storage/myisam/mi_panic.c
      storage/myisam/mi_preload.c
      storage/myisam/mi_range.c
      storage/myisam/mi_rename.c
      storage/myisam/mi_rkey.c
      storage/myisam/mi_rnext.c
      storage/myisam/mi_rnext_same.c
      storage/myisam/mi_rprev.c
      storage/myisam/mi_rsame.c
      storage/myisam/mi_scan.c
      storage/myisam/mi_search.c
      storage/myisam/mi_static.c
      storage/myisam/mi_statrec.c
      storage/myisam/mi_test1.c
      storage/myisam/mi_test2.c
      storage/myisam/mi_test3.c
      storage/myisam/mi_unique.c
      storage/myisam/mi_update.c
      storage/myisam/mi_write.c
      storage/myisam/myisam_ftdump.c
      storage/myisam/myisamdef.h
      storage/myisam/myisamlog.c
      storage/myisam/myisampack.c
      storage/myisam/rt_split.c
      storage/myisam/rt_test.c
      storage/myisam/sort.c
      storage/myisam/sp_key.c
      storage/myisam/sp_test.c
      storage/myisammrg/ha_myisammrg.cc
      storage/myisammrg/ha_myisammrg.h
      storage/myisammrg/myrg_close.c
      storage/myisammrg/myrg_create.c
      storage/myisammrg/myrg_def.h
      storage/myisammrg/myrg_extra.c
      storage/myisammrg/myrg_info.c
      storage/myisammrg/myrg_open.c
      storage/myisammrg/myrg_queue.c
      storage/myisammrg/myrg_rkey.c
      storage/myisammrg/myrg_static.c
      storage/ndb/MAINTAINERS
      storage/ndb/config/win-lib.am
      storage/ndb/config/win-prg.am
      storage/ndb/src/kernel/blocks/lgman.cpp
      storage/ndb/test/run-test/autotest-boot.sh
      storage/ndb/test/run-test/autotest-run.sh
      storage/ndb/test/run-test/files.cpp
      storage/ndb/test/run-test/setup.cpp
      storage/ndb/test/run-test/upgrade-boot.sh
      storage/ndb/test/tools/log_listner.cpp
      storage/perfschema/ha_perfschema.cc
      storage/perfschema/ha_perfschema.h
      storage/perfschema/pfs.cc
      storage/perfschema/pfs.h
      storage/perfschema/pfs_atomic.h
      storage/perfschema/pfs_column_values.cc
      storage/perfschema/pfs_column_values.h
      storage/perfschema/pfs_con_slice.cc
      storage/perfschema/pfs_con_slice.h
      storage/perfschema/pfs_defaults.cc
      storage/perfschema/pfs_defaults.h
      storage/perfschema/pfs_engine_table.cc
      storage/perfschema/pfs_engine_table.h
      storage/perfschema/pfs_events.h
      storage/perfschema/pfs_events_stages.cc
      storage/perfschema/pfs_events_stages.h
      storage/perfschema/pfs_events_statements.cc
      storage/perfschema/pfs_events_statements.h
      storage/perfschema/pfs_events_waits.cc
      storage/perfschema/pfs_events_waits.h
      storage/perfschema/pfs_global.h
      storage/perfschema/pfs_instr.cc
      storage/perfschema/pfs_instr.h
      storage/perfschema/pfs_instr_class.cc
      storage/perfschema/pfs_instr_class.h
      storage/perfschema/pfs_server.cc
      storage/perfschema/pfs_server.h
      storage/perfschema/pfs_setup_actor.cc
      storage/perfschema/pfs_setup_actor.h
      storage/perfschema/pfs_setup_object.cc
      storage/perfschema/pfs_setup_object.h
      storage/perfschema/pfs_stat.h
      storage/perfschema/pfs_timer.cc
      storage/perfschema/pfs_timer.h
      storage/perfschema/pfs_visitor.cc
      storage/perfschema/pfs_visitor.h
      storage/perfschema/table_esgs_by_thread_by_event_name.cc
      storage/perfschema/table_esgs_by_thread_by_event_name.h
      storage/perfschema/table_esgs_global_by_event_name.cc
      storage/perfschema/table_esgs_global_by_event_name.h
      storage/perfschema/table_esms_by_thread_by_event_name.cc
      storage/perfschema/table_esms_by_thread_by_event_name.h
      storage/perfschema/table_esms_global_by_event_name.cc
      storage/perfschema/table_esms_global_by_event_name.h
      storage/perfschema/table_events_stages.cc
      storage/perfschema/table_events_stages.h
      storage/perfschema/table_events_statements.cc
      storage/perfschema/table_events_statements.h
      storage/perfschema/table_events_waits.cc
      storage/perfschema/table_events_waits.h
      storage/perfschema/table_ews_by_thread_by_event_name.cc
      storage/perfschema/table_ews_by_thread_by_event_name.h
      storage/perfschema/table_ews_global_by_event_name.cc
      storage/perfschema/table_ews_global_by_event_name.h
      storage/perfschema/table_setup_consumers.cc
      storage/perfschema/table_setup_consumers.h
      storage/perfschema/table_setup_instruments.cc
      storage/perfschema/table_setup_instruments.h
      storage/perfschema/table_setup_objects.cc
      storage/perfschema/table_setup_objects.h
      storage/perfschema/table_setup_timers.cc
      storage/perfschema/table_tiws_by_index_usage.cc
      storage/perfschema/table_tiws_by_index_usage.h
      storage/perfschema/unittest/CMakeLists.txt
      storage/perfschema/unittest/pfs-t.cc
      storage/perfschema/unittest/pfs_instr-oom-t.cc
      storage/perfschema/unittest/pfs_instr-t.cc
      storage/perfschema/unittest/pfs_instr_class-oom-t.cc
      storage/perfschema/unittest/pfs_instr_class-t.cc
      storage/perfschema/unittest/pfs_timer-t.cc
      strings/bchange.c
      strings/bmove_upp.c
      strings/ctype-cp932.c
      strings/ctype-eucjpms.c
      strings/ctype-extra.c
      strings/ctype-mb.c
      strings/ctype-ucs2.c
      strings/ctype-ujis.c
      strings/ctype-win1250ch.c
      strings/decimal.c
      strings/do_ctype.c
      strings/dtoa.c
      strings/int2str.c
      strings/is_prefix.c
      strings/llstr.c
      strings/longlong2str.c
      strings/my_strtoll10.c
      strings/str2int.c
      strings/str_alloc.c
      strings/strappend.c
      strings/strcend.c
      strings/strcont.c
      strings/strend.c
      strings/strfill.c
      strings/strmake.c
      strings/strmov.c
      strings/strnlen.c
      strings/strnmov.c
      strings/strxmov.c
      strings/strxnmov.c
      strings/utr11-dump.c
      strings/xml.c
      support-files/config.huge.ini.sh
      support-files/config.medium.ini.sh
      support-files/config.small.ini.sh
      support-files/dtrace/locktime.d
      support-files/dtrace/query-execandqc.d
      support-files/dtrace/query-filesort-time.d
      support-files/dtrace/query-network-time.d
      support-files/dtrace/query-parse-time.d
      support-files/dtrace/query-rowops.d
      support-files/dtrace/query-time.d
      support-files/dtrace/statement-time.d
      support-files/dtrace/statement-type-aggregate.d
      support-files/mysql-log-rotate.sh
      support-files/mysql.spec.sh
      support-files/ndb-config-2-node.ini.sh
      tests/big_record.pl
      tests/bug25714.c
      tests/grant.pl
      tests/mysql_client_test.c
      tests/thread_test.c
      unittest/examples/skip-t.c
      unittest/examples/skip_all-t.c
      unittest/examples/todo-t.c
      unittest/gunit/CMakeLists.txt
      unittest/gunit/FindGTest.cmake
      unittest/gunit/gunit_test_main.cc
      unittest/gunit/my_bitmap-t.cc
      unittest/gunit/my_decimal-t.cc
      unittest/gunit/sql_list-t.cc
      unittest/gunit/tap_event_listener.cc
      unittest/gunit/test_mdl_context_owner.h
      unittest/gunit/test_utils.cc
      unittest/gunit/test_utils.h
      unittest/gunit/thread_utils-t.cc
      unittest/gunit/thread_utils.cc
      unittest/gunit/thread_utils.h
      unittest/mysys/CMakeLists.txt
      unittest/mysys/base64-t.c
      unittest/mysys/lf-t.c
      unittest/mysys/my_atomic-t.c
      unittest/mysys/my_rdtsc-t.c
      unittest/mysys/my_vsnprintf-t.c
      unittest/mysys/thr_template.c
      unittest/mysys/waiting_threads-t.c
      unittest/mytap/t/basic-t.c
      unittest/strings/strings-t.c
      unittest/unit.pl
      vio/CMakeLists.txt
      vio/test-ssl.c
      vio/test-sslclient.c
      vio/test-sslserver.c
      vio/viosocket.c
      vio/viosslfactories.c
      vio/viotest-ssl.c
      vio/viotest-sslconnect.cc
      vio/viotest.cc
      win/create_def_file.js
=== modified file 'include/mysql/psi/psi.h'
--- a/include/mysql/psi/psi.h	2011-07-05 16:45:26 +0000
+++ b/include/mysql/psi/psi.h	2011-08-02 20:02:22 +0000
@@ -257,6 +257,12 @@ struct PSI_cond_locker;
 */
 struct PSI_file_locker;
 
+/**
+  Interface for an instrumented statement digest operation.
+  This is an opaque structure.
+*/
+struct PSI_digest_locker;
+
 /** Operation performed on an instrumented mutex. */
 enum PSI_mutex_operation
 {
@@ -744,6 +750,11 @@ struct PSI_table_locker_state_v1
   uint m_index;
 };
 
+struct PSI_digest_locker_state_v1
+{
+  int m_token_count;
+};
+
 /**
   State data storage for @c get_thread_statement_locker_v1_t,
   @c get_thread_statement_locker_v1_t.
@@ -802,6 +813,7 @@ struct PSI_statement_locker_state_v1
   ulong m_sort_rows;
   /** Metric, number of sort scans. */
   ulong m_sort_scan;
+  struct PSI_digest_locker_state_v1 m_digest_state;
 };
 
 /* Using typedef to make reuse between PSI_v1 and PSI_v2 easier later. */
@@ -1550,6 +1562,15 @@ typedef void (*set_statement_no_good_ind
 typedef void (*end_statement_v1_t)
   (struct PSI_statement_locker *locker, void *stmt_da);
 
+typedef struct PSI_digest_locker * (*digest_start_v1_t)
+  (struct PSI_digest_locker *locker);
+
+typedef void (*digest_add_token_v1_t)
+  (struct PSI_digest_locker *locker, uint token, char *yytext, int yylen);
+
+typedef void (*digest_end_v1_t)
+  (struct PSI_digest_locker *locker);
+
 /**
   Performance Schema Interface, version 1.
   @since PSI_VERSION_1
@@ -1731,6 +1752,12 @@ struct PSI_v1
   set_statement_no_good_index_used_t set_statement_no_good_index_used;
   /** @sa end_statement_v1_t. */
   end_statement_v1_t end_statement;
+  /** @sa digest_start_v1_t. */
+  digest_start_v1_t digest_start;
+  /** @sa digest_add_token_v1_t. */
+  digest_add_token_v1_t digest_add_token;
+  /** @sa digest_end_v1_t. */
+  digest_end_v1_t digest_end;
 };
 
 /** @} (end of group Group_PSI_v1) */

=== modified file 'include/mysql/psi/psi_abi_v1.h.pp'
--- a/include/mysql/psi/psi_abi_v1.h.pp	2011-07-05 16:45:26 +0000
+++ b/include/mysql/psi/psi_abi_v1.h.pp	2011-08-02 20:02:22 +0000
@@ -18,6 +18,7 @@ struct PSI_mutex_locker;
 struct PSI_rwlock_locker;
 struct PSI_cond_locker;
 struct PSI_file_locker;
+struct PSI_digest_locker;
 enum PSI_mutex_operation
 {
   PSI_MUTEX_LOCK= 0,
@@ -170,6 +171,10 @@ struct PSI_table_locker_state_v1
   void *m_wait;
   uint m_index;
 };
+struct PSI_digest_locker_state_v1
+{
+  int m_token_count;
+};
 struct PSI_statement_locker_state_v1
 {
   my_bool m_discarded;
@@ -195,6 +200,7 @@ struct PSI_statement_locker_state_v1
   ulong m_sort_range;
   ulong m_sort_rows;
   ulong m_sort_scan;
+  struct PSI_digest_locker_state_v1 m_digest_state;
 };
 typedef void (*register_mutex_v1_t)
   (const char *category, struct PSI_mutex_info_v1 *info, int count);
@@ -372,6 +378,12 @@ typedef void (*set_statement_no_good_ind
   (struct PSI_statement_locker *locker);
 typedef void (*end_statement_v1_t)
   (struct PSI_statement_locker *locker, void *stmt_da);
+typedef struct PSI_digest_locker * (*digest_start_v1_t)
+  (struct PSI_digest_locker *locker);
+typedef void (*digest_add_token_v1_t)
+  (struct PSI_digest_locker *locker, uint token, char *yytext, int yylen);
+typedef void (*digest_end_v1_t)
+  (struct PSI_digest_locker *locker);
 struct PSI_v1
 {
   register_mutex_v1_t register_mutex;
@@ -462,6 +474,9 @@ struct PSI_v1
   set_statement_no_index_used_t set_statement_no_index_used;
   set_statement_no_good_index_used_t set_statement_no_good_index_used;
   end_statement_v1_t end_statement;
+  digest_start_v1_t digest_start;
+  digest_add_token_v1_t digest_add_token;
+  digest_end_v1_t digest_end;
 };
 typedef struct PSI_v1 PSI;
 typedef struct PSI_mutex_info_v1 PSI_mutex_info;

=== modified file 'include/mysql/psi/psi_abi_v2.h.pp'
--- a/include/mysql/psi/psi_abi_v2.h.pp	2011-04-18 23:05:27 +0000
+++ b/include/mysql/psi/psi_abi_v2.h.pp	2011-08-02 20:02:22 +0000
@@ -18,6 +18,7 @@ struct PSI_mutex_locker;
 struct PSI_rwlock_locker;
 struct PSI_cond_locker;
 struct PSI_file_locker;
+struct PSI_digest_locker;
 enum PSI_mutex_operation
 {
   PSI_MUTEX_LOCK= 0,

=== modified file 'mysys/psi_noop.cc'
--- a/mysys/psi_noop.cc	2011-07-14 08:11:07 +0000
+++ b/mysys/psi_noop.cc	2011-08-02 20:02:22 +0000
@@ -543,6 +543,24 @@ static void end_statement_noop(PSI_state
   return;
 }
 
+static struct PSI_digest_locker* digest_start_noop(PSI_digest_locker *locker)
+{
+  return NULL;
+}
+
+static void digest_add_token_noop(PSI_digest_locker *locker,
+                                uint token,
+                                char *yytext,
+                                int yylen)
+{
+  return;
+}
+
+static void digest_end_noop(PSI_digest_locker *locker)
+{
+  return;
+}
+
 static PSI PSI_noop=
 {
   register_mutex_noop,
@@ -631,7 +649,10 @@ static PSI PSI_noop=
   inc_statement_sort_scan_noop,
   set_statement_no_index_used_noop,
   set_statement_no_good_index_used_noop,
-  end_statement_noop
+  end_statement_noop,
+  digest_start_noop,
+  digest_add_token_noop,
+  digest_end_noop
 };
 
 /**

=== modified file 'sql/sql_lex.cc'
--- a/sql/sql_lex.cc	2011-07-25 10:54:06 +0000
+++ b/sql/sql_lex.cc	2011-08-02 20:02:22 +0000
@@ -904,6 +904,18 @@ int MYSQLlex(void *arg, void *yythd)
     break;
   }
 
+  /* 
+    Passing token to PS function to calculate statement digest
+    for this statement.
+  */
+  if( PSI_server != NULL && token != END_OF_INPUT && token != 0)
+  {
+    uint yylen;
+    char yychar[TOCK_NAME_LENGTH]={'\0'};
+    yylen = lip->yyLength() + 1;
+    strncpy(yychar, lip->get_cpp_tok_start(), yylen);
+    PSI_server->digest_add_token(lip->m_digest_psi,token,yychar,yylen);
+  }
   return token;
 }
 

=== modified file 'sql/sql_lex.h'
--- a/sql/sql_lex.h	2011-07-20 10:24:14 +0000
+++ b/sql/sql_lex.h	2011-08-02 20:02:22 +0000
@@ -2041,6 +2041,11 @@ public:
     NOTE: this member must be used within MYSQLlex() function only.
   */
   CHARSET_INFO *m_underscore_cs;
+  
+  /**
+    attribute for statement digest. 
+  */
+  PSI_digest_locker* m_digest_psi;
 };
 
 /* The state of the lex parsing. This is saved in the THD struct */

=== modified file 'storage/perfschema/pfs.cc'
--- a/storage/perfschema/pfs.cc	2011-07-07 19:13:19 +0000
+++ b/storage/perfschema/pfs.cc	2011-08-02 20:02:22 +0000
@@ -4237,6 +4237,33 @@ static void end_statement_v1(PSI_stateme
       break;
   }
 }
+
+static struct PSI_digest_locker* digest_start_v1(PSI_digest_locker *locker)
+{
+  //printf("\n inside digest_start_v1 \n");
+  /* TBD. */
+  
+  return NULL;
+}
+
+static void digest_add_token_v1(PSI_digest_locker *locker, 
+                                uint token, 
+                                char *yytext, 
+                                int yylen)
+{
+
+  //printf("\n inside digest_add_token_v1 \n");
+  //printf("\n Got Token [%s,%d]\n",yytext,yylen);
+  /* TBD. */
+}
+
+static void digest_end_v1(PSI_digest_locker *locker)
+{
+  //printf("\n inside digest_end_v1 \n");
+  /* TBD. */
+}
+
+
 /**
   Implementation of the instrumentation interface.
   @sa PSI_v1.
@@ -4329,7 +4356,10 @@ PSI_v1 PFS_v1=
   inc_statement_sort_scan_v1,
   set_statement_no_index_used_v1,
   set_statement_no_good_index_used_v1,
-  end_statement_v1
+  end_statement_v1,
+  digest_start_v1,
+  digest_add_token_v1,
+  digest_end_v1
 };
 
 static void* get_interface(int version)

=== modified file 'storage/perfschema/pfs_digest.cc'
--- a/storage/perfschema/pfs_digest.cc	2011-05-16 11:20:58 +0000
+++ b/storage/perfschema/pfs_digest.cc	2011-08-02 20:02:22 +0000
@@ -20,7 +20,9 @@
 
 #include "pfs_digest.h"
 #include "my_sys.h"
+#include "pfs_global.h"
 
+unsigned int statements_digest_size= 0;
 /** EVENTS_STATEMENTS_HISTORY_LONG circular buffer. */
 PFS_statements_digest_stat *statements_digest_stat_array= NULL;
 /** Consumer flag for table EVENTS_STATEMENTS_SUMMARY_BY_DIGEST. */
@@ -30,20 +32,30 @@ bool flag_statements_digest= true;
   Initialize table EVENTS_STATEMENTS_SUMMARY_BY_DIGEST.
   @param digest_sizing      
 */
-int init_digest(unsigned int digest_sizing)
+int init_digest(unsigned int statements_digest_sizing)
 {
   /* 
     TBD. Allocate memory for statements_digest_stat_array based on 
     performance_schema_digests_size values
   */
-  return 0;
+  statements_digest_size= statements_digest_sizing;
+ 
+  if (statements_digest_size == 0)
+    return 0;
+
+  statements_digest_stat_array=
+    PFS_MALLOC_ARRAY(statements_digest_size, PFS_statements_digest_stat,
+                     MYF(MY_ZEROFILL));
+
+  return (statements_digest_stat_array ? 0 : 1);
 }
 
 /** Cleanup table EVENTS_STATEMENTS_SUMMARY_BY_DIGEST. */
-int cleanup_digest(void)
+void cleanup_digest(void)
 {
   /* 
     TBD. Free memory allocated to statements_digest_stat_array. 
   */
-  return 0;
+  pfs_free(statements_digest_stat_array);
+  statements_digest_stat_array= NULL;
 }

=== modified file 'storage/perfschema/pfs_digest.h'
--- a/storage/perfschema/pfs_digest.h	2011-05-16 11:20:58 +0000
+++ b/storage/perfschema/pfs_digest.h	2011-08-02 20:02:22 +0000
@@ -30,6 +30,6 @@ struct PFS_statements_digest_stat
 };
 
 int init_digest(unsigned int digest_sizing);
-int cleanup_digest();
+void cleanup_digest();
 
 #endif

=== modified file 'storage/perfschema/pfs_engine_table.cc'
--- a/storage/perfschema/pfs_engine_table.cc	2011-08-02 07:53:14 +0000
+++ b/storage/perfschema/pfs_engine_table.cc	2011-08-02 20:02:22 +0000
@@ -54,6 +54,7 @@
 #include "pfs_setup_actor.h"
 #include "pfs_setup_object.h"
 #include "pfs_global.h"
+#include "pfs_digest.h"
 
 #include "sql_base.h"                           // close_thread_tables
 #include "lock.h"                               // MYSQL_LOCK_IGNORE_TIMEOUT
@@ -1072,11 +1073,24 @@ bool pfs_show_status(handlerton *hton, T
       size= thread_max * statement_stack_max * sizeof(PFS_events_statements);
       total_memory+= size;
       break;
+    case 92:
+      name= "events_statements_summary_by_digest.row_size";
+      size= sizeof(PFS_statements_digest_stat);
+      break;
+    case 93:
+      name= "events_statements_summary_by_digest.row_count";
+      size= statement_digest_max;
+      break;
+    case 94:
+      name= "events_statements_summary_by_digest.memory";
+      size= statement_digest_max * sizeof(PFS_statements_digest_stat);
+      total_memory+= size;
+      break;
     /*
       This case must be last,
       for aggregation in total_memory.
     */
-    case 92:
+    case 95:
       name= "performance_schema.memory";
       size= total_memory;
       /* This will fail if something is not advertised here */

=== modified file 'storage/perfschema/pfs_instr.cc'
--- a/storage/perfschema/pfs_instr.cc	2011-07-14 08:11:07 +0000
+++ b/storage/perfschema/pfs_instr.cc	2011-08-02 20:02:22 +0000
@@ -75,6 +75,8 @@ uint statement_stack_max;
 ulong locker_lost= 0;
 /** Number of statement lost. @sa STATEMENT_STACK_SIZE. */
 ulong statement_lost= 0;
+/** Digest size **/
+uint statement_digest_max= 0; 
 
 /**
   Mutex instrumentation instances array.
@@ -399,6 +401,8 @@ int init_instruments(const PFS_global_pa
       global_instr_class_statements_array[index].reset();
   }
 
+  statement_digest_max= param->m_digest_sizing;
+
   return 0;
 }
 

=== modified file 'storage/perfschema/pfs_instr.h'
--- a/storage/perfschema/pfs_instr.h	2011-07-07 19:13:19 +0000
+++ b/storage/perfschema/pfs_instr.h	2011-08-02 20:02:22 +0000
@@ -482,6 +482,7 @@ extern ulong events_stages_history_per_t
 extern ulong events_statements_history_per_thread;
 extern ulong locker_lost;
 extern ulong statement_lost;
+extern uint statement_digest_max;
 
 /* Exposing the data directly, for iterators. */
 

No bundle (reason: useless for push emails).
Thread
bzr push into mysql-trunk-wl5767 branch (mayank.prasad:3373 to 3374)WL#5767Mayank Prasad3 Aug