Merge lp:~laurynas-biveinis/percona-server/merge-5.6.11 into lp:percona-server/5.6

Proposed by Laurynas Biveinis
Status: Merged
Approved by: Alexey Kopytov
Approved revision: no longer in the source branch.
Merged at revision: 351
Proposed branch: lp:~laurynas-biveinis/percona-server/merge-5.6.11
Merge into: lp:percona-server/5.6
Prerequisite: lp:~laurynas-biveinis/percona-server/5.6-merge-1
Diff against target: 265040 lines (+139468/-89849)
832 files modified
Percona-Server/BUILD-CMAKE (+3/-1)
Percona-Server/BUILD/SETUP.sh (+1/-1)
Percona-Server/BUILD/build_mccge.sh (+1/-1)
Percona-Server/BUILD/compile-pentium (+1/-1)
Percona-Server/Docs/glibc-2.2.5.patch (+0/-137)
Percona-Server/Docs/linuxthreads.txt (+0/-19)
Percona-Server/README (+1/-1)
Percona-Server/VERSION (+1/-1)
Percona-Server/client/completion_hash.h (+2/-1)
Percona-Server/client/echo.c (+2/-1)
Percona-Server/client/mysql.cc (+2/-2)
Percona-Server/client/mysql_config_editor.cc (+57/-8)
Percona-Server/client/mysql_plugin.c (+1/-1)
Percona-Server/client/mysql_upgrade.c (+55/-9)
Percona-Server/client/mysqlbinlog.cc (+26/-7)
Percona-Server/client/mysqlcheck.c (+71/-28)
Percona-Server/client/mysqldump.c (+3/-3)
Percona-Server/client/mysqltest.cc (+11/-13)
Percona-Server/client/sql_string.cc (+2/-2)
Percona-Server/cmake/build_configurations/mysql_release.cmake (+1/-1)
Percona-Server/cmake/configure.pl (+1/-1)
Percona-Server/cmake/cpu_info.cmake (+1/-1)
Percona-Server/cmake/create_initial_db.cmake.in (+2/-2)
Percona-Server/cmake/dtrace.cmake (+18/-19)
Percona-Server/cmake/install_macros.cmake (+1/-1)
Percona-Server/cmake/libevent.cmake (+1/-1)
Percona-Server/cmake/libutils.cmake (+3/-2)
Percona-Server/cmake/maintainer.cmake (+1/-1)
Percona-Server/cmake/make_dist.cmake.in (+1/-1)
Percona-Server/cmake/mysql_version.cmake (+1/-1)
Percona-Server/cmake/os/Darwin.cmake (+1/-1)
Percona-Server/cmake/os/Windows.cmake (+1/-1)
Percona-Server/cmake/package_name.cmake (+1/-1)
Percona-Server/cmake/plugin.cmake (+1/-1)
Percona-Server/cmake/readline.cmake (+1/-2)
Percona-Server/cmake/ssl.cmake (+43/-11)
Percona-Server/cmake/zlib.cmake (+8/-4)
Percona-Server/cmd-line-utils/libedit/CMakeLists.txt (+2/-2)
Percona-Server/cmd-line-utils/libedit/np/unvis.c (+2/-0)
Percona-Server/cmd-line-utils/libedit/np/vis.c (+2/-0)
Percona-Server/config.h.cmake (+2/-2)
Percona-Server/configure.cmake (+16/-2)
Percona-Server/extra/charset2html.c (+2/-1)
Percona-Server/extra/comp_err.c (+1/-1)
Percona-Server/extra/perror.c (+2/-2)
Percona-Server/extra/yassl/CMakeLists.txt (+1/-1)
Percona-Server/extra/yassl/examples/client/client.cpp (+1/-1)
Percona-Server/extra/yassl/examples/echoclient/echoclient.cpp (+1/-1)
Percona-Server/extra/yassl/examples/echoserver/echoserver.cpp (+1/-1)
Percona-Server/extra/yassl/examples/server/server.cpp (+1/-1)
Percona-Server/extra/yassl/include/buffer.hpp (+1/-1)
Percona-Server/extra/yassl/include/cert_wrapper.hpp (+1/-1)
Percona-Server/extra/yassl/include/crypto_wrapper.hpp (+1/-1)
Percona-Server/extra/yassl/include/factory.hpp (+1/-1)
Percona-Server/extra/yassl/include/handshake.hpp (+1/-1)
Percona-Server/extra/yassl/include/lock.hpp (+1/-1)
Percona-Server/extra/yassl/include/log.hpp (+1/-1)
Percona-Server/extra/yassl/include/openssl/prefix_ssl.h (+1/-1)
Percona-Server/extra/yassl/include/openssl/ssl.h (+1/-1)
Percona-Server/extra/yassl/include/socket_wrapper.hpp (+1/-1)
Percona-Server/extra/yassl/include/timer.hpp (+1/-1)
Percona-Server/extra/yassl/include/yassl.hpp (+1/-1)
Percona-Server/extra/yassl/include/yassl_error.hpp (+3/-3)
Percona-Server/extra/yassl/include/yassl_imp.hpp (+1/-2)
Percona-Server/extra/yassl/include/yassl_int.hpp (+1/-1)
Percona-Server/extra/yassl/include/yassl_types.hpp (+6/-3)
Percona-Server/extra/yassl/src/buffer.cpp (+1/-2)
Percona-Server/extra/yassl/src/cert_wrapper.cpp (+1/-1)
Percona-Server/extra/yassl/src/crypto_wrapper.cpp (+1/-1)
Percona-Server/extra/yassl/src/handshake.cpp (+36/-1)
Percona-Server/extra/yassl/src/lock.cpp (+1/-1)
Percona-Server/extra/yassl/src/log.cpp (+1/-1)
Percona-Server/extra/yassl/src/make.bat (+1/-1)
Percona-Server/extra/yassl/src/socket_wrapper.cpp (+1/-1)
Percona-Server/extra/yassl/src/ssl.cpp (+1/-1)
Percona-Server/extra/yassl/src/template_instnt.cpp (+1/-1)
Percona-Server/extra/yassl/src/timer.cpp (+1/-1)
Percona-Server/extra/yassl/src/yassl.cpp (+1/-1)
Percona-Server/extra/yassl/src/yassl_error.cpp (+5/-1)
Percona-Server/extra/yassl/src/yassl_imp.cpp (+173/-27)
Percona-Server/extra/yassl/src/yassl_int.cpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/benchmark/benchmark.cpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/benchmark/make.bat (+1/-1)
Percona-Server/extra/yassl/taocrypt/include/aes.hpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/include/algebra.hpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/include/arc4.hpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/include/asn.hpp (+7/-4)
Percona-Server/extra/yassl/taocrypt/include/block.hpp (+1/-2)
Percona-Server/extra/yassl/taocrypt/include/blowfish.hpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/include/coding.hpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/include/des.hpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/include/dh.hpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/include/dsa.hpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/include/error.hpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/include/file.hpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/include/hash.hpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/include/hc128.hpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/include/hmac.hpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/include/integer.hpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/include/kernelc.hpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/include/md2.hpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/include/md4.hpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/include/md5.hpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/include/misc.hpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/include/modarith.hpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/include/modes.hpp (+1/-2)
Percona-Server/extra/yassl/taocrypt/include/pwdbased.hpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/include/rabbit.hpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/include/random.hpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/include/ripemd.hpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/include/rsa.hpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/include/runtime.hpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/include/sha.hpp (+7/-1)
Percona-Server/extra/yassl/taocrypt/include/twofish.hpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/include/type_traits.hpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/include/types.hpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/mySTL/algorithm.hpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/mySTL/helpers.hpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/mySTL/list.hpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/mySTL/memory.hpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/mySTL/memory_array.hpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/mySTL/pair.hpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/mySTL/stdexcept.hpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/mySTL/vector.hpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/src/aes.cpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/src/aestables.cpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/src/algebra.cpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/src/arc4.cpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/src/asn.cpp (+41/-3)
Percona-Server/extra/yassl/taocrypt/src/bftables.cpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/src/blowfish.cpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/src/coding.cpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/src/des.cpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/src/dh.cpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/src/dsa.cpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/src/file.cpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/src/hash.cpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/src/hc128.cpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/src/integer.cpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/src/make.bat (+1/-1)
Percona-Server/extra/yassl/taocrypt/src/md2.cpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/src/md4.cpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/src/md5.cpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/src/misc.cpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/src/rabbit.cpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/src/random.cpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/src/ripemd.cpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/src/rsa.cpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/src/sha.cpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/src/template_instnt.cpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/src/tftables.cpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/src/twofish.cpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/test/make.bat (+1/-1)
Percona-Server/extra/yassl/taocrypt/test/memory.cpp (+1/-1)
Percona-Server/extra/yassl/taocrypt/test/test.cpp (+1/-1)
Percona-Server/extra/yassl/testsuite/make.bat (+1/-1)
Percona-Server/extra/yassl/testsuite/test.hpp (+1/-1)
Percona-Server/extra/yassl/testsuite/testsuite.cpp (+1/-1)
Percona-Server/include/errmsg.h (+1/-1)
Percona-Server/include/ft_global.h (+1/-1)
Percona-Server/include/m_ctype.h (+1/-1)
Percona-Server/include/m_string.h (+1/-1)
Percona-Server/include/my_atomic.h (+1/-1)
Percona-Server/include/my_base.h (+3/-2)
Percona-Server/include/my_dbug.h (+1/-1)
Percona-Server/include/my_pthread.h (+1/-1)
Percona-Server/include/my_sys.h (+3/-1)
Percona-Server/include/my_time.h (+1/-1)
Percona-Server/include/my_user.h (+2/-1)
Percona-Server/include/my_xml.h (+1/-1)
Percona-Server/include/mysql.h (+1/-1)
Percona-Server/include/mysql/plugin.h (+2/-1)
Percona-Server/include/mysql/plugin_audit.h.pp (+1/-0)
Percona-Server/include/mysql/plugin_auth.h.pp (+1/-0)
Percona-Server/include/mysql/plugin_auth_common.h (+1/-1)
Percona-Server/include/mysql/plugin_ftparser.h.pp (+1/-0)
Percona-Server/include/mysql/psi/mysql_file.h (+1/-1)
Percona-Server/include/mysql/psi/mysql_idle.h (+1/-1)
Percona-Server/include/mysql/psi/mysql_stage.h (+1/-1)
Percona-Server/include/mysql/psi/psi.h (+2/-2)
Percona-Server/include/mysql/psi/psi_abi_v1.h.pp (+1/-1)
Percona-Server/include/mysql/service_my_snprintf.h (+2/-1)
Percona-Server/include/mysql/services.h (+1/-1)
Percona-Server/include/mysql_version.h.in (+2/-1)
Percona-Server/include/password.h (+1/-1)
Percona-Server/include/service_versions.h (+1/-1)
Percona-Server/include/sha1.h (+1/-2)
Percona-Server/include/sslopt-longopts.h (+1/-1)
Percona-Server/include/violite.h (+47/-33)
Percona-Server/include/welcome_copyright_notice.h (+1/-1)
Percona-Server/libmysql/CMakeLists.txt (+5/-2)
Percona-Server/libmysql/libmysql.c (+8/-1)
Percona-Server/libmysqld/lib_sql.cc (+1/-1)
Percona-Server/mysql-test/collections/default.daily (+3/-0)
Percona-Server/mysql-test/collections/default.experimental (+2/-6)
Percona-Server/mysql-test/collections/default.push (+1/-1)
Percona-Server/mysql-test/collections/default.release.in (+1/-1)
Percona-Server/mysql-test/collections/default.weekly (+2/-2)
Percona-Server/mysql-test/collections/disabled-gtid-on.list (+5/-169)
Percona-Server/mysql-test/extra/binlog_tests/binlog_implicit_commit.inc (+60/-0)
Percona-Server/mysql-test/extra/binlog_tests/binlog_innodb.inc (+171/-0)
Percona-Server/mysql-test/extra/binlog_tests/binlog_mysqlbinlog_row.inc (+484/-0)
Percona-Server/mysql-test/extra/binlog_tests/binlog_mysqlbinlog_start_stop.inc (+91/-0)
Percona-Server/mysql-test/extra/binlog_tests/blackhole.test (+1/-1)
Percona-Server/mysql-test/extra/binlog_tests/mysqlbinlog_row_engine.inc (+4/-0)
Percona-Server/mysql-test/extra/binlog_tests/mysqlbinlog_start_stop_2.inc (+1/-1)
Percona-Server/mysql-test/extra/rpl_tests/delayed_slave_wait_on_query.inc (+4/-4)
Percona-Server/mysql-test/extra/rpl_tests/rpl_deadlock.test (+6/-4)
Percona-Server/mysql-test/extra/rpl_tests/rpl_mts_crash_safe.inc (+5/-0)
Percona-Server/mysql-test/extra/rpl_tests/rpl_mts_crash_safe.test (+12/-3)
Percona-Server/mysql-test/include/assert.inc (+1/-1)
Percona-Server/mysql-test/include/filter_file.inc (+6/-2)
Percona-Server/mysql-test/include/function_defaults.inc (+15/-8)
Percona-Server/mysql-test/include/get_relay_log_pos.inc (+1/-1)
Percona-Server/mysql-test/include/have_log_bin.inc (+1/-0)
Percona-Server/mysql-test/include/mysqld--help.inc (+2/-0)
Percona-Server/mysql-test/include/not_gtid_enabled.inc (+1/-1)
Percona-Server/mysql-test/include/not_ssl.inc (+4/-0)
Percona-Server/mysql-test/include/rpl_assert.inc (+0/-130)
Percona-Server/mysql-test/include/rpl_init.inc (+0/-3)
Percona-Server/mysql-test/include/rpl_sync.inc (+2/-0)
Percona-Server/mysql-test/include/select.inc (+1/-1)
Percona-Server/mysql-test/include/show_rpl_debug_info.inc (+4/-0)
Percona-Server/mysql-test/include/sync_slave_io.inc (+3/-3)
Percona-Server/mysql-test/mysql-test-run.pl (+39/-21)
Percona-Server/mysql-test/r/bench_count_distinct.result (+1/-1)
Percona-Server/mysql-test/r/change_user.result (+1/-1)
Percona-Server/mysql-test/r/connect.result (+7/-2)
Percona-Server/mysql-test/r/disabled_replication.result (+1/-1)
Percona-Server/mysql-test/r/disconnect_on_expired_password_default.result (+2/-2)
Percona-Server/mysql-test/r/distinct.result (+14/-14)
Percona-Server/mysql-test/r/explain.result (+1/-1)
Percona-Server/mysql-test/r/explain_json_all.result (+6/-0)
Percona-Server/mysql-test/r/explain_json_none.result (+6/-0)
Percona-Server/mysql-test/r/func_compress.result (+2/-2)
Percona-Server/mysql-test/r/func_group_innodb_16k.result (+1/-1)
Percona-Server/mysql-test/r/func_math.result (+4/-4)
Percona-Server/mysql-test/r/function_defaults.result (+153/-105)
Percona-Server/mysql-test/r/group_by.result (+20/-20)
Percona-Server/mysql-test/r/group_min_max.result (+151/-151)
Percona-Server/mysql-test/r/group_min_max_innodb.result (+4/-4)
Percona-Server/mysql-test/r/implicit_char_to_num_conversion.result (+4/-0)
Percona-Server/mysql-test/r/innodb_explain_json_non_select_all.result (+44/-101)
Percona-Server/mysql-test/r/innodb_explain_json_non_select_none.result (+44/-101)
Percona-Server/mysql-test/r/innodb_explain_non_select_all.result (+42/-42)
Percona-Server/mysql-test/r/innodb_explain_non_select_none.result (+42/-42)
Percona-Server/mysql-test/r/join.result (+1/-1)
Percona-Server/mysql-test/r/join_cache_bka.result (+4/-4)
Percona-Server/mysql-test/r/join_cache_bka_nixbnl.result (+4/-4)
Percona-Server/mysql-test/r/join_cache_bkaunique.result (+4/-4)
Percona-Server/mysql-test/r/join_cache_bnl.result (+4/-4)
Percona-Server/mysql-test/r/join_cache_nojb.result (+4/-4)
Percona-Server/mysql-test/r/key.result (+4/-4)
Percona-Server/mysql-test/r/log_tables_upgrade.result (+4/-2)
Percona-Server/mysql-test/r/myisam_explain_json_non_select_all.result (+44/-101)
Percona-Server/mysql-test/r/myisam_explain_json_non_select_none.result (+44/-101)
Percona-Server/mysql-test/r/myisam_explain_non_select_all.result (+42/-42)
Percona-Server/mysql-test/r/myisam_explain_non_select_none.result (+42/-42)
Percona-Server/mysql-test/r/mysql_config_editor.result (+39/-2)
Percona-Server/mysql-test/r/mysql_upgrade.result (+36/-20)
Percona-Server/mysql-test/r/mysql_upgrade_ssl.result (+4/-2)
Percona-Server/mysql-test/r/mysqld--help-notwin.result (+8/-2)
Percona-Server/mysql-test/r/mysqld--help-win.result (+12/-1)
Percona-Server/mysql-test/r/mysqlshow.result (+16/-18)
Percona-Server/mysql-test/r/not_ssl.require (+2/-0)
Percona-Server/mysql-test/r/order_by_all.result (+2/-2)
Percona-Server/mysql-test/r/order_by_icp_mrr.result (+2/-2)
Percona-Server/mysql-test/r/order_by_none.result (+2/-2)
Percona-Server/mysql-test/r/partition.result (+2/-2)
Percona-Server/mysql-test/r/partition_explicit_prune.result (+3/-3)
Percona-Server/mysql-test/r/partition_locking.result (+48/-48)
Percona-Server/mysql-test/r/percona_innodb_version.result (+1/-1)
Percona-Server/mysql-test/r/plugin_auth.result (+10/-4)
Percona-Server/mysql-test/r/plugin_auth_qa.result (+2/-0)
Percona-Server/mysql-test/r/plugin_auth_qa_1.result (+1/-0)
Percona-Server/mysql-test/r/rewrite_general_log.result (+1/-1)
Percona-Server/mysql-test/r/select_all.result (+3/-3)
Percona-Server/mysql-test/r/select_all_bka.result (+3/-3)
Percona-Server/mysql-test/r/select_all_bka_nixbnl.result (+3/-3)
Percona-Server/mysql-test/r/select_found.result (+1/-1)
Percona-Server/mysql-test/r/select_icp_mrr.result (+3/-3)
Percona-Server/mysql-test/r/select_icp_mrr_bka.result (+3/-3)
Percona-Server/mysql-test/r/select_icp_mrr_bka_nixbnl.result (+3/-3)
Percona-Server/mysql-test/r/select_none.result (+3/-3)
Percona-Server/mysql-test/r/select_none_bka.result (+3/-3)
Percona-Server/mysql-test/r/select_none_bka_nixbnl.result (+3/-3)
Percona-Server/mysql-test/r/show_check.result (+9/-9)
Percona-Server/mysql-test/r/ssl-sha512.result (+13/-0)
Percona-Server/mysql-test/r/subquery_all.result (+3/-3)
Percona-Server/mysql-test/r/subquery_all_bka.result (+3/-3)
Percona-Server/mysql-test/r/subquery_all_bka_nixbnl.result (+3/-3)
Percona-Server/mysql-test/r/subquery_mat.result (+8/-8)
Percona-Server/mysql-test/r/subquery_mat_all.result (+8/-8)
Percona-Server/mysql-test/r/subquery_mat_none.result (+8/-8)
Percona-Server/mysql-test/r/subquery_nomat_nosj.result (+3/-3)
Percona-Server/mysql-test/r/subquery_nomat_nosj_bka.result (+3/-3)
Percona-Server/mysql-test/r/subquery_nomat_nosj_bka_nixbnl.result (+3/-3)
Percona-Server/mysql-test/r/subquery_none.result (+2/-2)
Percona-Server/mysql-test/r/subquery_none_bka.result (+2/-2)
Percona-Server/mysql-test/r/subquery_none_bka_nixbnl.result (+2/-2)
Percona-Server/mysql-test/r/subquery_sj_loosescan.result (+4/-4)
Percona-Server/mysql-test/r/subquery_sj_loosescan_bka.result (+4/-4)
Percona-Server/mysql-test/r/subquery_sj_loosescan_bkaunique.result (+4/-4)
Percona-Server/mysql-test/r/type_bit.result (+1/-1)
Percona-Server/mysql-test/r/type_float.result (+1/-1)
Percona-Server/mysql-test/r/type_ranges.result (+1/-1)
Percona-Server/mysql-test/r/type_temporal_fractional.result (+1/-1)
Percona-Server/mysql-test/r/type_timestamp.result (+0/-51)
Percona-Server/mysql-test/r/type_timestamp_explicit.result (+790/-0)
Percona-Server/mysql-test/r/user_var.result (+3/-3)
Percona-Server/mysql-test/r/variables.result (+29/-1)
Percona-Server/mysql-test/r/wl6219-upgrade.result (+5/-3)
Percona-Server/mysql-test/r/wl6443_deprecation.result (+12/-6)
Percona-Server/mysql-test/std_data/ca-sha512.pem (+20/-0)
Percona-Server/mysql-test/std_data/server-cert-sha512.pem (+20/-0)
Percona-Server/mysql-test/std_data/server-key-sha512.pem (+27/-0)
Percona-Server/mysql-test/suite/auth_sec/include/have_openssl.inc (+4/-0)
Percona-Server/mysql-test/suite/auth_sec/include/have_sha256_rsa_auth.inc (+5/-0)
Percona-Server/mysql-test/suite/auth_sec/include/have_ssl.inc (+4/-0)
Percona-Server/mysql-test/suite/auth_sec/include/have_ssl_communication.inc (+4/-0)
Percona-Server/mysql-test/suite/auth_sec/include/mysql_upgrade_preparation.inc (+30/-0)
Percona-Server/mysql-test/suite/auth_sec/include/not_embedded.inc (+5/-0)
Percona-Server/mysql-test/suite/auth_sec/include/not_openssl.inc (+4/-0)
Percona-Server/mysql-test/suite/auth_sec/include/not_sha256_rsa_auth.inc (+5/-0)
Percona-Server/mysql-test/suite/auth_sec/include/not_ssl.inc (+4/-0)
Percona-Server/mysql-test/suite/auth_sec/r/access_credential_control.result (+672/-0)
Percona-Server/mysql-test/suite/auth_sec/r/have_mysql_upgrade.result (+2/-0)
Percona-Server/mysql-test/suite/auth_sec/r/have_ssl.require (+2/-0)
Percona-Server/mysql-test/suite/auth_sec/r/key_value_auth.result (+439/-0)
Percona-Server/mysql-test/suite/auth_sec/r/mysql_native_plugin.result (+229/-0)
Percona-Server/mysql-test/suite/auth_sec/r/mysql_old_passwords.result (+650/-0)
Percona-Server/mysql-test/suite/auth_sec/r/mysql_old_plugin.result (+249/-0)
Percona-Server/mysql-test/suite/auth_sec/r/mysql_sha256_plugin.result (+230/-0)
Percona-Server/mysql-test/suite/auth_sec/r/not_embedded.require (+2/-0)
Percona-Server/mysql-test/suite/auth_sec/r/not_openssl.require (+2/-0)
Percona-Server/mysql-test/suite/auth_sec/r/not_ssl.require (+2/-0)
Percona-Server/mysql-test/suite/auth_sec/r/openssl.require (+2/-0)
Percona-Server/mysql-test/suite/auth_sec/r/password_expired.result (+813/-0)
Percona-Server/mysql-test/suite/auth_sec/r/server_withoutssl_client_withoutssl.result (+408/-0)
Percona-Server/mysql-test/suite/auth_sec/r/server_withoutssl_client_withssl.result (+218/-0)
Percona-Server/mysql-test/suite/auth_sec/r/server_withssl_client_withoutssl.result (+560/-0)
Percona-Server/mysql-test/suite/auth_sec/r/server_withssl_client_withssl.result (+544/-0)
Percona-Server/mysql-test/suite/auth_sec/t/access_credential_control-master.opt (+2/-0)
Percona-Server/mysql-test/suite/auth_sec/t/access_credential_control.test (+1266/-0)
Percona-Server/mysql-test/suite/auth_sec/t/key_value_auth-master.opt (+2/-0)
Percona-Server/mysql-test/suite/auth_sec/t/key_value_auth.test (+1145/-0)
Percona-Server/mysql-test/suite/auth_sec/t/key_value_auth.test_old (+1197/-0)
Percona-Server/mysql-test/suite/auth_sec/t/mysql_native_plugin.test (+1029/-0)
Percona-Server/mysql-test/suite/auth_sec/t/mysql_old_passwords-master.opt (+2/-0)
Percona-Server/mysql-test/suite/auth_sec/t/mysql_old_passwords.test (+1028/-0)
Percona-Server/mysql-test/suite/auth_sec/t/mysql_old_plugin.test (+1017/-0)
Percona-Server/mysql-test/suite/auth_sec/t/mysql_old_plugin.test_old (+997/-0)
Percona-Server/mysql-test/suite/auth_sec/t/mysql_sha256_plugin-master.opt (+2/-0)
Percona-Server/mysql-test/suite/auth_sec/t/mysql_sha256_plugin.test (+1013/-0)
Percona-Server/mysql-test/suite/auth_sec/t/password_expired-master.opt (+2/-0)
Percona-Server/mysql-test/suite/auth_sec/t/password_expired.test (+1419/-0)
Percona-Server/mysql-test/suite/auth_sec/t/server_withoutssl_client_withoutssl.test (+718/-0)
Percona-Server/mysql-test/suite/auth_sec/t/server_withoutssl_client_withssl.test (+762/-0)
Percona-Server/mysql-test/suite/auth_sec/t/server_withssl_client_withoutssl-master.opt (+7/-0)
Percona-Server/mysql-test/suite/auth_sec/t/server_withssl_client_withoutssl.test (+751/-0)
Percona-Server/mysql-test/suite/auth_sec/t/server_withssl_client_withssl-master.opt (+7/-0)
Percona-Server/mysql-test/suite/auth_sec/t/server_withssl_client_withssl.test (+762/-0)
Percona-Server/mysql-test/suite/binlog/r/binlog_enforce_gtid_consistency.result (+10/-10)
Percona-Server/mysql-test/suite/binlog/r/binlog_gtid_errors.result (+4/-4)
Percona-Server/mysql-test/suite/binlog/r/binlog_gtid_implicit_commit.result (+345/-0)
Percona-Server/mysql-test/suite/binlog/r/binlog_gtid_innodb.result (+173/-0)
Percona-Server/mysql-test/suite/binlog/r/binlog_gtid_mysqlbinlog_row.result (+5402/-0)
Percona-Server/mysql-test/suite/binlog/r/binlog_gtid_mysqlbinlog_row_innodb.result (+4964/-0)
Percona-Server/mysql-test/suite/binlog/r/binlog_gtid_mysqlbinlog_row_myisam.result (+5004/-0)
Percona-Server/mysql-test/suite/binlog/r/binlog_gtid_mysqlbinlog_start_stop.result (+1971/-0)
Percona-Server/mysql-test/suite/binlog/r/binlog_gtid_row_ctype_ucs.result (+39/-0)
Percona-Server/mysql-test/suite/binlog/r/binlog_gtid_stm_ctype_ucs.result (+44/-0)
Percona-Server/mysql-test/suite/binlog/r/binlog_mysqlbinlog_row_innodb.result (+27/-0)
Percona-Server/mysql-test/suite/binlog/r/binlog_mysqlbinlog_row_myisam.result (+27/-0)
Percona-Server/mysql-test/suite/binlog/r/binlog_server_id.result (+11/-28)
Percona-Server/mysql-test/suite/binlog/r/binlog_spurious_ddl_errors.result (+1/-0)
Percona-Server/mysql-test/suite/binlog/r/binlog_sql_mode.result (+1/-0)
Percona-Server/mysql-test/suite/binlog/r/binlog_start_comment.result (+1/-0)
Percona-Server/mysql-test/suite/binlog/r/binlog_stm_blackhole.result (+14/-14)
Percona-Server/mysql-test/suite/binlog/t/binlog_enforce_gtid_consistency.test (+13/-1)
Percona-Server/mysql-test/suite/binlog/t/binlog_gtid_implicit_commit.test (+4/-0)
Percona-Server/mysql-test/suite/binlog/t/binlog_gtid_innodb.test (+5/-0)
Percona-Server/mysql-test/suite/binlog/t/binlog_gtid_mysqlbinlog_row.test (+6/-0)
Percona-Server/mysql-test/suite/binlog/t/binlog_gtid_mysqlbinlog_row_innodb.test (+27/-0)
Percona-Server/mysql-test/suite/binlog/t/binlog_gtid_mysqlbinlog_row_myisam.test (+24/-0)
Percona-Server/mysql-test/suite/binlog/t/binlog_gtid_mysqlbinlog_start_stop.test (+15/-0)
Percona-Server/mysql-test/suite/binlog/t/binlog_gtid_row_ctype_ucs.test (+7/-0)
Percona-Server/mysql-test/suite/binlog/t/binlog_gtid_stm_ctype_ucs.test (+7/-0)
Percona-Server/mysql-test/suite/binlog/t/binlog_implicit_commit.test (+3/-59)
Percona-Server/mysql-test/suite/binlog/t/binlog_innodb.test (+3/-173)
Percona-Server/mysql-test/suite/binlog/t/binlog_killed.test (+33/-6)
Percona-Server/mysql-test/suite/binlog/t/binlog_mysqlbinlog_row.test (+3/-485)
Percona-Server/mysql-test/suite/binlog/t/binlog_mysqlbinlog_row_innodb.test (+2/-0)
Percona-Server/mysql-test/suite/binlog/t/binlog_mysqlbinlog_row_myisam.test (+1/-0)
Percona-Server/mysql-test/suite/binlog/t/binlog_mysqlbinlog_row_trans.test (+4/-0)
Percona-Server/mysql-test/suite/binlog/t/binlog_mysqlbinlog_start_stop.test (+4/-81)
Percona-Server/mysql-test/suite/binlog/t/binlog_row_ctype_ucs.test (+1/-0)
Percona-Server/mysql-test/suite/binlog/t/binlog_row_query_log_events.test (+9/-1)
Percona-Server/mysql-test/suite/binlog/t/binlog_server_id.test (+23/-13)
Percona-Server/mysql-test/suite/binlog/t/binlog_spurious_ddl_errors.test (+3/-1)
Percona-Server/mysql-test/suite/binlog/t/binlog_sql_mode.test (+4/-0)
Percona-Server/mysql-test/suite/binlog/t/binlog_start_comment.test (+3/-0)
Percona-Server/mysql-test/suite/binlog/t/binlog_stm_ctype_ucs.test (+1/-0)
Percona-Server/mysql-test/suite/binlog/t/disabled.def (+0/-1)
Percona-Server/mysql-test/suite/innodb/include/innodb_stats_comp_index.inc (+5/-5)
Percona-Server/mysql-test/suite/innodb/r/innodb-autoinc-44030.result (+4/-3)
Percona-Server/mysql-test/suite/innodb/r/innodb-index-online-fk.result (+2/-17)
Percona-Server/mysql-test/suite/innodb/r/innodb-index.result (+2/-6)
Percona-Server/mysql-test/suite/innodb/r/innodb-wl5980-alter.result (+100/-172)
Percona-Server/mysql-test/suite/innodb/r/innodb.result (+0/-8)
Percona-Server/mysql-test/suite/innodb/r/innodb_bug11766634.result (+6/-0)
Percona-Server/mysql-test/suite/innodb/r/innodb_bug12661768.result (+1/-1)
Percona-Server/mysql-test/suite/innodb/r/innodb_bug13867871.result (+1/-0)
Percona-Server/mysql-test/suite/innodb/r/innodb_bug14147491.result (+15/-4)
Percona-Server/mysql-test/suite/innodb/r/innodb_cmp_per_index.result (+4/-4)
Percona-Server/mysql-test/suite/innodb/r/innodb_mysql.result (+7/-7)
Percona-Server/mysql-test/suite/innodb/r/innodb_wl6347_comp_indx_stat.result (+387/-443)
Percona-Server/mysql-test/suite/innodb/r/percona_bug_1133926.result (+0/-4)
Percona-Server/mysql-test/suite/innodb/r/percona_skip_innodb_i_s.result (+0/-1)
Percona-Server/mysql-test/suite/innodb/t/innodb-autoinc-44030.test (+5/-6)
Percona-Server/mysql-test/suite/innodb/t/innodb-index-online-fk.test (+3/-30)
Percona-Server/mysql-test/suite/innodb/t/innodb-index.test (+2/-3)
Percona-Server/mysql-test/suite/innodb/t/innodb-log-file-size-1.test (+2/-1)
Percona-Server/mysql-test/suite/innodb/t/innodb-log-file-size.test (+2/-1)
Percona-Server/mysql-test/suite/innodb/t/innodb-wl6445-1.test (+2/-1)
Percona-Server/mysql-test/suite/innodb/t/innodb-wl6445-2.test (+2/-0)
Percona-Server/mysql-test/suite/innodb/t/innodb-wl6445.test (+3/-0)
Percona-Server/mysql-test/suite/innodb/t/innodb_bug11766634.test (+5/-0)
Percona-Server/mysql-test/suite/innodb/t/innodb_bug12400341.test (+4/-0)
Percona-Server/mysql-test/suite/innodb/t/innodb_bug12661768.test (+1/-1)
Percona-Server/mysql-test/suite/innodb/t/innodb_bug13867871.test (+1/-2)
Percona-Server/mysql-test/suite/innodb/t/innodb_bug14147491.test (+45/-9)
Percona-Server/mysql-test/suite/innodb/t/innodb_cmp_per_index.test (+11/-0)
Percona-Server/mysql-test/suite/innodb/t/innodb_wl6347_comp_indx_stat.test (+167/-234)
Percona-Server/mysql-test/suite/innodb/t/percona_bug_1133926.test (+0/-19)
Percona-Server/mysql-test/suite/innodb/t/percona_bug_999147-master.opt (+1/-0)
Percona-Server/mysql-test/suite/innodb/t/percona_bug_999147.test (+29/-0)
Percona-Server/mysql-test/suite/innodb_fts/r/fulltext.result (+1/-0)
Percona-Server/mysql-test/suite/innodb_fts/r/fulltext2.result (+1/-0)
Percona-Server/mysql-test/suite/innodb_fts/r/innodb-fts-basic.result (+18/-0)
Percona-Server/mysql-test/suite/innodb_fts/r/innodb_fts_misc.result (+108/-0)
Percona-Server/mysql-test/suite/innodb_fts/r/innodb_fts_misc_1.result (+2/-0)
Percona-Server/mysql-test/suite/innodb_fts/r/innodb_fts_opt.result (+77/-71)
Percona-Server/mysql-test/suite/innodb_fts/r/innodb_fts_stopword_charset.result (+321/-0)
Percona-Server/mysql-test/suite/innodb_fts/t/innodb-fts-basic.test (+10/-0)
Percona-Server/mysql-test/suite/innodb_fts/t/innodb_fts_misc.test (+100/-0)
Percona-Server/mysql-test/suite/innodb_fts/t/innodb_fts_opt.test (+71/-71)
Percona-Server/mysql-test/suite/innodb_fts/t/innodb_fts_stopword_charset.test (+423/-0)
Percona-Server/mysql-test/suite/opt_trace/r/general2_no_prot.result (+20/-153)
Percona-Server/mysql-test/suite/opt_trace/r/general2_ps_prot.result (+20/-153)
Percona-Server/mysql-test/suite/opt_trace/r/range_no_prot.result (+2/-2)
Percona-Server/mysql-test/suite/opt_trace/r/range_ps_prot.result (+2/-2)
Percona-Server/mysql-test/suite/parts/r/partition_alter1_1_2_innodb.result (+11605/-11605)
Percona-Server/mysql-test/suite/parts/r/partition_alter1_1_innodb.result (+32/-32)
Percona-Server/mysql-test/suite/parts/r/partition_alter1_2_innodb.result (+21002/-21002)
Percona-Server/mysql-test/suite/parts/r/partition_alter2_1_1_innodb.result (+40/-40)
Percona-Server/mysql-test/suite/parts/r/partition_alter2_1_2_innodb.result (+40/-40)
Percona-Server/mysql-test/suite/parts/r/partition_alter2_2_1_innodb.result (+11354/-11354)
Percona-Server/mysql-test/suite/parts/r/partition_alter2_2_2_innodb.result (+40/-40)
Percona-Server/mysql-test/suite/parts/r/partition_alter4_innodb.result (+208/-208)
Percona-Server/mysql-test/suite/parts/r/partition_basic_innodb.result (+23710/-23710)
Percona-Server/mysql-test/suite/parts/r/partition_engine_innodb.result (+11/-11)
Percona-Server/mysql-test/suite/perfschema/r/sizing_default.result (+3/-3)
Percona-Server/mysql-test/suite/perfschema/r/sizing_high.result (+3/-3)
Percona-Server/mysql-test/suite/perfschema/r/sizing_low.result (+3/-3)
Percona-Server/mysql-test/suite/perfschema/r/sizing_med.result (+3/-3)
Percona-Server/mysql-test/suite/perfschema/t/disabled.def (+0/-3)
Percona-Server/mysql-test/suite/rpl/r/rpl_circular_for_4_hosts.result (+12/-0)
Percona-Server/mysql-test/suite/rpl/r/rpl_deadlock_innodb.result (+19/-5)
Percona-Server/mysql-test/suite/rpl/r/rpl_delayed_slave.result (+42/-42)
Percona-Server/mysql-test/suite/rpl/r/rpl_gtid_mode.result (+8/-8)
Percona-Server/mysql-test/suite/rpl/r/rpl_heartbeat_basic.result (+9/-20)
Percona-Server/mysql-test/suite/rpl/r/rpl_init_slave_errors.result (+1/-1)
Percona-Server/mysql-test/suite/rpl/r/rpl_parallel_switch_sequential.result (+1/-1)
Percona-Server/mysql-test/suite/rpl/r/rpl_rewrt_db.result (+14/-21)
Percona-Server/mysql-test/suite/rpl/r/rpl_rotate_logs.result (+11/-11)
Percona-Server/mysql-test/suite/rpl/r/rpl_row_mts_crash_safe.result (+2737/-0)
Percona-Server/mysql-test/suite/rpl/r/rpl_row_mts_rec_crash_safe.result (+2737/-0)
Percona-Server/mysql-test/suite/rpl/r/rpl_row_until.result (+12/-10)
Percona-Server/mysql-test/suite/rpl/r/rpl_server_id2.result (+0/-2)
Percona-Server/mysql-test/suite/rpl/r/rpl_slow_query_log.result (+11/-0)
Percona-Server/mysql-test/suite/rpl/r/rpl_stm_000001.result (+1/-1)
Percona-Server/mysql-test/suite/rpl/r/rpl_stm_mixed_mts_crash_safe.result (+2737/-0)
Percona-Server/mysql-test/suite/rpl/r/rpl_stm_mixed_mts_rec_crash_safe.result (+2737/-0)
Percona-Server/mysql-test/suite/rpl/r/rpl_stm_mixed_mts_rec_crash_safe_checksum.result (+2737/-0)
Percona-Server/mysql-test/suite/rpl/r/rpl_stm_mixed_mts_rec_crash_safe_small.result (+2060/-0)
Percona-Server/mysql-test/suite/rpl/r/rpl_stm_mts_crash_safe.result (+0/-5363)
Percona-Server/mysql-test/suite/rpl/r/rpl_stm_mts_rec_crash_safe.result (+0/-5363)
Percona-Server/mysql-test/suite/rpl/r/rpl_stm_until.result (+7/-11)
Percona-Server/mysql-test/suite/rpl/t/disabled.def (+0/-1)
Percona-Server/mysql-test/suite/rpl/t/rpl_circular_for_4_hosts.test (+12/-0)
Percona-Server/mysql-test/suite/rpl/t/rpl_delayed_slave.test (+28/-28)
Percona-Server/mysql-test/suite/rpl/t/rpl_gtid_mode.test (+3/-3)
Percona-Server/mysql-test/suite/rpl/t/rpl_heartbeat_basic.test (+19/-35)
Percona-Server/mysql-test/suite/rpl/t/rpl_init_slave_errors.test (+1/-1)
Percona-Server/mysql-test/suite/rpl/t/rpl_parallel_switch_sequential.test (+8/-4)
Percona-Server/mysql-test/suite/rpl/t/rpl_rewrt_db.test (+34/-22)
Percona-Server/mysql-test/suite/rpl/t/rpl_rotate_logs.test (+20/-20)
Percona-Server/mysql-test/suite/rpl/t/rpl_row_until.test (+53/-25)
Percona-Server/mysql-test/suite/rpl/t/rpl_server_id2.test (+0/-4)
Percona-Server/mysql-test/suite/rpl/t/rpl_slow_query_log.test (+44/-0)
Percona-Server/mysql-test/suite/rpl/t/rpl_stm_000001.test (+1/-1)
Percona-Server/mysql-test/suite/rpl/t/rpl_stm_mixed_mts_rec_crash_safe_checksum.test (+1/-1)
Percona-Server/mysql-test/suite/rpl/t/rpl_stm_mixed_mts_rec_crash_safe_small-slave.opt (+1/-0)
Percona-Server/mysql-test/suite/rpl/t/rpl_stm_mixed_mts_rec_crash_safe_small.test (+16/-0)
Percona-Server/mysql-test/suite/rpl/t/rpl_stm_mts_crash_safe-slave.opt (+0/-1)
Percona-Server/mysql-test/suite/rpl/t/rpl_stm_mts_crash_safe.test (+0/-14)
Percona-Server/mysql-test/suite/rpl/t/rpl_stm_mts_rec_crash_safe-slave.opt (+0/-1)
Percona-Server/mysql-test/suite/rpl/t/rpl_stm_mts_rec_crash_safe.test (+0/-13)
Percona-Server/mysql-test/suite/rpl/t/rpl_stm_until.test (+6/-35)
Percona-Server/mysql-test/suite/sys_vars/r/gtid_next_list_basic.result (+0/-26)
Percona-Server/mysql-test/suite/sys_vars/r/gtid_purged_basic.result (+1/-1)
Percona-Server/mysql-test/suite/sys_vars/r/innodb_buffer_pool_evict_basic.result (+7/-0)
Percona-Server/mysql-test/suite/sys_vars/r/innodb_log_compressed_pages_basic.result (+69/-0)
Percona-Server/mysql-test/suite/sys_vars/r/innodb_page_size_basic.result (+3/-0)
Percona-Server/mysql-test/suite/sys_vars/r/innodb_sync_array_size_basic.result (+18/-67)
Percona-Server/mysql-test/suite/sys_vars/r/log_slow_admin_statements_basic.result (+76/-0)
Percona-Server/mysql-test/suite/sys_vars/r/log_slow_admin_statements_func.result (+34/-0)
Percona-Server/mysql-test/suite/sys_vars/r/log_slow_slave_statements_basic.result (+76/-0)
Percona-Server/mysql-test/suite/sys_vars/t/gtid_next_list_basic.test (+0/-30)
Percona-Server/mysql-test/suite/sys_vars/t/innodb_buffer_pool_evict_basic.test (+10/-0)
Percona-Server/mysql-test/suite/sys_vars/t/innodb_corrupt_table_action_basic.test (+0/-47)
Percona-Server/mysql-test/suite/sys_vars/t/innodb_log_compressed_pages_basic.test (+88/-0)
Percona-Server/mysql-test/suite/sys_vars/t/innodb_page_size_basic.test (+1/-0)
Percona-Server/mysql-test/suite/sys_vars/t/innodb_sync_array_size_basic.test (+15/-55)
Percona-Server/mysql-test/suite/sys_vars/t/log_slow_admin_statements_basic.test (+110/-0)
Percona-Server/mysql-test/suite/sys_vars/t/log_slow_admin_statements_func.test (+41/-0)
Percona-Server/mysql-test/suite/sys_vars/t/log_slow_slave_statements_basic.test (+110/-0)
Percona-Server/mysql-test/suite/sys_vars/t/old_passwords_func.test (+2/-2)
Percona-Server/mysql-test/suite/sys_vars/t/secure_auth_func.test (+2/-2)
Percona-Server/mysql-test/t/change_user.test (+6/-2)
Percona-Server/mysql-test/t/connect.test (+24/-14)
Percona-Server/mysql-test/t/disabled.def (+1/-2)
Percona-Server/mysql-test/t/disabled_replication.test (+1/-0)
Percona-Server/mysql-test/t/function_defaults.test (+6/-2)
Percona-Server/mysql-test/t/mysql_config_editor.test (+8/-0)
Percona-Server/mysql-test/t/mysql_plugin.test (+16/-50)
Percona-Server/mysql-test/t/percona_innodb_version.test (+1/-1)
Percona-Server/mysql-test/t/percona_mysqldump_innodb_optimize_keys.test (+227/-0)
Percona-Server/mysql-test/t/perror-win.test (+26/-0)
Percona-Server/mysql-test/t/plugin_auth_qa_1.test (+1/-0)
Percona-Server/mysql-test/t/ssl-sha512-master.opt (+3/-0)
Percona-Server/mysql-test/t/ssl-sha512.test (+10/-0)
Percona-Server/mysql-test/t/type_timestamp-master.opt (+1/-1)
Percona-Server/mysql-test/t/type_timestamp.test (+15/-44)
Percona-Server/mysql-test/t/type_timestamp_explicit-master.opt (+1/-0)
Percona-Server/mysql-test/t/type_timestamp_explicit.test (+55/-0)
Percona-Server/mysql-test/t/variables.test (+25/-0)
Percona-Server/mysql-test/valgrind.supp (+18/-2)
Percona-Server/mysys/errors.c (+19/-9)
Percona-Server/mysys/mf_iocache2.c (+15/-2)
Percona-Server/mysys/mf_keycache.c (+2/-1)
Percona-Server/mysys/my_error.c (+22/-0)
Percona-Server/mysys/my_handler_errors.h (+3/-2)
Percona-Server/mysys/my_lib.c (+3/-2)
Percona-Server/mysys/my_lockmem.c (+1/-1)
Percona-Server/mysys/my_malloc.c (+9/-2)
Percona-Server/mysys/my_once.c (+1/-1)
Percona-Server/mysys/my_write.c (+5/-1)
Percona-Server/mysys/psi_noop.c (+2/-2)
Percona-Server/mysys/thr_alarm.c (+8/-14)
Percona-Server/mysys/thr_rwlock.c (+1/-1)
Percona-Server/mysys_ssl/CMakeLists.txt (+1/-1)
Percona-Server/packaging/WiX/custom_ui.wxs (+2/-2)
Percona-Server/packaging/WiX/mysql_server.wxs.in (+5/-2)
Percona-Server/plugin/innodb_memcached/innodb_memcache/src/innodb_api.c (+1/-1)
Percona-Server/plugin/innodb_memcached/innodb_memcache/src/innodb_config.c (+12/-0)
Percona-Server/plugin/innodb_memcached/innodb_memcache/src/innodb_engine.c (+22/-3)
Percona-Server/scripts/mysql_install_db.pl.in (+27/-11)
Percona-Server/scripts/mysql_system_tables_data.sql (+9/-5)
Percona-Server/sql-common/client.c (+20/-3)
Percona-Server/sql/CMakeLists.txt (+3/-9)
Percona-Server/sql/abstract_query_plan.cc (+27/-60)
Percona-Server/sql/binlog.cc (+133/-21)
Percona-Server/sql/binlog.h (+15/-1)
Percona-Server/sql/db.opt (+2/-0)
Percona-Server/sql/derror.cc (+7/-2)
Percona-Server/sql/field.cc (+43/-28)
Percona-Server/sql/field_conv.cc (+6/-2)
Percona-Server/sql/filesort.cc (+1/-0)
Percona-Server/sql/filesort.h (+4/-1)
Percona-Server/sql/ha_ndb_index_stat.cc (+1/-1)
Percona-Server/sql/ha_ndbcluster.cc (+30/-61)
Percona-Server/sql/ha_ndbcluster_cond.cc (+4/-4)
Percona-Server/sql/ha_ndbcluster_push.cc (+5/-5)
Percona-Server/sql/ha_partition.cc (+639/-145)
Percona-Server/sql/ha_partition.h (+12/-2)
Percona-Server/sql/handler.cc (+52/-7)
Percona-Server/sql/handler.h (+27/-4)
Percona-Server/sql/item.cc (+4/-6)
Percona-Server/sql/item.h (+13/-2)
Percona-Server/sql/item_cmpfunc.cc (+21/-13)
Percona-Server/sql/item_create.cc (+1/-7)
Percona-Server/sql/item_func.cc (+2/-4)
Percona-Server/sql/item_func.h (+1/-3)
Percona-Server/sql/item_inetfunc.cc (+5/-8)
Percona-Server/sql/item_inetfunc.h (+1/-1)
Percona-Server/sql/item_strfunc.cc (+1/-3)
Percona-Server/sql/item_strfunc.h (+1/-3)
Percona-Server/sql/item_subselect.cc (+74/-16)
Percona-Server/sql/item_subselect.h (+4/-1)
Percona-Server/sql/item_sum.cc (+67/-8)
Percona-Server/sql/item_sum.h (+5/-4)
Percona-Server/sql/item_timefunc.cc (+5/-1)
Percona-Server/sql/item_timefunc.h (+0/-5)
Percona-Server/sql/key.cc (+71/-43)
Percona-Server/sql/key.h (+3/-1)
Percona-Server/sql/log_event.cc (+53/-81)
Percona-Server/sql/log_event.h (+47/-13)
Percona-Server/sql/log_event_old.cc (+16/-25)
Percona-Server/sql/log_event_old.h (+5/-6)
Percona-Server/sql/mysqld.cc (+66/-20)
Percona-Server/sql/opt_explain.cc (+3/-3)
Percona-Server/sql/opt_range.cc (+252/-55)
Percona-Server/sql/opt_range.h (+11/-12)
Percona-Server/sql/partition_element.h (+3/-4)
Percona-Server/sql/partition_info.cc (+285/-2)
Percona-Server/sql/partition_info.h (+16/-1)
Percona-Server/sql/rpl_gtid.h (+6/-1)
Percona-Server/sql/rpl_gtid_execution.cc (+6/-4)
Percona-Server/sql/rpl_gtid_set.cc (+14/-4)
Percona-Server/sql/rpl_gtid_state.cc (+9/-9)
Percona-Server/sql/rpl_master.cc (+44/-63)
Percona-Server/sql/rpl_rli.cc (+1/-1)
Percona-Server/sql/rpl_rli.h (+0/-8)
Percona-Server/sql/rpl_slave.cc (+50/-23)
Percona-Server/sql/rpl_tblmap.cc (+11/-11)
Percona-Server/sql/rpl_tblmap.h (+6/-6)
Percona-Server/sql/rpl_utility.cc (+2/-4)
Percona-Server/sql/rpl_utility.h (+0/-2)
Percona-Server/sql/set_var.cc (+14/-11)
Percona-Server/sql/set_var.h (+23/-7)
Percona-Server/sql/share/errmsg-utf8.txt (+28/-20)
Percona-Server/sql/sp.cc (+7/-7)
Percona-Server/sql/sp_head.h (+1/-0)
Percona-Server/sql/sql_acl.cc (+369/-202)
Percona-Server/sql/sql_acl.h (+3/-0)
Percona-Server/sql/sql_admin.cc (+3/-2)
Percona-Server/sql/sql_admin.h (+3/-1)
Percona-Server/sql/sql_base.cc (+13/-17)
Percona-Server/sql/sql_binlog.cc (+1/-1)
Percona-Server/sql/sql_bitmap.h (+2/-0)
Percona-Server/sql/sql_cache.cc (+8/-9)
Percona-Server/sql/sql_class.cc (+68/-26)
Percona-Server/sql/sql_class.h (+31/-33)
Percona-Server/sql/sql_connect.cc (+9/-1)
Percona-Server/sql/sql_data_change.cc (+19/-2)
Percona-Server/sql/sql_data_change.h (+21/-11)
Percona-Server/sql/sql_delete.cc (+2/-1)
Percona-Server/sql/sql_executor.cc (+73/-40)
Percona-Server/sql/sql_executor.h (+1/-2)
Percona-Server/sql/sql_handler.cc (+10/-5)
Percona-Server/sql/sql_insert.cc (+17/-21)
Percona-Server/sql/sql_join_buffer.cc (+24/-2)
Percona-Server/sql/sql_join_buffer.h (+11/-2)
Percona-Server/sql/sql_lex.cc (+8/-3)
Percona-Server/sql/sql_lex.h (+10/-3)
Percona-Server/sql/sql_load.cc (+3/-3)
Percona-Server/sql/sql_optimizer.cc (+65/-22)
Percona-Server/sql/sql_optimizer.h (+5/-4)
Percona-Server/sql/sql_parse.cc (+23/-5)
Percona-Server/sql/sql_partition.cc (+131/-20)
Percona-Server/sql/sql_partition.h (+3/-2)
Percona-Server/sql/sql_partition_admin.cc (+3/-1)
Percona-Server/sql/sql_planner.cc (+12/-4)
Percona-Server/sql/sql_plugin.cc (+37/-0)
Percona-Server/sql/sql_plugin.h (+5/-0)
Percona-Server/sql/sql_prepare.cc (+6/-4)
Percona-Server/sql/sql_resolver.cc (+98/-62)
Percona-Server/sql/sql_select.cc (+51/-41)
Percona-Server/sql/sql_select.h (+5/-5)
Percona-Server/sql/sql_show.cc (+23/-15)
Percona-Server/sql/sql_string.cc (+1/-1)
Percona-Server/sql/sql_table.cc (+49/-18)
Percona-Server/sql/sql_tmp_table.cc (+42/-26)
Percona-Server/sql/sql_union.cc (+14/-10)
Percona-Server/sql/sql_update.cc (+2/-1)
Percona-Server/sql/sql_view.cc (+46/-5)
Percona-Server/sql/sql_yacc.yy (+28/-6)
Percona-Server/sql/strfunc.cc (+1/-1)
Percona-Server/sql/sys_vars.cc (+36/-23)
Percona-Server/sql/sys_vars.h (+7/-4)
Percona-Server/sql/table.cc (+4/-3)
Percona-Server/sql/table.h (+30/-9)
Percona-Server/sql/table_id.h (+61/-0)
Percona-Server/sql/tztime.cc (+3/-18)
Percona-Server/storage/archive/ha_archive.cc (+7/-6)
Percona-Server/storage/innobase/btr/btr0btr.cc (+138/-75)
Percona-Server/storage/innobase/btr/btr0cur.cc (+362/-274)
Percona-Server/storage/innobase/btr/btr0pcur.cc (+2/-2)
Percona-Server/storage/innobase/buf/buf0buddy.cc (+312/-155)
Percona-Server/storage/innobase/buf/buf0buf.cc (+25/-13)
Percona-Server/storage/innobase/buf/buf0flu.cc (+7/-7)
Percona-Server/storage/innobase/buf/buf0lru.cc (+46/-58)
Percona-Server/storage/innobase/buf/buf0rea.cc (+5/-5)
Percona-Server/storage/innobase/dict/dict0boot.cc (+0/-1)
Percona-Server/storage/innobase/dict/dict0crea.cc (+30/-43)
Percona-Server/storage/innobase/dict/dict0dict.cc (+132/-111)
Percona-Server/storage/innobase/dict/dict0load.cc (+23/-16)
Percona-Server/storage/innobase/dict/dict0stats.cc (+15/-62)
Percona-Server/storage/innobase/dict/dict0stats_bg.cc (+18/-43)
Percona-Server/storage/innobase/dyn/dyn0dyn.cc (+2/-2)
Percona-Server/storage/innobase/fil/fil0fil.cc (+36/-18)
Percona-Server/storage/innobase/fts/fts0ast.cc (+84/-20)
Percona-Server/storage/innobase/fts/fts0fts.cc (+77/-45)
Percona-Server/storage/innobase/fts/fts0pars.cc (+0/-12)
Percona-Server/storage/innobase/fts/fts0que.cc (+49/-14)
Percona-Server/storage/innobase/handler/ha_innodb.cc (+188/-56)
Percona-Server/storage/innobase/handler/ha_innodb.h (+4/-4)
Percona-Server/storage/innobase/handler/handler0alter.cc (+1892/-1362)
Percona-Server/storage/innobase/handler/i_s.cc (+9/-155)
Percona-Server/storage/innobase/handler/i_s.h (+1/-2)
Percona-Server/storage/innobase/ibuf/ibuf0ibuf.cc (+37/-18)
Percona-Server/storage/innobase/include/btr0btr.h (+41/-11)
Percona-Server/storage/innobase/include/btr0cur.h (+77/-41)
Percona-Server/storage/innobase/include/buf0buf.h (+23/-6)
Percona-Server/storage/innobase/include/buf0buf.ic (+7/-9)
Percona-Server/storage/innobase/include/buf0lru.h (+7/-7)
Percona-Server/storage/innobase/include/db0err.h (+1/-0)
Percona-Server/storage/innobase/include/dict0crea.h (+19/-15)
Percona-Server/storage/innobase/include/dict0crea.ic (+37/-1)
Percona-Server/storage/innobase/include/dict0dict.h (+22/-11)
Percona-Server/storage/innobase/include/dict0load.h (+5/-3)
Percona-Server/storage/innobase/include/dict0mem.h (+4/-2)
Percona-Server/storage/innobase/include/dict0stats.ic (+4/-18)
Percona-Server/storage/innobase/include/dict0stats_bg.h (+37/-26)
Percona-Server/storage/innobase/include/dict0stats_bg.ic (+45/-0)
Percona-Server/storage/innobase/include/dyn0dyn.h (+48/-36)
Percona-Server/storage/innobase/include/dyn0dyn.ic (+40/-99)
Percona-Server/storage/innobase/include/fil0fil.h (+3/-1)
Percona-Server/storage/innobase/include/fts0ast.h (+4/-1)
Percona-Server/storage/innobase/include/fts0fts.h (+11/-9)
Percona-Server/storage/innobase/include/fts0types.h (+5/-5)
Percona-Server/storage/innobase/include/ha_prototypes.h (+14/-3)
Percona-Server/storage/innobase/include/ibuf0ibuf.h (+3/-3)
Percona-Server/storage/innobase/include/ibuf0ibuf.ic (+12/-4)
Percona-Server/storage/innobase/include/lock0lock.h (+1/-1)
Percona-Server/storage/innobase/include/mach0data.ic (+2/-0)
Percona-Server/storage/innobase/include/mtr0mtr.h (+6/-4)
Percona-Server/storage/innobase/include/os0file.h (+71/-7)
Percona-Server/storage/innobase/include/os0file.ic (+60/-0)
Percona-Server/storage/innobase/include/page0cur.h (+30/-7)
Percona-Server/storage/innobase/include/page0cur.ic (+17/-5)
Percona-Server/storage/innobase/include/page0page.h (+68/-10)
Percona-Server/storage/innobase/include/page0page.ic (+29/-5)
Percona-Server/storage/innobase/include/page0types.h (+2/-4)
Percona-Server/storage/innobase/include/page0zip.h (+5/-5)
Percona-Server/storage/innobase/include/page0zip.ic (+9/-19)
Percona-Server/storage/innobase/include/rem0rec.ic (+5/-5)
Percona-Server/storage/innobase/include/row0log.h (+20/-23)
Percona-Server/storage/innobase/include/row0merge.h (+5/-5)
Percona-Server/storage/innobase/include/srv0start.h (+0/-9)
Percona-Server/storage/innobase/include/trx0trx.h (+14/-3)
Percona-Server/storage/innobase/include/univ.i (+8/-3)
Percona-Server/storage/innobase/include/ut0dbg.h (+0/-40)
Percona-Server/storage/innobase/lock/lock0lock.cc (+86/-111)
Percona-Server/storage/innobase/lock/lock0wait.cc (+25/-1)
Percona-Server/storage/innobase/log/log0online.cc (+8/-2)
Percona-Server/storage/innobase/mtr/mtr0mtr.cc (+75/-77)
Percona-Server/storage/innobase/os/os0file.cc (+7/-7)
Percona-Server/storage/innobase/page/page0cur.cc (+183/-97)
Percona-Server/storage/innobase/page/page0page.cc (+105/-18)
Percona-Server/storage/innobase/page/page0zip.cc (+20/-22)
Percona-Server/storage/innobase/rem/rem0rec.cc (+8/-1)
Percona-Server/storage/innobase/row/row0import.cc (+2/-2)
Percona-Server/storage/innobase/row/row0ins.cc (+15/-9)
Percona-Server/storage/innobase/row/row0log.cc (+354/-182)
Percona-Server/storage/innobase/row/row0merge.cc (+86/-183)
Percona-Server/storage/innobase/row/row0mysql.cc (+15/-9)
Percona-Server/storage/innobase/row/row0purge.cc (+23/-78)
Percona-Server/storage/innobase/row/row0quiesce.cc (+1/-1)
Percona-Server/storage/innobase/row/row0sel.cc (+6/-2)
Percona-Server/storage/innobase/row/row0uins.cc (+7/-18)
Percona-Server/storage/innobase/row/row0umod.cc (+2/-10)
Percona-Server/storage/innobase/srv/srv0srv.cc (+34/-12)
Percona-Server/storage/innobase/srv/srv0start.cc (+5/-5)
Percona-Server/storage/innobase/sync/sync0arr.cc (+6/-6)
Percona-Server/storage/innobase/trx/trx0purge.cc (+1/-1)
Percona-Server/storage/innobase/trx/trx0roll.cc (+3/-3)
Percona-Server/storage/innobase/trx/trx0sys.cc (+1/-1)
Percona-Server/storage/innobase/trx/trx0trx.cc (+122/-91)
Percona-Server/storage/innobase/ut/ut0crc32.cc (+1/-1)
Percona-Server/storage/innobase/ut/ut0dbg.cc (+1/-33)
Percona-Server/storage/innobase/ut/ut0ut.cc (+2/-0)
Percona-Server/storage/myisam/mi_write.c (+8/-5)
Percona-Server/storage/myisam/myisampack.c (+2/-1)
Percona-Server/storage/myisammrg/ha_myisammrg.cc (+4/-4)
Percona-Server/storage/myisammrg/ha_myisammrg.h (+5/-5)
Percona-Server/storage/perfschema/pfs.cc (+19/-7)
Percona-Server/storage/perfschema/pfs_digest.cc (+40/-34)
Percona-Server/storage/perfschema/pfs_engine_table.cc (+4/-4)
Percona-Server/storage/perfschema/pfs_global.cc (+2/-2)
Percona-Server/storage/perfschema/pfs_global.h (+2/-2)
Percona-Server/storage/perfschema/pfs_instr.cc (+4/-3)
Percona-Server/storage/perfschema/pfs_instr.h (+6/-4)
Percona-Server/storage/perfschema/table_threads.cc (+23/-11)
Percona-Server/storage/perfschema/unittest/CMakeLists.txt (+1/-1)
Percona-Server/strings/decimal.c (+6/-2)
Percona-Server/strings/my_vsnprintf.c (+2/-0)
Percona-Server/support-files/mysql.spec.sh (+126/-45)
Percona-Server/unittest/gunit/CMakeLists.txt (+14/-1)
Percona-Server/unittest/gunit/copy_info-t.cc (+8/-3)
Percona-Server/unittest/gunit/decimal-t.cc (+37/-0)
Percona-Server/unittest/gunit/fake_table.h (+11/-1)
Percona-Server/unittest/gunit/field-t.cc (+4/-4)
Percona-Server/unittest/gunit/item_timefunc-t.cc (+184/-0)
Percona-Server/unittest/gunit/mysys_my_vsnprintf-t.cc (+3/-1)
Percona-Server/unittest/gunit/test_utils.cc (+2/-1)
Percona-Server/vio/vio.c (+7/-23)
Percona-Server/vio/vio_priv.h (+4/-8)
Percona-Server/vio/viopipe.c (+3/-3)
Percona-Server/vio/vioshm.c (+58/-49)
Percona-Server/vio/viosocket.c (+10/-17)
Percona-Server/vio/viossl.c (+8/-5)
Percona-Server/vio/viosslfactories.c (+2/-2)
doc/make.bat (+170/-0)
doc/source/conf.py (+270/-0)
doc/source/diagnostics/innodb_deadlock_count.rst (+57/-0)
doc/source/diagnostics/innodb_show_lock_names.rst (+24/-0)
doc/source/diagnostics/innodb_show_status.rst (+475/-0)
doc/source/diagnostics/misc_info_schema_tables.rst (+48/-0)
doc/source/diagnostics/mysql_syslog.rst (+43/-0)
doc/source/diagnostics/process_list.rst (+53/-0)
doc/source/diagnostics/show_engines.rst (+40/-0)
doc/source/diagnostics/slow_extended_55.rst (+377/-0)
doc/source/diagnostics/thread_based_profiling.rst (+17/-0)
doc/source/diagnostics/user_stats.rst (+242/-0)
doc/source/flexibility/mysqldump_ignore_create_error.rst (+22/-0)
doc/source/release-notes/Percona-Server-5.6.5-60.0.rst (+26/-0)
doc/source/release-notes/Percona-Server-5.6.6-60.1.rst (+18/-0)
doc/source/release-notes/release-notes_index.rst (+0/-11)
subunit2junitxml (+0/-65)
To merge this branch: bzr merge lp:~laurynas-biveinis/percona-server/merge-5.6.11
Reviewer Review Type Date Requested Status
Alexey Kopytov (community) Approve
Review via email: mp+163419@code.launchpad.net

This proposal supersedes a proposal from 2013-05-09.

Description of the change

http://jenkins.percona.com/job/percona-server-5.6-param/94/

Merge MySQL 5.6.11. Non-automerge bits:

- Removing our log_slow_admin_statements and log_slow_sp_statements
  variables due to upstream implementation.

- Trivial XtraDB adjustments around fake changes code.

- Removing our RETURN_IF_INNODB_NOT_STARTED calls now that upstream
  added them.

- Merge our threadpool implementation, featuring vio->shutdown
  function pointer with the upstream changes that introduce
  vio->vioshutdown function pointer. Both implementations are very
  similar, except that the upstream passes SHUT_RDWR unconditionally
  and the threadpool passes SHUT_RD for handling KILLs. Resolve by
  adding "how" arg to vio->vioshutdown and moving the relevant bits
  from vio_socket_shutdown() to vio_shutdown(). Then threadpool's
  vio->shutdown pointer and all supporting code is removed. At the
  same time fix bug 1177780 (Unused declarations
  vio_shutdown_shared_memory(Vio*, int) and vio_shutdown_pipe(Vio*,
  int)).

- Revert our fix for bug 1042946 due to the upstream fix.

To post a comment you must log in.
Revision history for this message
Alexey Kopytov (akopytov) wrote :

Looks good, but setting to WiP as it is unclear whether the dependent branch will be resubmitted.

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'Percona-Server/BUILD-CMAKE'
--- Percona-Server/BUILD-CMAKE 2011-06-30 15:50:45 +0000
+++ Percona-Server/BUILD-CMAKE 2013-05-12 06:41:27 +0000
@@ -1,2 +1,4 @@
1The latest information about building MySQL with CMake is located on 1The latest information about building MySQL with CMake is located on
2http://forge.mysql.com/wiki/CMake
3\ No newline at end of file2\ No newline at end of file
3http://dev.mysql.com/doc/internals/en/cmake.html
4
5See also BUILD/README
46
=== modified file 'Percona-Server/BUILD/SETUP.sh'
--- Percona-Server/BUILD/SETUP.sh 2012-05-09 16:47:39 +0000
+++ Percona-Server/BUILD/SETUP.sh 2013-05-12 06:41:27 +0000
@@ -1,6 +1,6 @@
1#!/bin/sh1#!/bin/sh
22
3# Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.3# Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
4#4#
5# This program is free software; you can redistribute it and/or5# This program is free software; you can redistribute it and/or
6# modify it under the terms of the GNU Library General Public6# modify it under the terms of the GNU Library General Public
77
=== modified file 'Percona-Server/BUILD/build_mccge.sh'
--- Percona-Server/BUILD/build_mccge.sh 2012-05-09 16:47:39 +0000
+++ Percona-Server/BUILD/build_mccge.sh 2013-05-12 06:41:27 +0000
@@ -1,6 +1,6 @@
1#!/bin/sh1#!/bin/sh
22
3# Copyright (c) 2008, 2011, Oracle and/or its affiliates. All rights reserved.3# Copyright (c) 2008, 2012, Oracle and/or its affiliates. All rights reserved.
4#4#
5# This program is free software; you can redistribute it and/or5# This program is free software; you can redistribute it and/or
6# modify it under the terms of the GNU Library General Public6# modify it under the terms of the GNU Library General Public
77
=== modified file 'Percona-Server/BUILD/compile-pentium'
--- Percona-Server/BUILD/compile-pentium 2012-08-22 01:40:20 +0000
+++ Percona-Server/BUILD/compile-pentium 2013-05-12 06:41:27 +0000
@@ -1,6 +1,6 @@
1#! /bin/sh1#! /bin/sh
22
3# Copyright (c) 2002, 2012, Oracle and/or its affiliates. All rights reserved.3# Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
4# 4#
5# This program is free software; you can redistribute it and/or modify5# This program is free software; you can redistribute it and/or modify
6# it under the terms of the GNU General Public License as published by6# it under the terms of the GNU General Public License as published by
77
=== removed file 'Percona-Server/Docs/glibc-2.2.5.patch'
--- Percona-Server/Docs/glibc-2.2.5.patch 2002-05-26 13:11:29 +0000
+++ Percona-Server/Docs/glibc-2.2.5.patch 1970-01-01 00:00:00 +0000
@@ -1,137 +0,0 @@
1diff -r -c --exclude='*.info*' glibc-2.2.5.org/linuxthreads/internals.h glibc-2.2.5/linuxthreads/internals.h
2*** glibc-2.2.5.org/linuxthreads/internals.h Thu Nov 29 08:44:16 2001
3--- glibc-2.2.5/linuxthreads/internals.h Tue May 21 10:51:53 2002
4***************
5*** 343,349 ****
6 THREAD_SELF implementation is used, this must be a power of two and
7 a multiple of PAGE_SIZE. */
8 #ifndef STACK_SIZE
9! #define STACK_SIZE (2 * 1024 * 1024)
10 #endif
11
12 /* The initial size of the thread stack. Must be a multiple of PAGE_SIZE. */
13--- 343,349 ----
14 THREAD_SELF implementation is used, this must be a power of two and
15 a multiple of PAGE_SIZE. */
16 #ifndef STACK_SIZE
17! #define STACK_SIZE (128 * 1024)
18 #endif
19
20 /* The initial size of the thread stack. Must be a multiple of PAGE_SIZE. */
21diff -r -c --exclude='*.info*' glibc-2.2.5.org/linuxthreads/sysdeps/unix/sysv/linux/bits/local_lim.h glibc-2.2.5/linuxthreads/sysdeps/unix/sysv/linux/bits/local_lim.h
22*** glibc-2.2.5.org/linuxthreads/sysdeps/unix/sysv/linux/bits/local_lim.h Thu Jun 8 21:49:49 2000
23--- glibc-2.2.5/linuxthreads/sysdeps/unix/sysv/linux/bits/local_lim.h Tue May 21 10:52:58 2002
24***************
25*** 64,70 ****
26 /* The number of threads per process. */
27 #define _POSIX_THREAD_THREADS_MAX 64
28 /* This is the value this implementation supports. */
29! #define PTHREAD_THREADS_MAX 1024
30
31 /* Maximum amount by which a process can descrease its asynchronous I/O
32 priority level. */
33--- 64,70 ----
34 /* The number of threads per process. */
35 #define _POSIX_THREAD_THREADS_MAX 64
36 /* This is the value this implementation supports. */
37! #define PTHREAD_THREADS_MAX 4096
38
39 /* Maximum amount by which a process can descrease its asynchronous I/O
40 priority level. */
41diff -r -c --exclude='*.info*' glibc-2.2.5.org/nss/nsswitch.c glibc-2.2.5/nss/nsswitch.c
42*** glibc-2.2.5.org/nss/nsswitch.c Tue Jul 17 10:21:36 2001
43--- glibc-2.2.5/nss/nsswitch.c Tue May 21 10:59:55 2002
44***************
45*** 496,501 ****
46--- 496,502 ----
47 {
48 service_user *new_service;
49 const char *name;
50+ int name_alloc_len;
51
52 while (isspace (line[0]))
53 ++line;
54***************
55*** 510,522 ****
56 if (name == line)
57 return result;
58
59
60 new_service = (service_user *) malloc (sizeof (service_user)
61! + (line - name + 1));
62 if (new_service == NULL)
63 return result;
64
65! *((char *) __mempcpy (new_service->name, name, line - name)) = '\0';
66
67 /* Set default actions. */
68 new_service->actions[2 + NSS_STATUS_TRYAGAIN] = NSS_ACTION_CONTINUE;
69--- 511,534 ----
70 if (name == line)
71 return result;
72
73+ name_alloc_len = line - name + 1;
74+
75+ #ifdef DO_STATIC_NSS
76+ if (!((name_alloc_len == 6 && strncmp(name,"files",5) == 0) ||
77+ (name_alloc_len == 4 && strncmp(name,"dns",3) == 0)))
78+ {
79+ name = (char*) "files";
80+ name_alloc_len = 6;
81+ }
82+ #endif
83
84 new_service = (service_user *) malloc (sizeof (service_user)
85! + name_alloc_len);
86 if (new_service == NULL)
87 return result;
88
89! *((char *) __mempcpy (new_service->name, name, name_alloc_len-1)) = '\0';
90!
91
92 /* Set default actions. */
93 new_service->actions[2 + NSS_STATUS_TRYAGAIN] = NSS_ACTION_CONTINUE;
94diff -r -c --exclude='*.info*' glibc-2.2.5.org/time/Makefile glibc-2.2.5/time/Makefile
95*** glibc-2.2.5.org/time/Makefile Fri Aug 10 01:59:41 2001
96--- glibc-2.2.5/time/Makefile Tue May 21 11:01:11 2002
97***************
98*** 37,44 ****
99
100 include ../Rules
101
102! tz-cflags = -DTZDIR='"$(zonedir)"' \
103! -DTZDEFAULT='"$(localtime-file)"' \
104 -DTZDEFRULES='"$(posixrules-file)"'
105
106 CFLAGS-tzfile.c = $(tz-cflags)
107--- 37,44 ----
108
109 include ../Rules
110
111! tz-cflags = -DTZDIR='"/usr/share/zoneinfo/"' \
112! -DTZDEFAULT='"/etc/localtime"' \
113 -DTZDEFRULES='"$(posixrules-file)"'
114
115 CFLAGS-tzfile.c = $(tz-cflags)
116diff -r -c --exclude='*.info*' glibc-2.2.5.org/timezone/Makefile glibc-2.2.5/timezone/Makefile
117*** glibc-2.2.5.org/timezone/Makefile Thu Aug 30 00:45:25 2001
118--- glibc-2.2.5/timezone/Makefile Tue May 21 11:01:57 2002
119***************
120*** 159,166 ****
121
122 $(objpfx)zic: $(objpfx)scheck.o $(objpfx)ialloc.o
123
124! tz-cflags = -DTZDIR='"$(zonedir)"' \
125! -DTZDEFAULT='"$(localtime-file)"' \
126 -DTZDEFRULES='"$(posixrules-file)"' \
127 -DTM_GMTOFF=tm_gmtoff -DTM_ZONE=tm_zone
128
129--- 159,166 ----
130
131 $(objpfx)zic: $(objpfx)scheck.o $(objpfx)ialloc.o
132
133! tz-cflags = -DTZDIR='"/usr/share/zoneinfo/"' \
134! -DTZDEFAULT='"/etc/localtime"' \
135 -DTZDEFRULES='"$(posixrules-file)"' \
136 -DTM_GMTOFF=tm_gmtoff -DTM_ZONE=tm_zone
137
1380
=== removed file 'Percona-Server/Docs/linuxthreads.txt'
--- Percona-Server/Docs/linuxthreads.txt 2007-03-22 18:38:56 +0000
+++ Percona-Server/Docs/linuxthreads.txt 1970-01-01 00:00:00 +0000
@@ -1,19 +0,0 @@
1[Note this information is obsolete]
2
3Notes on compiling glibc for the standard MySQL binary:
4
5 - make sure you have gcc 2.95 and gmake 3.79 or newer
6 - wget ftp://ftp.gnu.org/pub/gnu/glibc/glibc-2.2.5.tar.gz
7 - wget ftp://ftp.gnu.org/pub/gnu/glibc/glibc-linuxthreads-2.2.5.tar.gz
8 - tar zxvf glibc-2.2.5.tar.gz ; cd glibc-2.2.5 ;
9 tar zxvf ../glibc-linuxthreads-2.2.5.tar.gz
10 - patch -p1 < ~/bk/mysql/Docs/glibc-2.2.5.patch
11 - ./configure --prefix=/usr/local/mysql-glibc --enable-static-nss \
12 --disable-shared --enable-add-ons=linuxthreads --target=i386 \
13 --host=i386-pc-linux-gnu
14 - make
15 - possible problems - if compiler is not properly installed, one can get
16 "cpp: too many input" files error - easiest way to solve - SUSE RPM for gcc
17 2.95
18 - surun make install
19 - To build the binaries, run Build-tools/Do-linux-build
200
=== modified file 'Percona-Server/README'
--- Percona-Server/README 2012-04-11 11:45:07 +0000
+++ Percona-Server/README 2013-05-12 06:41:27 +0000
@@ -5,7 +5,7 @@
5is released under the version 2 of the GNU General Public License. 5is released under the version 2 of the GNU General Public License.
6MySQL is brought to you by Oracle.6MySQL is brought to you by Oracle.
77
8Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.8Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
99
10License information can be found in the COPYING file.10License information can be found in the COPYING file.
1111
1212
=== modified file 'Percona-Server/VERSION'
--- Percona-Server/VERSION 2013-03-05 12:46:43 +0000
+++ Percona-Server/VERSION 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1MYSQL_VERSION_MAJOR=51MYSQL_VERSION_MAJOR=5
2MYSQL_VERSION_MINOR=62MYSQL_VERSION_MINOR=6
3MYSQL_VERSION_PATCH=103MYSQL_VERSION_PATCH=11
4MYSQL_VERSION_EXTRA=4MYSQL_VERSION_EXTRA=
55
=== modified file 'Percona-Server/client/completion_hash.h'
--- Percona-Server/client/completion_hash.h 2011-04-14 15:40:04 +0000
+++ Percona-Server/client/completion_hash.h 2013-05-12 06:41:27 +0000
@@ -1,4 +1,5 @@
1/* Copyright (C) 2000-2002 MySQL AB1/* Copyright (c) 2000-2002, 2006 MySQL AB
2 Use is subject to license terms
23
3 This program is free software; you can redistribute it and/or4 This program is free software; you can redistribute it and/or
4 modify it under the terms of the GNU Library General Public5 modify it under the terms of the GNU Library General Public
56
=== modified file 'Percona-Server/client/echo.c'
--- Percona-Server/client/echo.c 2010-10-27 11:32:32 +0000
+++ Percona-Server/client/echo.c 2013-05-12 06:41:27 +0000
@@ -1,4 +1,5 @@
1/* Copyright (C) 2000 MySQL AB1/* Copyright (c) 2000, 2007 MySQL AB
2 Use is subject to license terms
23
3 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
56
=== modified file 'Percona-Server/client/mysql.cc'
--- Percona-Server/client/mysql.cc 2013-05-12 06:39:35 +0000
+++ Percona-Server/client/mysql.cc 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
@@ -2951,7 +2951,7 @@
2951 mysql_free_result(fields);2951 mysql_free_result(fields);
2952 break;2952 break;
2953 }2953 }
2954 field_names[i][num_fields*2]= '\0';2954 field_names[i][num_fields*2]= NULL;
2955 j=0;2955 j=0;
2956 while ((sql_field=mysql_fetch_field(fields)))2956 while ((sql_field=mysql_fetch_field(fields)))
2957 {2957 {
29582958
=== modified file 'Percona-Server/client/mysql_config_editor.cc'
--- Percona-Server/client/mysql_config_editor.cc 2012-10-28 03:26:15 +0000
+++ Percona-Server/client/mysql_config_editor.cc 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
@@ -50,14 +50,14 @@
50*/50*/
51static size_t file_size;51static size_t file_size;
52static char *opt_user= NULL, *opt_password= NULL, *opt_host=NULL,52static char *opt_user= NULL, *opt_password= NULL, *opt_host=NULL,
53 *opt_login_path= NULL;53 *opt_login_path= NULL, *opt_socket= NULL, *opt_port= NULL;
5454
55static char my_login_file[FN_REFLEN];55static char my_login_file[FN_REFLEN];
56static char my_key[LOGIN_KEY_LEN];56static char my_key[LOGIN_KEY_LEN];
5757
58static my_bool opt_verbose, opt_all, tty_password= 0, opt_warn,58static my_bool opt_verbose, opt_all, tty_password= 0, opt_warn,
59 opt_remove_host, opt_remove_pass, opt_remove_user,59 opt_remove_host, opt_remove_pass, opt_remove_user,
60 login_path_specified= FALSE;60 opt_remove_socket, opt_remove_port, login_path_specified= FALSE;
6161
62static int execute_commands(int command);62static int execute_commands(int command);
63static int set_command(void);63static int set_command(void);
@@ -141,6 +141,10 @@
141 0, 0, 0, GET_NO_ARG, NO_ARG, 0, 0, 0, 0, 0, 0},141 0, 0, 0, GET_NO_ARG, NO_ARG, 0, 0, 0, 0, 0, 0},
142 {"user", 'u', "User name to be entered into the login file.", &opt_user,142 {"user", 'u', "User name to be entered into the login file.", &opt_user,
143 &opt_user, 0, GET_STR_ALLOC, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},143 &opt_user, 0, GET_STR_ALLOC, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
144 {"socket", 'S', "Socket path to be entered into login file.", &opt_socket,
145 &opt_socket, 0, GET_STR_ALLOC, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
146 {"port", 'P', "Port number to be entered into login file.", &opt_port,
147 &opt_port, 0, GET_STR_ALLOC, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
144 {"warn", 'w', "Warn and ask for confirmation if set command attempts to "148 {"warn", 'w', "Warn and ask for confirmation if set command attempts to "
145 "overwrite an existing login path (enabled by default).",149 "overwrite an existing login path (enabled by default).",
146 &opt_warn, &opt_warn, 0, GET_BOOL, NO_ARG, 1, 0, 0, 0, 0, 0},150 &opt_warn, &opt_warn, 0, GET_BOOL, NO_ARG, 1, 0, 0, 0, 0, 0},
@@ -157,8 +161,9 @@
157 0, 0, 0},161 0, 0, 0},
158 {"login-path", 'G', "Name of the login path from which options to "162 {"login-path", 'G', "Name of the login path from which options to "
159 "be removed (entire path would be removed if none of user, password, "163 "be removed (entire path would be removed if none of user, password, "
160 "or host options are specified). (Default : client)", &opt_login_path,164 "host, socket, or port options are specified). (Default : client)",
161 &opt_login_path, 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},165 &opt_login_path, &opt_login_path, 0, GET_STR, REQUIRED_ARG,
166 0, 0, 0, 0, 0, 0},
162 {"password", 'p', "Remove password from the login path.",167 {"password", 'p', "Remove password from the login path.",
163 &opt_remove_pass, &opt_remove_pass, 0, GET_BOOL, NO_ARG, 0, 0, 0,168 &opt_remove_pass, &opt_remove_pass, 0, GET_BOOL, NO_ARG, 0, 0, 0,
164 0, 0, 0},169 0, 0, 0},
@@ -168,6 +173,10 @@
168 "to remove the default login path (client) if no login path is specified "173 "to remove the default login path (client) if no login path is specified "
169 "(enabled by default).", &opt_warn, &opt_warn, 0, GET_BOOL, NO_ARG, 1,174 "(enabled by default).", &opt_warn, &opt_warn, 0, GET_BOOL, NO_ARG, 1,
170 0, 0, 0, 0, 0},175 0, 0, 0, 0, 0},
176 {"socket", 'S', "Remove socket path from the login path.", &opt_remove_socket,
177 &opt_remove_socket, 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0},
178 {"port", 'P', "Remove port number from the login path.", &opt_remove_port,
179 &opt_remove_port, 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0},
171 {0, 0, 0, 0, 0, 0, GET_NO_ARG, NO_ARG, 0, 0, 0, 0, 0, 0}180 {0, 0, 0, 0, 0, 0, GET_NO_ARG, NO_ARG, 0, 0, 0, 0, 0, 0}
172};181};
173182
@@ -229,6 +238,13 @@
229 tty_password= 1;238 tty_password= 1;
230 break;239 break;
231 case 'G':240 case 'G':
241 if (login_path_specified)
242 {
243 /* Error, we do not support multiple login paths. */
244 my_perror("Error: Use of multiple login paths is not supported. "
245 "Exiting..");
246 return 1;
247 }
232 login_path_specified= TRUE;248 login_path_specified= TRUE;
233 break;249 break;
234 case '?':250 case '?':
@@ -246,6 +262,13 @@
246{262{
247 switch(optid) {263 switch(optid) {
248 case 'G':264 case 'G':
265 if (login_path_specified)
266 {
267 /* Error, we do not support multiple login paths. */
268 my_perror("Error: Use of multiple login paths is not supported. "
269 "Exiting..");
270 return 1;
271 }
249 login_path_specified= TRUE;272 login_path_specified= TRUE;
250 break;273 break;
251 case '?':274 case '?':
@@ -263,6 +286,13 @@
263{286{
264 switch(optid) {287 switch(optid) {
265 case 'G':288 case 'G':
289 if (login_path_specified)
290 {
291 /* Error, we do not support multiple login paths. */
292 my_perror("Error: Use of multiple login paths is not supported. "
293 "Exiting..");
294 return 1;
295 }
266 login_path_specified= TRUE;296 login_path_specified= TRUE;
267 break;297 break;
268 case '?':298 case '?':
@@ -537,6 +567,18 @@
537 dynstr_append(&path_buf, opt_host);567 dynstr_append(&path_buf, opt_host);
538 }568 }
539569
570 if (opt_socket)
571 {
572 dynstr_append(&path_buf, "\nsocket = ");
573 dynstr_append(&path_buf, opt_socket);
574 }
575
576 if (opt_port)
577 {
578 dynstr_append(&path_buf, "\nport = ");
579 dynstr_append(&path_buf, opt_port);
580 }
581
540 dynstr_append(&path_buf, "\n");582 dynstr_append(&path_buf, "\n");
541583
542 /* Warn if login path already exists */584 /* Warn if login path already exists */
@@ -901,7 +943,8 @@
901static void remove_options(DYNAMIC_STRING *file_buf, const char *path_name)943static void remove_options(DYNAMIC_STRING *file_buf, const char *path_name)
902{944{
903 /* If nope of the options are specified remove the entire path. */945 /* If nope of the options are specified remove the entire path. */
904 if (!opt_remove_host && !opt_remove_pass && !opt_remove_user)946 if (!opt_remove_host && !opt_remove_pass && !opt_remove_user
947 && !opt_remove_socket && !opt_remove_port)
905 {948 {
906 remove_login_path(file_buf, path_name);949 remove_login_path(file_buf, path_name);
907 return;950 return;
@@ -915,6 +958,12 @@
915958
916 if (opt_remove_host)959 if (opt_remove_host)
917 remove_option(file_buf, path_name, "host");960 remove_option(file_buf, path_name, "host");
961
962 if (opt_remove_socket)
963 remove_option(file_buf, path_name, "socket");
964
965 if (opt_remove_port)
966 remove_option(file_buf, path_name, "port");
918}967}
919968
920969
@@ -1423,8 +1472,8 @@
1423 my_print_help(my_program_long_options);1472 my_print_help(my_program_long_options);
1424 my_print_variables(my_program_long_options);1473 my_print_variables(my_program_long_options);
1425 puts("\nWhere command can be any one of the following :\n\1474 puts("\nWhere command can be any one of the following :\n\
1426 set [command options] Sets user name/password/host name for a\n\1475 set [command options] Sets user name/password/host name/socket/port\n\
1427 given login path (section).\n\1476 for a given login path (section).\n\
1428 remove [command options] Remove a login path from the login file.\n\1477 remove [command options] Remove a login path from the login file.\n\
1429 print [command options] Print all the options for a specified\n\1478 print [command options] Print all the options for a specified\n\
1430 login path.\n\1479 login path.\n\
14311480
=== modified file 'Percona-Server/client/mysql_plugin.c'
--- Percona-Server/client/mysql_plugin.c 2012-12-11 05:32:21 +0000
+++ Percona-Server/client/mysql_plugin.c 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/client/mysql_upgrade.c'
--- Percona-Server/client/mysql_upgrade.c 2013-02-12 07:47:19 +0000
+++ Percona-Server/client/mysql_upgrade.c 2013-05-12 06:41:27 +0000
@@ -329,6 +329,11 @@
329 FILE *res_file;329 FILE *res_file;
330 int error;330 int error;
331331
332 if (! ds_res)
333 {
334 fflush(stdout);
335 fflush(stderr);
336 }
332 if (!(res_file= popen(cmd, "r")))337 if (!(res_file= popen(cmd, "r")))
333 die("popen(\"%s\", \"r\") failed", cmd);338 die("popen(\"%s\", \"r\") failed", cmd);
334339
@@ -348,7 +353,10 @@
348 }353 }
349354
350 if (! ds_res)355 if (! ds_res)
356 {
351 fflush(stdout);357 fflush(stdout);
358 fflush(stderr);
359 }
352360
353 error= pclose(res_file);361 error= pclose(res_file);
354 return WEXITSTATUS(error);362 return WEXITSTATUS(error);
@@ -704,6 +712,7 @@
704 ds_args.str,712 ds_args.str,
705 "--check-upgrade",713 "--check-upgrade",
706 "--all-databases",714 "--all-databases",
715 "--skip-database=mysql",
707 "--auto-repair",716 "--auto-repair",
708 opt_write_binlog ? "--write-binlog" : "--skip-write-binlog",717 opt_write_binlog ? "--write-binlog" : "--skip-write-binlog",
709 NULL);718 NULL);
@@ -718,13 +727,45 @@
718 "--no-defaults",727 "--no-defaults",
719 ds_args.str,728 ds_args.str,
720 "--all-databases",729 "--all-databases",
721 "--fix-db-names",730 "--skip-database=mysql",
722 "--fix-table-names",731 "--fix-db-names",
723 opt_write_binlog ? "--write-binlog" : "--skip-write-binlog",732 "--fix-table-names",
724 NULL);733 opt_write_binlog ? "--write-binlog" : "--skip-write-binlog",
725}734 NULL);
726735}
727736
737/** performs the same operation as mysqlcheck_upgrade, but on the mysql db */
738static int run_mysqlcheck_mysql_db_upgrade(void)
739{
740 print_conn_args("mysqlcheck");
741 return run_tool(mysqlcheck_path,
742 NULL, /* Send output from mysqlcheck directly to screen */
743 "--no-defaults",
744 ds_args.str,
745 "--check-upgrade",
746 "--databases",
747 "--auto-repair",
748 opt_write_binlog ? "--write-binlog" : "--skip-write-binlog",
749 "mysql",
750 NULL);
751}
752
753
754/** performs the same operation as mysqlcheck_upgrade, but on the mysql db */
755static int run_mysqlcheck_mysql_db_fixnames(void)
756{
757 print_conn_args("mysqlcheck");
758 return run_tool(mysqlcheck_path,
759 NULL, /* Send output from mysqlcheck directly to screen */
760 "--no-defaults",
761 ds_args.str,
762 "--databases",
763 "--fix-db-names",
764 "--fix-table-names",
765 opt_write_binlog ? "--write-binlog" : "--skip-write-binlog",
766 "mysql",
767 NULL);
768}
728static const char *expected_errors[]=769static const char *expected_errors[]=
729{770{
730 "ERROR 1060", /* Duplicate column name */771 "ERROR 1060", /* Duplicate column name */
@@ -918,10 +959,15 @@
918959
919 /*960 /*
920 Run "mysqlcheck" and "mysql_fix_privilege_tables.sql"961 Run "mysqlcheck" and "mysql_fix_privilege_tables.sql"
962 First run mysqlcheck on the system database.
963 Then do the upgrade.
964 And then run mysqlcheck on all tables.
921 */965 */
922 if ((!opt_systables_only &&966 if ((!opt_systables_only &&
923 (run_mysqlcheck_fixnames() || run_mysqlcheck_upgrade())) ||967 (run_mysqlcheck_mysql_db_fixnames() || run_mysqlcheck_mysql_db_upgrade())) ||
924 run_sql_fix_privilege_tables())968 run_sql_fix_privilege_tables() ||
969 (!opt_systables_only &&
970 (run_mysqlcheck_fixnames() || run_mysqlcheck_upgrade())))
925 {971 {
926 /*972 /*
927 The upgrade failed to complete in some way or another,973 The upgrade failed to complete in some way or another,
928974
=== modified file 'Percona-Server/client/mysqlbinlog.cc'
--- Percona-Server/client/mysqlbinlog.cc 2013-03-05 12:46:43 +0000
+++ Percona-Server/client/mysqlbinlog.cc 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
@@ -1134,8 +1134,10 @@
1134 event was not skipped).1134 event was not skipped).
1135 */1135 */
1136 if (skip_event)1136 if (skip_event)
1137 if ((copy_event_cache_to_file_and_reinit(&print_event_info->head_cache, result_file) ||1137 if ((copy_event_cache_to_file_and_reinit(&print_event_info->head_cache,
1138 copy_event_cache_to_file_and_reinit(&print_event_info->body_cache, result_file)))1138 result_file, stop_never /* flush result_file */) ||
1139 copy_event_cache_to_file_and_reinit(&print_event_info->body_cache,
1140 result_file, stop_never /* flush result_file */)))
1139 goto err;1141 goto err;
1140 }1142 }
11411143
@@ -1177,8 +1179,10 @@
1177 if (stmt_end)1179 if (stmt_end)
1178 {1180 {
1179 print_event_info->have_unflushed_events= FALSE;1181 print_event_info->have_unflushed_events= FALSE;
1180 if (copy_event_cache_to_file_and_reinit(&print_event_info->head_cache, result_file) ||1182 if (copy_event_cache_to_file_and_reinit(&print_event_info->head_cache,
1181 copy_event_cache_to_file_and_reinit(&print_event_info->body_cache, result_file))1183 result_file, stop_never /* flush result file */) ||
1184 copy_event_cache_to_file_and_reinit(&print_event_info->body_cache,
1185 result_file, stop_never /* flush result file */))
1182 goto err;1186 goto err;
1183 goto end;1187 goto end;
1184 }1188 }
@@ -1218,7 +1222,7 @@
1218 }1222 }
1219 /* Flush head cache to result_file for every event */1223 /* Flush head cache to result_file for every event */
1220 if (copy_event_cache_to_file_and_reinit(&print_event_info->head_cache,1224 if (copy_event_cache_to_file_and_reinit(&print_event_info->head_cache,
1221 result_file))1225 result_file, stop_never /* flush result_file */))
1222 goto err;1226 goto err;
1223 }1227 }
12241228
@@ -1551,7 +1555,7 @@
15511555
1552static void print_version()1556static void print_version()
1553{1557{
1554 printf("%s Ver 3.3 for %s at %s\n", my_progname, SYSTEM_TYPE, MACHINE_TYPE);1558 printf("%s Ver 3.4 for %s at %s\n", my_progname, SYSTEM_TYPE, MACHINE_TYPE);
1555}1559}
15561560
15571561
@@ -2049,6 +2053,21 @@
2049 */2053 */
20502054
2051 type= (Log_event_type) net->read_pos[1 + EVENT_TYPE_OFFSET];2055 type= (Log_event_type) net->read_pos[1 + EVENT_TYPE_OFFSET];
2056
2057 /*
2058 Ignore HEARBEAT events. They can show up if mysqlbinlog is
2059 running with:
2060
2061 --read-from-remote-server
2062 --read-from-remote-master=BINLOG-DUMP-GTIDS'
2063 --stop-never
2064 --stop-never-slave-server-id
2065
2066 i.e., acting as a fake slave.
2067 */
2068 if (type == HEARTBEAT_LOG_EVENT)
2069 continue;
2070
2052 if (!raw_mode || (type == ROTATE_EVENT) || (type == FORMAT_DESCRIPTION_EVENT))2071 if (!raw_mode || (type == ROTATE_EVENT) || (type == FORMAT_DESCRIPTION_EVENT))
2053 {2072 {
2054 if (!(ev= Log_event::read_log_event((const char*) net->read_pos + 1 ,2073 if (!(ev= Log_event::read_log_event((const char*) net->read_pos + 1 ,
20552074
=== modified file 'Percona-Server/client/mysqlcheck.c'
--- Percona-Server/client/mysqlcheck.c 2013-02-12 07:47:19 +0000
+++ Percona-Server/client/mysqlcheck.c 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2001, 2012, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2001, 2013, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
@@ -15,7 +15,7 @@
15 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA15 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
16*/16*/
1717
18#define CHECK_VERSION "2.5.0"18#define CHECK_VERSION "2.5.1"
1919
20#include "client_priv.h"20#include "client_priv.h"
21#include "my_default.h"21#include "my_default.h"
@@ -30,6 +30,10 @@
30#define EX_USAGE 130#define EX_USAGE 1
31#define EX_MYSQLERR 231#define EX_MYSQLERR 2
3232
33/* ALTER instead of repair. */
34#define MAX_ALTER_STR_SIZE 128 * 1024
35#define KEY_PARTITIONING_CHANGED_STR "KEY () partitioning changed"
36
33static MYSQL mysql_connection, *sock = 0;37static MYSQL mysql_connection, *sock = 0;
34static my_bool opt_alldbs = 0, opt_check_only_changed = 0, opt_extended = 0,38static my_bool opt_alldbs = 0, opt_check_only_changed = 0, opt_extended = 0,
35 opt_compress = 0, opt_databases = 0, opt_fast = 0,39 opt_compress = 0, opt_databases = 0, opt_fast = 0,
@@ -45,7 +49,8 @@
45 *default_charset= 0, *current_host= 0;49 *default_charset= 0, *current_host= 0;
46static char *opt_plugin_dir= 0, *opt_default_auth= 0;50static char *opt_plugin_dir= 0, *opt_default_auth= 0;
47static int first_error = 0;51static int first_error = 0;
48DYNAMIC_ARRAY tables4repair, tables4rebuild;52static char *opt_skip_database;
53DYNAMIC_ARRAY tables4repair, tables4rebuild, alter_table_cmds;
49#ifdef HAVE_SMEM54#ifdef HAVE_SMEM
50static char *shared_memory_base_name=0;55static char *shared_memory_base_name=0;
51#endif56#endif
@@ -175,6 +180,9 @@
175#endif180#endif
176 {"silent", 's', "Print only error messages.", &opt_silent,181 {"silent", 's', "Print only error messages.", &opt_silent,
177 &opt_silent, 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0},182 &opt_silent, 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0},
183 {"skip_database", 0, "Don't process the database specified as argument",
184 &opt_skip_database, &opt_skip_database, 0, GET_STR, REQUIRED_ARG,
185 0, 0, 0, 0, 0, 0},
178 {"socket", 'S', "The socket file to use for connection.",186 {"socket", 'S', "The socket file to use for connection.",
179 &opt_mysql_unix_port, &opt_mysql_unix_port, 0, GET_STR,187 &opt_mysql_unix_port, &opt_mysql_unix_port, 0, GET_STR,
180 REQUIRED_ARG, 0, 0, 0, 0, 0, 0},188 REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
@@ -399,6 +407,7 @@
399 my_progname);407 my_progname);
400 return 1;408 return 1;
401 }409 }
410
402 if (*argc < 1 && !opt_alldbs)411 if (*argc < 1 && !opt_alldbs)
403 {412 {
404 printf("You forgot to give the arguments! Please see %s --help\n",413 printf("You forgot to give the arguments! Please see %s --help\n",
@@ -598,6 +607,17 @@
598} /* process_all_tables_in_db */607} /* process_all_tables_in_db */
599608
600609
610static int run_query(const char *query)
611{
612 if (mysql_query(sock, query))
613 {
614 fprintf(stderr, "Failed to %s\n", query);
615 fprintf(stderr, "Error: %s\n", mysql_error(sock));
616 return 1;
617 }
618 return 0;
619}
620
601621
602static int fix_table_storage_name(const char *name)622static int fix_table_storage_name(const char *name)
603{623{
@@ -606,12 +626,7 @@
606 if (strncmp(name, "#mysql50#", 9))626 if (strncmp(name, "#mysql50#", 9))
607 return 1;627 return 1;
608 sprintf(qbuf, "RENAME TABLE `%s` TO `%s`", name, name + 9);628 sprintf(qbuf, "RENAME TABLE `%s` TO `%s`", name, name + 9);
609 if (mysql_query(sock, qbuf))629 rc= run_query(qbuf);
610 {
611 fprintf(stderr, "Failed to %s\n", qbuf);
612 fprintf(stderr, "Error: %s\n", mysql_error(sock));
613 rc= 1;
614 }
615 if (verbose)630 if (verbose)
616 printf("%-50s %s\n", name, rc ? "FAILED" : "OK");631 printf("%-50s %s\n", name, rc ? "FAILED" : "OK");
617 return rc;632 return rc;
@@ -624,12 +639,7 @@
624 if (strncmp(name, "#mysql50#", 9))639 if (strncmp(name, "#mysql50#", 9))
625 return 1;640 return 1;
626 sprintf(qbuf, "ALTER DATABASE `%s` UPGRADE DATA DIRECTORY NAME", name);641 sprintf(qbuf, "ALTER DATABASE `%s` UPGRADE DATA DIRECTORY NAME", name);
627 if (mysql_query(sock, qbuf))642 rc= run_query(qbuf);
628 {
629 fprintf(stderr, "Failed to %s\n", qbuf);
630 fprintf(stderr, "Error: %s\n", mysql_error(sock));
631 rc= 1;
632 }
633 if (verbose)643 if (verbose)
634 printf("%-50s %s\n", name, rc ? "FAILED" : "OK");644 printf("%-50s %s\n", name, rc ? "FAILED" : "OK");
635 return rc;645 return rc;
@@ -658,6 +668,10 @@
658668
659static int process_one_db(char *database)669static int process_one_db(char *database)
660{670{
671 if (opt_skip_database && opt_alldbs &&
672 !strcmp(database, opt_skip_database))
673 return 0;
674
661 if (what_to_do == DO_UPGRADE)675 if (what_to_do == DO_UPGRADE)
662 {676 {
663 int rc= 0;677 int rc= 0;
@@ -692,13 +706,7 @@
692static int disable_binlog()706static int disable_binlog()
693{707{
694 const char *stmt= "SET SQL_LOG_BIN=0";708 const char *stmt= "SET SQL_LOG_BIN=0";
695 if (mysql_query(sock, stmt))709 return run_query(stmt);
696 {
697 fprintf(stderr, "Failed to %s\n", stmt);
698 fprintf(stderr, "Error: %s\n", mysql_error(sock));
699 return 1;
700 }
701 return 0;
702}710}
703711
704static int handle_request_for_tables(char *tables, uint length)712static int handle_request_for_tables(char *tables, uint length)
@@ -768,12 +776,14 @@
768 MYSQL_RES *res;776 MYSQL_RES *res;
769 MYSQL_ROW row;777 MYSQL_ROW row;
770 char prev[NAME_LEN*2+2];778 char prev[NAME_LEN*2+2];
779 char prev_alter[MAX_ALTER_STR_SIZE];
771 uint i;780 uint i;
772 my_bool found_error=0, table_rebuild=0;781 my_bool found_error=0, table_rebuild=0;
773782
774 res = mysql_use_result(sock);783 res = mysql_use_result(sock);
775784
776 prev[0] = '\0';785 prev[0] = '\0';
786 prev_alter[0]= 0;
777 for (i = 0; (row = mysql_fetch_row(res)); i++)787 for (i = 0; (row = mysql_fetch_row(res)); i++)
778 {788 {
779 int changed = strcmp(prev, row[0]);789 int changed = strcmp(prev, row[0]);
@@ -790,12 +800,18 @@
790 strcmp(row[3],"OK"))800 strcmp(row[3],"OK"))
791 {801 {
792 if (table_rebuild)802 if (table_rebuild)
793 insert_dynamic(&tables4rebuild, prev);803 {
804 if (prev_alter[0])
805 insert_dynamic(&alter_table_cmds, (uchar*) prev_alter);
806 else
807 insert_dynamic(&tables4rebuild, (uchar*) prev);
808 }
794 else809 else
795 insert_dynamic(&tables4repair, prev);810 insert_dynamic(&tables4repair, prev);
796 }811 }
797 found_error=0;812 found_error=0;
798 table_rebuild=0;813 table_rebuild=0;
814 prev_alter[0]= 0;
799 if (opt_silent)815 if (opt_silent)
800 continue;816 continue;
801 }817 }
@@ -804,11 +820,30 @@
804 else if (!status && changed)820 else if (!status && changed)
805 {821 {
806 printf("%s\n%-9s: %s", row[0], row[2], row[3]);822 printf("%s\n%-9s: %s", row[0], row[2], row[3]);
807 if (strcmp(row[2],"note"))823 if (opt_auto_repair && strcmp(row[2],"note"))
808 {824 {
809 found_error=1;825 const char *alter_txt= strstr(row[3], "ALTER TABLE");
810 if (opt_auto_repair && strstr(row[3], "ALTER TABLE") != NULL)826 found_error=1;
827 if (alter_txt)
828 {
811 table_rebuild=1;829 table_rebuild=1;
830 if (!strncmp(row[3], KEY_PARTITIONING_CHANGED_STR,
831 strlen(KEY_PARTITIONING_CHANGED_STR)) &&
832 strstr(alter_txt, "PARTITION BY"))
833 {
834 if (strlen(alter_txt) >= MAX_ALTER_STR_SIZE)
835 {
836 printf("Error: Alter command too long (>= %d),"
837 " please do \"%s\" or dump/reload to fix it!\n",
838 MAX_ALTER_STR_SIZE,
839 alter_txt);
840 table_rebuild= 0;
841 prev_alter[0]= 0;
842 }
843 else
844 strcpy(prev_alter, alter_txt);
845 }
846 }
812 }847 }
813 }848 }
814 else849 else
@@ -820,7 +855,12 @@
820 if (found_error && opt_auto_repair && what_to_do != DO_REPAIR)855 if (found_error && opt_auto_repair && what_to_do != DO_REPAIR)
821 {856 {
822 if (table_rebuild)857 if (table_rebuild)
823 insert_dynamic(&tables4rebuild, prev);858 {
859 if (prev_alter[0])
860 insert_dynamic(&alter_table_cmds, (uchar*) prev_alter);
861 else
862 insert_dynamic(&tables4rebuild, (uchar*) prev);
863 }
824 else864 else
825 insert_dynamic(&tables4repair, prev);865 insert_dynamic(&tables4repair, prev);
826 }866 }
@@ -931,7 +971,8 @@
931971
932 if (opt_auto_repair &&972 if (opt_auto_repair &&
933 (my_init_dynamic_array(&tables4repair, sizeof(char)*(NAME_LEN*2+2),16,64) ||973 (my_init_dynamic_array(&tables4repair, sizeof(char)*(NAME_LEN*2+2),16,64) ||
934 my_init_dynamic_array(&tables4rebuild, sizeof(char)*(NAME_LEN*2+2),16,64)))974 my_init_dynamic_array(&tables4rebuild, sizeof(char)*(NAME_LEN*2+2),16,64) ||
975 my_init_dynamic_array(&alter_table_cmds, MAX_ALTER_STR_SIZE, 0, 1)))
935 {976 {
936 first_error = 1;977 first_error = 1;
937 goto end;978 goto end;
@@ -959,6 +1000,8 @@
959 }1000 }
960 for (i = 0; i < tables4rebuild.elements ; i++)1001 for (i = 0; i < tables4rebuild.elements ; i++)
961 rebuild_table((char*) dynamic_array_ptr(&tables4rebuild, i));1002 rebuild_table((char*) dynamic_array_ptr(&tables4rebuild, i));
1003 for (i = 0; i < alter_table_cmds.elements ; i++)
1004 run_query((char*) dynamic_array_ptr(&alter_table_cmds, i));
962 }1005 }
963 end:1006 end:
964 dbDisconnect(current_host);1007 dbDisconnect(current_host);
9651008
=== modified file 'Percona-Server/client/mysqldump.c'
--- Percona-Server/client/mysqldump.c 2013-05-12 06:39:35 +0000
+++ Percona-Server/client/mysqldump.c 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
@@ -2392,10 +2392,10 @@
2392 {2392 {
2393 if (opt_xml)2393 if (opt_xml)
2394 {2394 {
2395 if (i) /* Procedures. */2395 if (i) // Procedures.
2396 print_xml_row(sql_file, "routine", routine_res, &row,2396 print_xml_row(sql_file, "routine", routine_res, &row,
2397 "Create Procedure");2397 "Create Procedure");
2398 else /* Functions. */2398 else // Functions.
2399 print_xml_row(sql_file, "routine", routine_res, &row,2399 print_xml_row(sql_file, "routine", routine_res, &row,
2400 "Create Function");2400 "Create Function");
2401 continue;2401 continue;
24022402
=== modified file 'Percona-Server/client/mysqltest.cc'
--- Percona-Server/client/mysqltest.cc 2013-03-05 12:46:43 +0000
+++ Percona-Server/client/mysqltest.cc 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1/* Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.1/* Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
22
3 This program is free software; you can redistribute it and/or modify3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by4 it under the terms of the GNU General Public License as published by
@@ -1336,7 +1336,7 @@
1336void free_used_memory()1336void free_used_memory()
1337{1337{
1338 uint i;1338 uint i;
1339 DBUG_ENTER("free_used_memory");1339 // Do not use DBUG_ENTER("free_used_memory"); here, see below.
13401340
1341 if (connections)1341 if (connections)
1342 close_connections();1342 close_connections();
@@ -2024,18 +2024,9 @@
2024 size_t reject_length;2024 size_t reject_length;
2025 dirname_part(reject_file, result_file_name, &reject_length);2025 dirname_part(reject_file, result_file_name, &reject_length);
20262026
2027 if (access(reject_file, W_OK) == 0)2027 /* Put reject file in opt_logdir */
2028 {2028 fn_format(reject_file, result_file_name, opt_logdir,
2029 /* Result file directory is writable, save reject file there */
2030 fn_format(reject_file, result_file_name, NULL,
2031 ".reject", MY_REPLACE_EXT);
2032 }
2033 else
2034 {
2035 /* Put reject file in opt_logdir */
2036 fn_format(reject_file, result_file_name, opt_logdir,
2037 ".reject", MY_REPLACE_DIR | MY_REPLACE_EXT);2029 ".reject", MY_REPLACE_DIR | MY_REPLACE_EXT);
2038 }
20392030
2040 if (my_copy(log_file.file_name(), reject_file, MYF(0)) != 0)2031 if (my_copy(log_file.file_name(), reject_file, MYF(0)) != 0)
2041 die("Failed to copy '%s' to '%s', errno: %d",2032 die("Failed to copy '%s' to '%s', errno: %d",
@@ -5503,6 +5494,7 @@
5503 char *con_options;5494 char *con_options;
5504 my_bool con_ssl= 0, con_compress= 0;5495 my_bool con_ssl= 0, con_compress= 0;
5505 my_bool con_pipe= 0, con_shm= 0, con_cleartext_enable= 0;5496 my_bool con_pipe= 0, con_shm= 0, con_cleartext_enable= 0;
5497 my_bool con_secure_auth= 1;
5506 struct st_connection* con_slot;5498 struct st_connection* con_slot;
55075499
5508 static DYNAMIC_STRING ds_connection_name;5500 static DYNAMIC_STRING ds_connection_name;
@@ -5594,6 +5586,8 @@
5594 con_shm= 1;5586 con_shm= 1;
5595 else if (!strncmp(con_options, "CLEARTEXT", 9))5587 else if (!strncmp(con_options, "CLEARTEXT", 9))
5596 con_cleartext_enable= 1;5588 con_cleartext_enable= 1;
5589 else if (!strncmp(con_options, "SKIPSECUREAUTH",14))
5590 con_secure_auth= 0;
5597 else5591 else
5598 die("Illegal option to connect: %.*s", 5592 die("Illegal option to connect: %.*s",
5599 (int) (end - con_options), con_options);5593 (int) (end - con_options), con_options);
@@ -5705,6 +5699,10 @@
5705 mysql_options(&con_slot->mysql, MYSQL_ENABLE_CLEARTEXT_PLUGIN,5699 mysql_options(&con_slot->mysql, MYSQL_ENABLE_CLEARTEXT_PLUGIN,
5706 (char*) &con_cleartext_enable);5700 (char*) &con_cleartext_enable);
57075701
5702 if (!con_secure_auth)
5703 mysql_options(&con_slot->mysql, MYSQL_SECURE_AUTH,
5704 (char*) &con_secure_auth);
5705
5708 /* Special database to allow one to connect without a database name */5706 /* Special database to allow one to connect without a database name */
5709 if (ds_database.length && !strcmp(ds_database.str,"*NO-ONE*"))5707 if (ds_database.length && !strcmp(ds_database.str,"*NO-ONE*"))
5710 dynstr_set(&ds_database, "");5708 dynstr_set(&ds_database, "");
57115709
=== modified file 'Percona-Server/client/sql_string.cc'
--- Percona-Server/client/sql_string.cc 2013-05-12 06:39:35 +0000
+++ Percona-Server/client/sql_string.cc 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
@@ -736,7 +736,7 @@
736{736{
737 if (from->Alloced_length >= from_length)737 if (from->Alloced_length >= from_length)
738 return from;738 return from;
739 if (from->alloced || !to || from == to)739 if ((from->alloced && (from->Alloced_length != 0)) || !to || from == to)
740 {740 {
741 (void) from->realloc(from_length);741 (void) from->realloc(from_length);
742 return from;742 return from;
743743
=== modified file 'Percona-Server/cmake/build_configurations/mysql_release.cmake'
--- Percona-Server/cmake/build_configurations/mysql_release.cmake 2012-08-22 01:40:20 +0000
+++ Percona-Server/cmake/build_configurations/mysql_release.cmake 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1# Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.1# Copyright (c) 2010, 2012, Oracle and/or its affiliates. All rights reserved.
2# 2#
3# This program is free software; you can redistribute it and/or modify3# This program is free software; you can redistribute it and/or modify
4# it under the terms of the GNU General Public License as published by4# it under the terms of the GNU General Public License as published by
55
=== modified file 'Percona-Server/cmake/configure.pl'
--- Percona-Server/cmake/configure.pl 2012-12-04 08:24:59 +0000
+++ Percona-Server/cmake/configure.pl 2013-05-12 06:41:27 +0000
@@ -1,6 +1,6 @@
1#!/usr/bin/perl1#!/usr/bin/perl
22
3# Copyright (c) 2009, 2011, Oracle and/or its affiliates. All rights reserved.3# Copyright (c) 2009, 2012, Oracle and/or its affiliates. All rights reserved.
4# 4#
5# This program is free software; you can redistribute it and/or modify5# This program is free software; you can redistribute it and/or modify
6# it under the terms of the GNU General Public License as published by6# it under the terms of the GNU General Public License as published by
77
=== modified file 'Percona-Server/cmake/cpu_info.cmake'
--- Percona-Server/cmake/cpu_info.cmake 2012-05-30 07:57:41 +0000
+++ Percona-Server/cmake/cpu_info.cmake 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1# Copyright (c) 2009, 2011, 2012 Oracle and/or its affiliates. All rights reserved.1# Copyright (c) 2009, 2012, Oracle and/or its affiliates. All rights reserved.
2# 2#
3# This program is free software; you can redistribute it and/or modify3# This program is free software; you can redistribute it and/or modify
4# it under the terms of the GNU General Public License as published by4# it under the terms of the GNU General Public License as published by
55
=== modified file 'Percona-Server/cmake/create_initial_db.cmake.in'
--- Percona-Server/cmake/create_initial_db.cmake.in 2012-10-03 14:07:49 +0000
+++ Percona-Server/cmake/create_initial_db.cmake.in 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1# Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.1# Copyright (c) 2009, 2012, Oracle and/or its affiliates. All rights reserved.
2# 2#
3# This program is free software; you can redistribute it and/or modify3# This program is free software; you can redistribute it and/or modify
4# it under the terms of the GNU General Public License as published by4# it under the terms of the GNU General Public License as published by
@@ -21,7 +21,7 @@
2121
22SET(WITH_SSL_PATH "@WITH_SSL_PATH@")22SET(WITH_SSL_PATH "@WITH_SSL_PATH@")
23SET(CRYPTO_LIBRARY "@CRYPTO_LIBRARY@")23SET(CRYPTO_LIBRARY "@CRYPTO_LIBRARY@")
24SET(OPENSSL_LIBRARY "@OPENSSL_LIBRARIES@")24SET(OPENSSL_LIBRARY "@OPENSSL_LIBRARY@")
2525
26SET(WIN32 "@WIN32@")26SET(WIN32 "@WIN32@")
2727
2828
=== modified file 'Percona-Server/cmake/dtrace.cmake'
--- Percona-Server/cmake/dtrace.cmake 2013-05-12 06:39:35 +0000
+++ Percona-Server/cmake/dtrace.cmake 2013-05-12 06:41:27 +0000
@@ -74,13 +74,6 @@
74 ${CMAKE_BINARY_DIR}/include/probes_mysql_dtrace.h74 ${CMAKE_BINARY_DIR}/include/probes_mysql_dtrace.h
75 ${CMAKE_BINARY_DIR}/include/probes_mysql_nodtrace.h75 ${CMAKE_BINARY_DIR}/include/probes_mysql_nodtrace.h
76 )76 )
77 IF(CMAKE_SYSTEM_NAME MATCHES "Linux")
78 # Systemtap object
79 EXECUTE_PROCESS(
80 COMMAND ${DTRACE} -G -s ${CMAKE_SOURCE_DIR}/include/probes_mysql.d.base
81 -o ${CMAKE_BINARY_DIR}/probes_mysql.o
82 )
83 ENDIF()
84 ADD_CUSTOM_TARGET(gen_dtrace_header77 ADD_CUSTOM_TARGET(gen_dtrace_header
85 DEPENDS 78 DEPENDS
86 ${CMAKE_BINARY_DIR}/include/probes_mysql.d79 ${CMAKE_BINARY_DIR}/include/probes_mysql.d
@@ -99,12 +92,7 @@
99 IF(ENABLE_DTRACE)92 IF(ENABLE_DTRACE)
100 ADD_DEPENDENCIES(${target} gen_dtrace_header)93 ADD_DEPENDENCIES(${target} gen_dtrace_header)
10194
102 IF(CMAKE_SYSTEM_NAME MATCHES "Linux")95 # Invoke dtrace to generate object file and link it together with target.
103 TARGET_LINK_LIBRARIES(${target} ${CMAKE_BINARY_DIR}/probes_mysql.o)
104 ENDIF()
105
106 # On Solaris, invoke dtrace -G to generate object file and
107 # link it together with target.
108 IF(CMAKE_SYSTEM_NAME MATCHES "SunOS")96 IF(CMAKE_SYSTEM_NAME MATCHES "SunOS")
109 SET(objdir ${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/${target}.dir)97 SET(objdir ${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/${target}.dir)
110 SET(outfile ${objdir}/${target}_dtrace.o)98 SET(outfile ${objdir}/${target}_dtrace.o)
@@ -121,6 +109,17 @@
121 -P ${CMAKE_SOURCE_DIR}/cmake/dtrace_prelink.cmake109 -P ${CMAKE_SOURCE_DIR}/cmake/dtrace_prelink.cmake
122 WORKING_DIRECTORY ${objdir}110 WORKING_DIRECTORY ${objdir}
123 )111 )
112 ELSEIF(CMAKE_SYSTEM_NAME MATCHES "Linux")
113 SET(outfile "${CMAKE_BINARY_DIR}/probes_mysql.o")
114 # Systemtap object
115 EXECUTE_PROCESS(
116 COMMAND ${DTRACE} -G -s ${CMAKE_SOURCE_DIR}/include/probes_mysql.d.base
117 -o ${outfile}
118 )
119 ENDIF()
120
121 # Do not try to extend the library if we have not built the .o file
122 IF(outfile)
124 # Add full object path to linker flags123 # Add full object path to linker flags
125 GET_TARGET_PROPERTY(target_type ${target} TYPE)124 GET_TARGET_PROPERTY(target_type ${target} TYPE)
126 IF(NOT target_type MATCHES "STATIC")125 IF(NOT target_type MATCHES "STATIC")
@@ -132,12 +131,12 @@
132 # but maybe one day this will be fixed.131 # but maybe one day this will be fixed.
133 GET_TARGET_PROPERTY(target_location ${target} LOCATION)132 GET_TARGET_PROPERTY(target_location ${target} LOCATION)
134 ADD_CUSTOM_COMMAND(133 ADD_CUSTOM_COMMAND(
135 TARGET ${target} POST_BUILD134 TARGET ${target} POST_BUILD
136 COMMAND ${CMAKE_AR} r ${target_location} ${outfile}135 COMMAND ${CMAKE_AR} r ${target_location} ${outfile}
137 COMMAND ${CMAKE_RANLIB} ${target_location}136 COMMAND ${CMAKE_RANLIB} ${target_location}
138 )137 )
139 # Used in DTRACE_INSTRUMENT_WITH_STATIC_LIBS138 # Used in DTRACE_INSTRUMENT_WITH_STATIC_LIBS
140 SET(TARGET_OBJECT_DIRECTORY_${target} ${objdir} CACHE INTERNAL "")139 SET(TARGET_OBJECT_DIRECTORY_${target} ${objdir} CACHE INTERNAL "")
141 ENDIF()140 ENDIF()
142 ENDIF()141 ENDIF()
143 ENDIF()142 ENDIF()
144143
=== modified file 'Percona-Server/cmake/install_macros.cmake'
--- Percona-Server/cmake/install_macros.cmake 2012-02-16 09:51:14 +0000
+++ Percona-Server/cmake/install_macros.cmake 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1# Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.1# Copyright (c) 2009, 2011, Oracle and/or its affiliates. All rights reserved.
2# 2#
3# This program is free software; you can redistribute it and/or modify3# This program is free software; you can redistribute it and/or modify
4# it under the terms of the GNU General Public License as published by4# it under the terms of the GNU General Public License as published by
55
=== modified file 'Percona-Server/cmake/libevent.cmake'
--- Percona-Server/cmake/libevent.cmake 2012-02-28 13:00:44 +0000
+++ Percona-Server/cmake/libevent.cmake 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1# Copyright (C) 2011 Oracle and/or its affiliates. All Rights Reserved.1# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
2# 2#
3# This program is free software; you can redistribute it and/or modify3# This program is free software; you can redistribute it and/or modify
4# it under the terms of the GNU General Public License as published by4# it under the terms of the GNU General Public License as published by
55
=== modified file 'Percona-Server/cmake/libutils.cmake'
--- Percona-Server/cmake/libutils.cmake 2012-10-16 06:21:51 +0000
+++ Percona-Server/cmake/libutils.cmake 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1# Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.1# Copyright (c) 2009, 2012, Oracle and/or its affiliates. All rights reserved.
2# 2#
3# This program is free software; you can redistribute it and/or modify3# This program is free software; you can redistribute it and/or modify
4# it under the terms of the GNU General Public License as published by4# it under the terms of the GNU General Public License as published by
@@ -126,7 +126,7 @@
126126
127MACRO(MERGE_STATIC_LIBS TARGET OUTPUT_NAME LIBS_TO_MERGE)127MACRO(MERGE_STATIC_LIBS TARGET OUTPUT_NAME LIBS_TO_MERGE)
128 # To produce a library we need at least one source file.128 # To produce a library we need at least one source file.
129 # It is created by ADD_CUSTOM_COMMAND below and will helps 129 # It is created by ADD_CUSTOM_COMMAND below and will
130 # also help to track dependencies.130 # also help to track dependencies.
131 SET(SOURCE_FILE ${CMAKE_CURRENT_BINARY_DIR}/${TARGET}_depends.c)131 SET(SOURCE_FILE ${CMAKE_CURRENT_BINARY_DIR}/${TARGET}_depends.c)
132 ADD_LIBRARY(${TARGET} STATIC ${SOURCE_FILE})132 ADD_LIBRARY(${TARGET} STATIC ${SOURCE_FILE})
@@ -158,6 +158,7 @@
158 IF(OSLIBS)158 IF(OSLIBS)
159 LIST(REMOVE_DUPLICATES OSLIBS)159 LIST(REMOVE_DUPLICATES OSLIBS)
160 TARGET_LINK_LIBRARIES(${TARGET} ${OSLIBS})160 TARGET_LINK_LIBRARIES(${TARGET} ${OSLIBS})
161 MESSAGE(STATUS "Library ${TARGET} depends on OSLIBS ${OSLIBS}")
161 ENDIF()162 ENDIF()
162163
163 # Make the generated dummy source file depended on all static input164 # Make the generated dummy source file depended on all static input
164165
=== modified file 'Percona-Server/cmake/maintainer.cmake'
--- Percona-Server/cmake/maintainer.cmake 2012-08-22 01:40:20 +0000
+++ Percona-Server/cmake/maintainer.cmake 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1# Copyright (c) 2010, 2011, Oracle and/or its affiliates. All rights reserved.1# Copyright (c) 2010, 2012, Oracle and/or its affiliates. All rights reserved.
2#2#
3# This program is free software; you can redistribute it and/or modify3# This program is free software; you can redistribute it and/or modify
4# it under the terms of the GNU General Public License as published by4# it under the terms of the GNU General Public License as published by
55
=== modified file 'Percona-Server/cmake/make_dist.cmake.in'
--- Percona-Server/cmake/make_dist.cmake.in 2012-08-22 01:40:20 +0000
+++ Percona-Server/cmake/make_dist.cmake.in 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1# Copyright (c) 2009, 2011, Oracle and/or its affiliates. All rights reserved.1# Copyright (c) 2009, 2012, Oracle and/or its affiliates. All rights reserved.
2# 2#
3# This program is free software; you can redistribute it and/or modify3# This program is free software; you can redistribute it and/or modify
4# it under the terms of the GNU General Public License as published by4# it under the terms of the GNU General Public License as published by
55
=== modified file 'Percona-Server/cmake/mysql_version.cmake'
--- Percona-Server/cmake/mysql_version.cmake 2013-01-18 04:53:12 +0000
+++ Percona-Server/cmake/mysql_version.cmake 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1# Copyright (c) 2009, 2011, Oracle and/or its affiliates. All rights reserved.1# Copyright (c) 2009, 2012, Oracle and/or its affiliates. All rights reserved.
2# 2#
3# This program is free software; you can redistribute it and/or modify3# This program is free software; you can redistribute it and/or modify
4# it under the terms of the GNU General Public License as published by4# it under the terms of the GNU General Public License as published by
55
=== modified file 'Percona-Server/cmake/os/Darwin.cmake'
--- Percona-Server/cmake/os/Darwin.cmake 2012-10-08 08:16:12 +0000
+++ Percona-Server/cmake/os/Darwin.cmake 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1# Copyright (c) 2010, 2011, Oracle and/or its affiliates. All rights reserved.1# Copyright (c) 2010, 2012, Oracle and/or its affiliates. All rights reserved.
2# 2#
3# This program is free software; you can redistribute it and/or modify3# This program is free software; you can redistribute it and/or modify
4# it under the terms of the GNU General Public License as published by4# it under the terms of the GNU General Public License as published by
55
=== modified file 'Percona-Server/cmake/os/Windows.cmake'
--- Percona-Server/cmake/os/Windows.cmake 2012-08-22 01:40:20 +0000
+++ Percona-Server/cmake/os/Windows.cmake 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1# Copyright (c) 2010, 2011, Oracle and/or its affiliates. All rights reserved.1# Copyright (c) 2010, 2012, Oracle and/or its affiliates. All rights reserved.
2# 2#
3# This program is free software; you can redistribute it and/or modify3# This program is free software; you can redistribute it and/or modify
4# it under the terms of the GNU General Public License as published by4# it under the terms of the GNU General Public License as published by
55
=== modified file 'Percona-Server/cmake/package_name.cmake'
--- Percona-Server/cmake/package_name.cmake 2013-01-18 04:53:12 +0000
+++ Percona-Server/cmake/package_name.cmake 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1# Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.1# Copyright (c) 2010, 2012, Oracle and/or its affiliates. All rights reserved.
2#2#
3# This program is free software; you can redistribute it and/or modify3# This program is free software; you can redistribute it and/or modify
4# it under the terms of the GNU General Public License as published by4# it under the terms of the GNU General Public License as published by
55
=== modified file 'Percona-Server/cmake/plugin.cmake'
--- Percona-Server/cmake/plugin.cmake 2012-10-24 16:08:19 +0000
+++ Percona-Server/cmake/plugin.cmake 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1# Copyright (c) 2009, 2011, Oracle and/or its affiliates. All rights reserved.1# Copyright (c) 2009, 2012, Oracle and/or its affiliates. All rights reserved.
2# 2#
3# This program is free software; you can redistribute it and/or modify3# This program is free software; you can redistribute it and/or modify
4# it under the terms of the GNU General Public License as published by4# it under the terms of the GNU General Public License as published by
55
=== modified file 'Percona-Server/cmake/readline.cmake'
--- Percona-Server/cmake/readline.cmake 2012-03-01 12:32:57 +0000
+++ Percona-Server/cmake/readline.cmake 2013-05-12 06:41:27 +0000
@@ -1,5 +1,4 @@
1# Copyright (c) 2009, 2010 Sun Microsystems, Inc.1# Copyright (c) 2009, 2012, Oracle and/or its affiliates. All rights reserved.
2# Use is subject to license terms.
3# 2#
4# This program is free software; you can redistribute it and/or modify3# This program is free software; you can redistribute it and/or modify
5# it under the terms of the GNU General Public License as published by4# it under the terms of the GNU General Public License as published by
65
=== modified file 'Percona-Server/cmake/ssl.cmake'
--- Percona-Server/cmake/ssl.cmake 2012-12-04 08:24:59 +0000
+++ Percona-Server/cmake/ssl.cmake 2013-05-12 06:41:27 +0000
@@ -105,9 +105,13 @@
105 UNSET(OPENSSL_APPLINK_C)105 UNSET(OPENSSL_APPLINK_C)
106 UNSET(OPENSSL_APPLINK_C CACHE)106 UNSET(OPENSSL_APPLINK_C CACHE)
107 ENDIF()107 ENDIF()
108 IF (OPENSSL_LIBRARIES)108 IF (OPENSSL_LIBRARY)
109 UNSET(OPENSSL_LIBRARIES)109 UNSET(OPENSSL_LIBRARY)
110 UNSET(OPENSSL_LIBRARIES CACHE)110 UNSET(OPENSSL_LIBRARY CACHE)
111 ENDIF()
112 IF (CRYPTO_LIBRARY)
113 UNSET(CRYPTO_LIBRARY)
114 UNSET(CRYPTO_LIBRARY CACHE)
111 ENDIF()115 ENDIF()
112 ELSEIF(WITH_SSL STREQUAL "system" OR116 ELSEIF(WITH_SSL STREQUAL "system" OR
113 WITH_SSL STREQUAL "yes" OR117 WITH_SSL STREQUAL "yes" OR
@@ -140,15 +144,19 @@
140144
141 # On mac this list is <.dylib;.so;.a>145 # On mac this list is <.dylib;.so;.a>
142 # We prefer static libraries, so we revert it here.146 # We prefer static libraries, so we revert it here.
143 LIST(REVERSE CMAKE_FIND_LIBRARY_SUFFIXES)147 IF (WITH_SSL_PATH)
144 MESSAGE(STATUS "suffixes <${CMAKE_FIND_LIBRARY_SUFFIXES}>")148 LIST(REVERSE CMAKE_FIND_LIBRARY_SUFFIXES)
145 FIND_LIBRARY(OPENSSL_LIBRARIES149 MESSAGE(STATUS "suffixes <${CMAKE_FIND_LIBRARY_SUFFIXES}>")
150 ENDIF()
151 FIND_LIBRARY(OPENSSL_LIBRARY
146 NAMES ssl ssleay32 ssleay32MD152 NAMES ssl ssleay32 ssleay32MD
147 HINTS ${OPENSSL_ROOT_DIR}/lib)153 HINTS ${OPENSSL_ROOT_DIR}/lib)
148 FIND_LIBRARY(CRYPTO_LIBRARY154 FIND_LIBRARY(CRYPTO_LIBRARY
149 NAMES crypto libeay32155 NAMES crypto libeay32
150 HINTS ${OPENSSL_ROOT_DIR}/lib)156 HINTS ${OPENSSL_ROOT_DIR}/lib)
151 LIST(REVERSE CMAKE_FIND_LIBRARY_SUFFIXES)157 IF (WITH_SSL_PATH)
158 LIST(REVERSE CMAKE_FIND_LIBRARY_SUFFIXES)
159 ENDIF()
152160
153 # Verify version number. Version information looks like:161 # Verify version number. Version information looks like:
154 # #define OPENSSL_VERSION_NUMBER 0x1000103fL162 # #define OPENSSL_VERSION_NUMBER 0x1000103fL
@@ -163,7 +171,7 @@
163 )171 )
164172
165 IF(OPENSSL_INCLUDE_DIR AND173 IF(OPENSSL_INCLUDE_DIR AND
166 OPENSSL_LIBRARIES AND174 OPENSSL_LIBRARY AND
167 CRYPTO_LIBRARY AND175 CRYPTO_LIBRARY AND
168 OPENSSL_MAJOR_VERSION STREQUAL "1"176 OPENSSL_MAJOR_VERSION STREQUAL "1"
169 )177 )
@@ -172,8 +180,32 @@
172 SET(OPENSSL_FOUND FALSE)180 SET(OPENSSL_FOUND FALSE)
173 ENDIF()181 ENDIF()
174182
183 # If we are invoked with -DWITH_SSL=/path/to/custom/openssl
184 # and we have found static libraries, then link them statically
185 # into our executables and libraries.
186 # Adding IMPORTED_LOCATION allows MERGE_STATIC_LIBS
187 # to get LOCATION and do correct dependency analysis.
188 SET(MY_CRYPTO_LIBRARY "${CRYPTO_LIBRARY}")
189 SET(MY_OPENSSL_LIBRARY "${OPENSSL_LIBRARY}")
190 IF (WITH_SSL_PATH)
191 GET_FILENAME_COMPONENT(CRYPTO_EXT "${CRYPTO_LIBRARY}" EXT)
192 GET_FILENAME_COMPONENT(OPENSSL_EXT "${OPENSSL_LIBRARY}" EXT)
193 IF (CRYPTO_EXT STREQUAL ".a")
194 SET(MY_CRYPTO_LIBRARY imported_crypto)
195 ADD_LIBRARY(imported_crypto STATIC IMPORTED)
196 SET_TARGET_PROPERTIES(imported_crypto
197 PROPERTIES IMPORTED_LOCATION "${CRYPTO_LIBRARY}")
198 ENDIF()
199 IF (OPENSSL_EXT STREQUAL ".a")
200 SET(MY_OPENSSL_LIBRARY imported_openssl)
201 ADD_LIBRARY(imported_openssl STATIC IMPORTED)
202 SET_TARGET_PROPERTIES(imported_openssl
203 PROPERTIES IMPORTED_LOCATION "${OPENSSL_LIBRARY}")
204 ENDIF()
205 ENDIF()
206
175 MESSAGE(STATUS "OPENSSL_INCLUDE_DIR = ${OPENSSL_INCLUDE_DIR}")207 MESSAGE(STATUS "OPENSSL_INCLUDE_DIR = ${OPENSSL_INCLUDE_DIR}")
176 MESSAGE(STATUS "OPENSSL_LIBRARIES = ${OPENSSL_LIBRARIES}")208 MESSAGE(STATUS "OPENSSL_LIBRARY = ${OPENSSL_LIBRARY}")
177 MESSAGE(STATUS "CRYPTO_LIBRARY = ${CRYPTO_LIBRARY}")209 MESSAGE(STATUS "CRYPTO_LIBRARY = ${CRYPTO_LIBRARY}")
178 MESSAGE(STATUS "OPENSSL_MAJOR_VERSION = ${OPENSSL_MAJOR_VERSION}")210 MESSAGE(STATUS "OPENSSL_MAJOR_VERSION = ${OPENSSL_MAJOR_VERSION}")
179211
@@ -183,7 +215,7 @@
183 HAVE_SHA512_DIGEST_LENGTH)215 HAVE_SHA512_DIGEST_LENGTH)
184 IF(OPENSSL_FOUND AND HAVE_SHA512_DIGEST_LENGTH)216 IF(OPENSSL_FOUND AND HAVE_SHA512_DIGEST_LENGTH)
185 SET(SSL_SOURCES "")217 SET(SSL_SOURCES "")
186 SET(SSL_LIBRARIES ${OPENSSL_LIBRARIES} ${CRYPTO_LIBRARY})218 SET(SSL_LIBRARIES ${MY_OPENSSL_LIBRARY} ${MY_CRYPTO_LIBRARY})
187 IF(CMAKE_SYSTEM_NAME MATCHES "SunOS")219 IF(CMAKE_SYSTEM_NAME MATCHES "SunOS")
188 SET(SSL_LIBRARIES ${SSL_LIBRARIES} ${LIBSOCKET})220 SET(SSL_LIBRARIES ${SSL_LIBRARIES} ${LIBSOCKET})
189 ENDIF()221 ENDIF()
@@ -216,7 +248,7 @@
216MACRO (COPY_OPENSSL_DLLS target_name)248MACRO (COPY_OPENSSL_DLLS target_name)
217 IF (WIN32 AND WITH_SSL_PATH)249 IF (WIN32 AND WITH_SSL_PATH)
218 GET_FILENAME_COMPONENT(CRYPTO_NAME "${CRYPTO_LIBRARY}" NAME_WE)250 GET_FILENAME_COMPONENT(CRYPTO_NAME "${CRYPTO_LIBRARY}" NAME_WE)
219 GET_FILENAME_COMPONENT(OPENSSL_NAME "${OPENSSL_LIBRARIES}" NAME_WE)251 GET_FILENAME_COMPONENT(OPENSSL_NAME "${OPENSSL_LIBRARY}" NAME_WE)
220 FILE(GLOB HAVE_CRYPTO_DLL "${WITH_SSL_PATH}/bin/${CRYPTO_NAME}.dll")252 FILE(GLOB HAVE_CRYPTO_DLL "${WITH_SSL_PATH}/bin/${CRYPTO_NAME}.dll")
221 FILE(GLOB HAVE_OPENSSL_DLL "${WITH_SSL_PATH}/bin/${OPENSSL_NAME}.dll")253 FILE(GLOB HAVE_OPENSSL_DLL "${WITH_SSL_PATH}/bin/${OPENSSL_NAME}.dll")
222 IF (HAVE_CRYPTO_DLL AND HAVE_OPENSSL_DLL)254 IF (HAVE_CRYPTO_DLL AND HAVE_OPENSSL_DLL)
223255
=== modified file 'Percona-Server/cmake/zlib.cmake'
--- Percona-Server/cmake/zlib.cmake 2011-06-30 15:46:53 +0000
+++ Percona-Server/cmake/zlib.cmake 2013-05-12 06:41:27 +0000
@@ -15,7 +15,7 @@
15# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 15# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
1616
17MACRO (MYSQL_USE_BUNDLED_ZLIB)17MACRO (MYSQL_USE_BUNDLED_ZLIB)
18 SET(ZLIB_LIBRARY zlib)18 SET(ZLIB_LIBRARY zlib CACHE INTERNAL "Bundled zlib library")
19 SET(ZLIB_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/zlib)19 SET(ZLIB_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/zlib)
20 SET(ZLIB_FOUND TRUE)20 SET(ZLIB_FOUND TRUE)
21 SET(WITH_ZLIB "bundled" CACHE STRING "Use bundled zlib")21 SET(WITH_ZLIB "bundled" CACHE STRING "Use bundled zlib")
@@ -57,13 +57,17 @@
57 INCLUDE(CheckFunctionExists)57 INCLUDE(CheckFunctionExists)
58 SET(CMAKE_REQUIRED_LIBRARIES z)58 SET(CMAKE_REQUIRED_LIBRARIES z)
59 CHECK_FUNCTION_EXISTS(crc32 HAVE_CRC32)59 CHECK_FUNCTION_EXISTS(crc32 HAVE_CRC32)
60 CHECK_FUNCTION_EXISTS(compressBound HAVE_COMPRESSBOUND)
61 CHECK_FUNCTION_EXISTS(deflateBound HAVE_DEFLATEBOUND)
60 SET(CMAKE_REQUIRED_LIBRARIES)62 SET(CMAKE_REQUIRED_LIBRARIES)
61 IF(HAVE_CRC32)63 IF(HAVE_CRC32 AND HAVE_COMPRESSBOUND AND HAVE_DEFLATEBOUND)
62 SET(ZLIB_LIBRARY z CACHE INTERNAL "System zlib library")64 SET(ZLIB_LIBRARY ${ZLIB_LIBRARIES} CACHE INTERNAL "System zlib library")
63 SET(WITH_ZLIB "system" CACHE STRING "Which zlib to use (possible values are 'bundled' or 'system')")65 SET(WITH_ZLIB "system" CACHE STRING
66 "Which zlib to use (possible values are 'bundled' or 'system')")
64 SET(ZLIB_SOURCES "")67 SET(ZLIB_SOURCES "")
65 ELSE()68 ELSE()
66 SET(ZLIB_FOUND FALSE CACHE INTERNAL "Zlib found but not usable")69 SET(ZLIB_FOUND FALSE CACHE INTERNAL "Zlib found but not usable")
70 MESSAGE(STATUS "system zlib found but not usable")
67 ENDIF()71 ENDIF()
68 ENDIF()72 ENDIF()
69 IF(NOT ZLIB_FOUND)73 IF(NOT ZLIB_FOUND)
7074
=== modified file 'Percona-Server/cmd-line-utils/libedit/CMakeLists.txt'
--- Percona-Server/cmd-line-utils/libedit/CMakeLists.txt 2011-10-21 12:44:35 +0000
+++ Percona-Server/cmd-line-utils/libedit/CMakeLists.txt 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1# Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.1# Copyright (c) 2006, 2013, Oracle and/or its affiliates. All rights reserved.
2# 2#
3# This program is free software; you can redistribute it and/or modify3# This program is free software; you can redistribute it and/or modify
4# it under the terms of the GNU General Public License as published by4# it under the terms of the GNU General Public License as published by
@@ -186,6 +186,6 @@
186 ${AHDR} 186 ${AHDR}
187 ${LIBEDIT_EXTRA_SOURCES}187 ${LIBEDIT_EXTRA_SOURCES}
188)188)
189ADD_LIBRARY(edit ${LIBEDIT_SOURCES})189ADD_CONVENIENCE_LIBRARY(edit ${LIBEDIT_SOURCES})
190TARGET_LINK_LIBRARIES(edit ${CURSES_LIBRARY})190TARGET_LINK_LIBRARIES(edit ${CURSES_LIBRARY})
191191
192192
=== modified file 'Percona-Server/cmd-line-utils/libedit/np/unvis.c'
--- Percona-Server/cmd-line-utils/libedit/np/unvis.c 2011-10-29 18:08:40 +0000
+++ Percona-Server/cmd-line-utils/libedit/np/unvis.c 2013-05-12 06:41:27 +0000
@@ -87,7 +87,9 @@
87#define S_NUMBER 13 /* collecting number */87#define S_NUMBER 13 /* collecting number */
88#define S_STRING 14 /* collecting string */88#define S_STRING 14 /* collecting string */
8989
90#ifndef isoctal
90#define isoctal(c) (((u_char)(c)) >= '0' && ((u_char)(c)) <= '7')91#define isoctal(c) (((u_char)(c)) >= '0' && ((u_char)(c)) <= '7')
92#endif
91#define xtod(c) (isdigit(c) ? (c - '0') : ((tolower(c) - 'a') + 10))93#define xtod(c) (isdigit(c) ? (c - '0') : ((tolower(c) - 'a') + 10))
92#define XTOD(c) (isdigit(c) ? (c - '0') : ((c - 'A') + 10))94#define XTOD(c) (isdigit(c) ? (c - '0') : ((c - 'A') + 10))
9395
9496
=== modified file 'Percona-Server/cmd-line-utils/libedit/np/vis.c'
--- Percona-Server/cmd-line-utils/libedit/np/vis.c 2011-10-28 14:40:46 +0000
+++ Percona-Server/cmd-line-utils/libedit/np/vis.c 2013-05-12 06:41:27 +0000
@@ -91,7 +91,9 @@
91#undef BELL91#undef BELL
92#define BELL '\a'92#define BELL '\a'
9393
94#ifndef isoctal
94#define isoctal(c) (((u_char)(c)) >= '0' && ((u_char)(c)) <= '7')95#define isoctal(c) (((u_char)(c)) >= '0' && ((u_char)(c)) <= '7')
96#endif
95#define iswhite(c) (c == ' ' || c == '\t' || c == '\n')97#define iswhite(c) (c == ' ' || c == '\t' || c == '\n')
96#define issafe(c) (c == '\b' || c == BELL || c == '\r')98#define issafe(c) (c == '\b' || c == BELL || c == '\r')
97#define xtoa(c) "0123456789abcdef"[c]99#define xtoa(c) "0123456789abcdef"[c]
98100
=== modified file 'Percona-Server/config.h.cmake'
--- Percona-Server/config.h.cmake 2013-05-12 06:39:35 +0000
+++ Percona-Server/config.h.cmake 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1/* Copyright (c) 2009, 2011, 2012 Oracle and/or its affiliates. All rights reserved.1/* Copyright (c) 2009, 2013, Oracle and/or its affiliates. All rights reserved.
2 2
3 This program is free software; you can redistribute it and/or modify3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by4 it under the terms of the GNU General Public License as published by
@@ -495,7 +495,7 @@
495#define MACHINE_TYPE "@MYSQL_MACHINE_TYPE@"495#define MACHINE_TYPE "@MYSQL_MACHINE_TYPE@"
496#cmakedefine HAVE_DTRACE 1496#cmakedefine HAVE_DTRACE 1
497497
498#cmakedefine SIGNAL_WITH_VIO_CLOSE 1498#cmakedefine SIGNAL_WITH_VIO_SHUTDOWN 1
499499
500/* Windows stuff, mostly functions, that have Posix analogs but named differently */500/* Windows stuff, mostly functions, that have Posix analogs but named differently */
501#cmakedefine S_IROTH @S_IROTH@501#cmakedefine S_IROTH @S_IROTH@
502502
=== modified file 'Percona-Server/configure.cmake'
--- Percona-Server/configure.cmake 2013-03-05 12:46:43 +0000
+++ Percona-Server/configure.cmake 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1# Copyright (c) 2009, 2011, Oracle and/or its affiliates. All rights reserved.1# Copyright (c) 2009, 2013, Oracle and/or its affiliates. All rights reserved.
2# 2#
3# This program is free software; you can redistribute it and/or modify3# This program is free software; you can redistribute it and/or modify
4# it under the terms of the GNU General Public License as published by4# it under the terms of the GNU General Public License as published by
@@ -55,7 +55,7 @@
55# As a consequence of ALARMs no longer being used, thread55# As a consequence of ALARMs no longer being used, thread
56# notification for KILL must close the socket to wake up56# notification for KILL must close the socket to wake up
57# other threads.57# other threads.
58SET(SIGNAL_WITH_VIO_CLOSE 1)58SET(SIGNAL_WITH_VIO_SHUTDOWN 1)
5959
60# Always enable -Wall for gnu C/C++60# Always enable -Wall for gnu C/C++
61IF(CMAKE_COMPILER_IS_GNUCXX)61IF(CMAKE_COMPILER_IS_GNUCXX)
@@ -65,6 +65,15 @@
65 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall")65 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall")
66ENDIF()66ENDIF()
6767
68IF(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
69 SET(CMAKE_CXX_FLAGS
70 "${CMAKE_CXX_FLAGS} -Wall -Wno-null-conversion -Wno-unused-private-field")
71ENDIF()
72IF(CMAKE_C_COMPILER_ID MATCHES "Clang")
73 SET(CMAKE_C_FLAGS
74 "${CMAKE_C_FLAGS} -Wall -Wno-null-conversion -Wno-unused-private-field")
75ENDIF()
76
68# The default C++ library for SunPro is really old, and not standards compliant.77# The default C++ library for SunPro is really old, and not standards compliant.
69# http://developers.sun.com/solaris/articles/cmp_stlport_libCstd.html78# http://developers.sun.com/solaris/articles/cmp_stlport_libCstd.html
70# Use stlport rather than Rogue Wave.79# Use stlport rather than Rogue Wave.
@@ -217,6 +226,11 @@
217 IF(HAVE_LIBWRAP)226 IF(HAVE_LIBWRAP)
218 SET(MYSYS_LIBWRAP_SOURCE ${CMAKE_SOURCE_DIR}/mysys/my_libwrap.c)227 SET(MYSYS_LIBWRAP_SOURCE ${CMAKE_SOURCE_DIR}/mysys/my_libwrap.c)
219 SET(LIBWRAP "wrap")228 SET(LIBWRAP "wrap")
229 ELSE()
230 MESSAGE(FATAL_ERROR
231 "WITH_LIBWRAP is defined, but can not find a working libwrap. "
232 "Make sure both the header files (tcpd.h) "
233 "and the library (libwrap) are installed.")
220 ENDIF()234 ENDIF()
221 ENDIF()235 ENDIF()
222ENDIF()236ENDIF()
223237
=== modified file 'Percona-Server/extra/charset2html.c'
--- Percona-Server/extra/charset2html.c 2010-10-27 11:32:32 +0000
+++ Percona-Server/extra/charset2html.c 2013-05-12 06:41:27 +0000
@@ -1,4 +1,5 @@
1/* Copyright (C) 2000 MySQL AB1/* Copyright (c) 2000, 2002-2004, 2007, 2008 MySQL AB
2 Use is subject to license terms
23
3 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
56
=== modified file 'Percona-Server/extra/comp_err.c'
--- Percona-Server/extra/comp_err.c 2013-05-12 06:39:35 +0000
+++ Percona-Server/extra/comp_err.c 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/perror.c'
--- Percona-Server/extra/perror.c 2012-08-07 13:56:51 +0000
+++ Percona-Server/extra/perror.c 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
@@ -136,7 +136,7 @@
136 /*136 /*
137 If you got compilation error here about compile_time_assert array, check137 If you got compilation error here about compile_time_assert array, check
138 that every HA_ERR_xxx constant has a corresponding error message in138 that every HA_ERR_xxx constant has a corresponding error message in
139 handler_error_messages[] list (check mysys/ma_handler_errors.h and139 handler_error_messages[] list (check mysys/my_handler_errors.h and
140 include/my_base.h).140 include/my_base.h).
141 */141 */
142 compile_time_assert(HA_ERR_FIRST + array_elements(handler_error_messages) ==142 compile_time_assert(HA_ERR_FIRST + array_elements(handler_error_messages) ==
143143
=== modified file 'Percona-Server/extra/yassl/CMakeLists.txt'
--- Percona-Server/extra/yassl/CMakeLists.txt 2012-03-21 15:59:46 +0000
+++ Percona-Server/extra/yassl/CMakeLists.txt 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1# Copyright (c) 2006, 2011, Oracle and/or its affiliates. All rights reserved.1# Copyright (c) 2006, 2012, Oracle and/or its affiliates. All rights reserved.
2# 2#
3# This program is free software; you can redistribute it and/or modify3# This program is free software; you can redistribute it and/or modify
4# it under the terms of the GNU General Public License as published by4# it under the terms of the GNU General Public License as published by
55
=== modified file 'Percona-Server/extra/yassl/examples/client/client.cpp'
--- Percona-Server/extra/yassl/examples/client/client.cpp 2012-08-22 01:40:20 +0000
+++ Percona-Server/extra/yassl/examples/client/client.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2006 MySQL AB2 Copyright (c) 2006, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/examples/echoclient/echoclient.cpp'
--- Percona-Server/extra/yassl/examples/echoclient/echoclient.cpp 2012-08-22 01:40:20 +0000
+++ Percona-Server/extra/yassl/examples/echoclient/echoclient.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2006 MySQL AB2 Copyright (c) 2006, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/examples/echoserver/echoserver.cpp'
--- Percona-Server/extra/yassl/examples/echoserver/echoserver.cpp 2012-08-22 01:40:20 +0000
+++ Percona-Server/extra/yassl/examples/echoserver/echoserver.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2006 MySQL AB2 Copyright (c) 2006, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/examples/server/server.cpp'
--- Percona-Server/extra/yassl/examples/server/server.cpp 2012-08-22 01:40:20 +0000
+++ Percona-Server/extra/yassl/examples/server/server.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2006 MySQL AB2 Copyright (c) 2006, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/include/buffer.hpp'
--- Percona-Server/extra/yassl/include/buffer.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/include/buffer.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/include/cert_wrapper.hpp'
--- Percona-Server/extra/yassl/include/cert_wrapper.hpp 2012-08-22 01:40:20 +0000
+++ Percona-Server/extra/yassl/include/cert_wrapper.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/include/crypto_wrapper.hpp'
--- Percona-Server/extra/yassl/include/crypto_wrapper.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/include/crypto_wrapper.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/include/factory.hpp'
--- Percona-Server/extra/yassl/include/factory.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/include/factory.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/include/handshake.hpp'
--- Percona-Server/extra/yassl/include/handshake.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/include/handshake.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/include/lock.hpp'
--- Percona-Server/extra/yassl/include/lock.hpp 2013-02-12 07:47:19 +0000
+++ Percona-Server/extra/yassl/include/lock.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/include/log.hpp'
--- Percona-Server/extra/yassl/include/log.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/include/log.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/include/openssl/prefix_ssl.h'
--- Percona-Server/extra/yassl/include/openssl/prefix_ssl.h 2012-03-21 15:59:46 +0000
+++ Percona-Server/extra/yassl/include/openssl/prefix_ssl.h 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2006, 2011, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2006, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/include/openssl/ssl.h'
--- Percona-Server/extra/yassl/include/openssl/ssl.h 2013-02-12 07:47:19 +0000
+++ Percona-Server/extra/yassl/include/openssl/ssl.h 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/include/socket_wrapper.hpp'
--- Percona-Server/extra/yassl/include/socket_wrapper.hpp 2012-08-22 01:40:20 +0000
+++ Percona-Server/extra/yassl/include/socket_wrapper.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/include/timer.hpp'
--- Percona-Server/extra/yassl/include/timer.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/include/timer.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/include/yassl.hpp'
--- Percona-Server/extra/yassl/include/yassl.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/include/yassl.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/include/yassl_error.hpp'
--- Percona-Server/extra/yassl/include/yassl_error.hpp 2013-02-12 07:47:19 +0000
+++ Percona-Server/extra/yassl/include/yassl_error.hpp 2013-05-12 06:41:27 +0000
@@ -1,6 +1,5 @@
1/*1/*
2 Copyright (c) 2005-2007 MySQL AB, 2010 Sun Microsystems, Inc.2 Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
3 Use is subject to license terms.
43
5 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
@@ -53,7 +52,8 @@
53 badVersion_error = 117,52 badVersion_error = 117,
54 compress_error = 118,53 compress_error = 118,
55 decompress_error = 119,54 decompress_error = 119,
56 pms_version_error = 12055 pms_version_error = 120,
56 sanityCipher_error = 121
5757
58 // !!!! add error message to .cpp !!!!58 // !!!! add error message to .cpp !!!!
5959
6060
=== modified file 'Percona-Server/extra/yassl/include/yassl_imp.hpp'
--- Percona-Server/extra/yassl/include/yassl_imp.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/include/yassl_imp.hpp 2013-05-12 06:41:27 +0000
@@ -1,6 +1,5 @@
1/*1/*
2 Copyright (c) 2005-2007 MySQL AB, 2008 Sun Microsystems, Inc.2 Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
3 Use is subject to license terms.
43
5 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
76
=== modified file 'Percona-Server/extra/yassl/include/yassl_int.hpp'
--- Percona-Server/extra/yassl/include/yassl_int.hpp 2013-01-18 04:53:12 +0000
+++ Percona-Server/extra/yassl/include/yassl_int.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/include/yassl_types.hpp'
--- Percona-Server/extra/yassl/include/yassl_types.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/include/yassl_types.hpp 2013-05-12 06:41:27 +0000
@@ -1,6 +1,5 @@
1/*1/*
2 Copyright (c) 2005-2007 MySQL AB, 2008 Sun Microsystems, Inc.2 Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
3 Use is subject to license terms.
43
5 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
@@ -220,7 +219,11 @@
220const int MAX_RECORD_SIZE = 16384; // 2^14, max size by standard219const int MAX_RECORD_SIZE = 16384; // 2^14, max size by standard
221const int COMPRESS_EXTRA = 1024; // extra compression possible addition220const int COMPRESS_EXTRA = 1024; // extra compression possible addition
222const int SESSION_FLUSH_COUNT = 256; // when to flush session cache221const int SESSION_FLUSH_COUNT = 256; // when to flush session cache
223222const int MAX_PAD_SIZE = 256; // max TLS padding size
223const int COMPRESS_CONSTANT = 13; // compression calculation constant
224const int COMPRESS_UPPER = 55; // compression calculation numerator
225const int COMPRESS_LOWER = 64; // compression calculation denominator
226const int COMPRESS_DUMMY_SIZE = 64; // compression dummy round size
224227
225typedef uint8 Cipher; // first byte is always 0x00 for SSLv3 & TLS228typedef uint8 Cipher; // first byte is always 0x00 for SSLv3 & TLS
226229
227230
=== modified file 'Percona-Server/extra/yassl/src/buffer.cpp'
--- Percona-Server/extra/yassl/src/buffer.cpp 2013-01-18 04:53:12 +0000
+++ Percona-Server/extra/yassl/src/buffer.cpp 2013-05-12 06:41:27 +0000
@@ -1,6 +1,5 @@
1/*1/*
2 Copyright (c) 2005-2007 MySQL AB, 2009 Sun Microsystems, Inc.2 Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
3 Use is subject to license terms.
43
5 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
76
=== modified file 'Percona-Server/extra/yassl/src/cert_wrapper.cpp'
--- Percona-Server/extra/yassl/src/cert_wrapper.cpp 2013-02-12 07:47:19 +0000
+++ Percona-Server/extra/yassl/src/cert_wrapper.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/src/crypto_wrapper.cpp'
--- Percona-Server/extra/yassl/src/crypto_wrapper.cpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/src/crypto_wrapper.cpp 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1/* Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.1/* Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
22
3 This program is free software; you can redistribute it and/or modify3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by4 it under the terms of the GNU General Public License as published by
55
=== modified file 'Percona-Server/extra/yassl/src/handshake.cpp'
--- Percona-Server/extra/yassl/src/handshake.cpp 2013-02-12 07:47:19 +0000
+++ Percona-Server/extra/yassl/src/handshake.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
@@ -220,12 +220,45 @@
220}220}
221221
222222
223// sanity checks on encrypted message size
224static int sanity_check_message(SSL& ssl, uint msgSz)
225{
226 uint minSz = 0;
227
228 if (ssl.getSecurity().get_parms().cipher_type_ == block) {
229 uint blockSz = ssl.getCrypto().get_cipher().get_blockSize();
230 if (msgSz % blockSz)
231 return -1;
232
233 minSz = ssl.getSecurity().get_parms().hash_size_ + 1; // pad byte too
234 if (blockSz > minSz)
235 minSz = blockSz;
236
237 if (ssl.isTLSv1_1())
238 minSz += blockSz; // explicit IV
239 }
240 else { // stream
241 minSz = ssl.getSecurity().get_parms().hash_size_;
242 }
243
244 if (msgSz < minSz)
245 return -1;
246
247 return 0;
248}
249
250
223// decrypt input message in place, store size in case needed later251// decrypt input message in place, store size in case needed later
224void decrypt_message(SSL& ssl, input_buffer& input, uint sz)252void decrypt_message(SSL& ssl, input_buffer& input, uint sz)
225{253{
226 input_buffer plain(sz);254 input_buffer plain(sz);
227 opaque* cipher = input.get_buffer() + input.get_current();255 opaque* cipher = input.get_buffer() + input.get_current();
228256
257 if (sanity_check_message(ssl, sz) != 0) {
258 ssl.SetError(sanityCipher_error);
259 return;
260 }
261
229 ssl.useCrypto().use_cipher().decrypt(plain.get_buffer(), cipher, sz);262 ssl.useCrypto().use_cipher().decrypt(plain.get_buffer(), cipher, sz);
230 memcpy(cipher, plain.get_buffer(), sz);263 memcpy(cipher, plain.get_buffer(), sz);
231 ssl.useSecurity().use_parms().encrypt_size_ = sz;264 ssl.useSecurity().use_parms().encrypt_size_ = sz;
@@ -769,6 +802,8 @@
769 return 0;802 return 0;
770 }803 }
771 decrypt_message(ssl, buffer, hdr.length_);804 decrypt_message(ssl, buffer, hdr.length_);
805 if (ssl.GetError())
806 return 0;
772 }807 }
773 808
774 mySTL::auto_ptr<Message> msg(mf.CreateObject(hdr.type_));809 mySTL::auto_ptr<Message> msg(mf.CreateObject(hdr.type_));
775810
=== modified file 'Percona-Server/extra/yassl/src/lock.cpp'
--- Percona-Server/extra/yassl/src/lock.cpp 2013-02-12 07:47:19 +0000
+++ Percona-Server/extra/yassl/src/lock.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/src/log.cpp'
--- Percona-Server/extra/yassl/src/log.cpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/src/log.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/src/make.bat'
--- Percona-Server/extra/yassl/src/make.bat 2012-03-21 14:27:34 +0000
+++ Percona-Server/extra/yassl/src/make.bat 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1REM Copyright (C) 2006, 2007 MySQL AB1REM Copyright (c) 2006, 2012, Oracle and/or its affiliates. All rights reserved.
2REM 2REM
3REM This program is free software; you can redistribute it and/or modify3REM This program is free software; you can redistribute it and/or modify
4REM it under the terms of the GNU General Public License as published by4REM it under the terms of the GNU General Public License as published by
55
=== modified file 'Percona-Server/extra/yassl/src/socket_wrapper.cpp'
--- Percona-Server/extra/yassl/src/socket_wrapper.cpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/src/socket_wrapper.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/src/ssl.cpp'
--- Percona-Server/extra/yassl/src/ssl.cpp 2013-02-12 07:47:19 +0000
+++ Percona-Server/extra/yassl/src/ssl.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/src/template_instnt.cpp'
--- Percona-Server/extra/yassl/src/template_instnt.cpp 2012-07-24 13:24:00 +0000
+++ Percona-Server/extra/yassl/src/template_instnt.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/src/timer.cpp'
--- Percona-Server/extra/yassl/src/timer.cpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/src/timer.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/src/yassl.cpp'
--- Percona-Server/extra/yassl/src/yassl.cpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/src/yassl.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/src/yassl_error.cpp'
--- Percona-Server/extra/yassl/src/yassl_error.cpp 2013-02-12 07:47:19 +0000
+++ Percona-Server/extra/yassl/src/yassl_error.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
@@ -144,6 +144,10 @@
144 strncpy(buffer, "bad PreMasterSecret version error", max);144 strncpy(buffer, "bad PreMasterSecret version error", max);
145 break;145 break;
146146
147 case sanityCipher_error :
148 strncpy(buffer, "sanity check on cipher text size error", max);
149 break;
150
147 // openssl errors151 // openssl errors
148 case SSL_ERROR_WANT_READ :152 case SSL_ERROR_WANT_READ :
149 strncpy(buffer, "the read operation would block", max);153 strncpy(buffer, "the read operation would block", max);
150154
=== modified file 'Percona-Server/extra/yassl/src/yassl_imp.cpp'
--- Percona-Server/extra/yassl/src/yassl_imp.cpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/src/yassl_imp.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
@@ -972,30 +972,193 @@
972}972}
973973
974974
975// check all bytes for equality
976static int constant_compare(const byte* a, const byte* b, int len)
977{
978 int good = 0;
979 int bad = 0;
980
981 for (int i = 0; i < len; i++) {
982 if (a[i] == b[i])
983 good++;
984 else
985 bad++;
986 }
987
988 if (good == len)
989 return 0;
990 else
991 return 0 - bad; // failure
992}
993
994
995// check bytes for pad value
996static int pad_check(const byte* input, byte pad, int len)
997{
998 int good = 0;
999 int bad = 0;
1000
1001 for (int i = 0; i < len; i++) {
1002 if (input[i] == pad)
1003 good++;
1004 else
1005 bad++;
1006 }
1007
1008 if (good == len)
1009 return 0;
1010 else
1011 return 0 - bad; // failure
1012}
1013
1014
1015// get number of compression rounds
1016static inline int get_rounds(int pLen, int padLen, int t)
1017{
1018 int roundL1 = 1; // round ups
1019 int roundL2 = 1;
1020
1021 int L1 = COMPRESS_CONSTANT + pLen - t;
1022 int L2 = COMPRESS_CONSTANT + pLen - padLen - 1 - t;
1023
1024 L1 -= COMPRESS_UPPER;
1025 L2 -= COMPRESS_UPPER;
1026
1027 if ( (L1 % COMPRESS_LOWER) == 0)
1028 roundL1 = 0;
1029 if ( (L2 % COMPRESS_LOWER) == 0)
1030 roundL2 = 0;
1031
1032 L1 /= COMPRESS_LOWER;
1033 L2 /= COMPRESS_LOWER;
1034
1035 L1 += roundL1;
1036 L2 += roundL2;
1037
1038 return L1 - L2;
1039}
1040
1041
1042// do compression rounds on dummy data
1043static inline void compress_rounds(SSL& ssl, int rounds, const byte* dummy)
1044{
1045 if (rounds) {
1046 Digest* digest = NULL;
1047
1048 MACAlgorithm ma = ssl.getSecurity().get_parms().mac_algorithm_;
1049 if (ma == sha)
1050 digest = NEW_YS SHA;
1051 else if (ma == md5)
1052 digest = NEW_YS MD5;
1053 else if (ma == rmd)
1054 digest = NEW_YS RMD;
1055 else
1056 return;
1057
1058 for (int i = 0; i < rounds; i++)
1059 digest->update(dummy, COMPRESS_LOWER);
1060
1061 ysDelete(digest);
1062 }
1063}
1064
1065
1066// timing resistant pad verification
1067static int timing_verify(SSL& ssl, const byte* input, int padLen, int t,
1068 int pLen)
1069{
1070 byte verify[SHA_LEN];
1071 byte dummy[MAX_PAD_SIZE];
1072
1073 memset(dummy, 1, sizeof(dummy));
1074
1075 if ( (t + padLen + 1) > pLen) {
1076 pad_check(dummy, (byte)padLen, MAX_PAD_SIZE);
1077 if (ssl.isTLS())
1078 TLS_hmac(ssl, verify, input, pLen - t, application_data, 1);
1079 else
1080 hmac(ssl, verify, input, pLen - t, application_data, 1);
1081 constant_compare(verify, input + pLen - t, t);
1082
1083 return -1;
1084 }
1085
1086 if (pad_check(input + pLen - (padLen + 1), (byte)padLen, padLen + 1) != 0) {
1087 pad_check(dummy, (byte)padLen, MAX_PAD_SIZE - padLen - 1);
1088 if (ssl.isTLS())
1089 TLS_hmac(ssl, verify, input, pLen - t, application_data, 1);
1090 else
1091 hmac(ssl, verify, input, pLen - t, application_data, 1);
1092 constant_compare(verify, input + pLen - t, t);
1093
1094 return -1;
1095 }
1096
1097 pad_check(dummy, (byte)padLen, MAX_PAD_SIZE - padLen - 1);
1098 if (ssl.isTLS())
1099 TLS_hmac(ssl, verify, input, pLen - padLen - 1 - t, application_data,1);
1100 else
1101 hmac(ssl, verify, input, pLen - padLen - 1 - t, application_data, 1);
1102
1103 compress_rounds(ssl, get_rounds(pLen, padLen, t), dummy);
1104
1105 if (constant_compare(verify, input + (pLen - padLen - 1 - t), t) != 0)
1106 return -1;
1107
1108 return 0;
1109}
1110
1111
975// Process handler for Data1112// Process handler for Data
976void Data::Process(input_buffer& input, SSL& ssl)1113void Data::Process(input_buffer& input, SSL& ssl)
977{1114{
978 int msgSz = ssl.getSecurity().get_parms().encrypt_size_;1115 int msgSz = ssl.getSecurity().get_parms().encrypt_size_;
979 int pad = 0, padSz = 0;1116 int pad = 0, padSz = 0;
980 int ivExtra = 0;1117 int ivExtra = 0;
1118 int digestSz = ssl.getCrypto().get_digest().get_digestSize();
1119 const byte* rawData = input.get_buffer() + input.get_current();
1120 opaque verify[SHA_LEN];
9811121
982 if (ssl.getSecurity().get_parms().cipher_type_ == block) {1122 if (ssl.getSecurity().get_parms().cipher_type_ == block) {
983 if (ssl.isTLSv1_1()) // IV1123 if (ssl.isTLSv1_1()) // IV
984 ivExtra = ssl.getCrypto().get_cipher().get_blockSize();1124 ivExtra = ssl.getCrypto().get_cipher().get_blockSize();
985 pad = *(input.get_buffer() + input.get_current() + msgSz -ivExtra - 1);1125 pad = *(input.get_buffer() + input.get_current() + msgSz -ivExtra - 1);
986 padSz = 1;1126 padSz = 1;
987 }1127
988 int digestSz = ssl.getCrypto().get_digest().get_digestSize();1128 if (ssl.isTLS()) {
1129 if (timing_verify(ssl, rawData, pad,digestSz, msgSz-ivExtra) != 0) {
1130 ssl.SetError(verify_error);
1131 return;
1132 }
1133 }
1134 else { // SSLv3, some don't do this padding right
1135 int sz3 = msgSz - digestSz - pad - 1;
1136 hmac(ssl, verify, rawData, sz3, application_data, true);
1137 if (constant_compare(verify, rawData + sz3, digestSz) != 0) {
1138 ssl.SetError(verify_error);
1139 return;
1140 }
1141 }
1142 }
1143 else { // stream
1144 int streamSz = msgSz - digestSz;
1145 if (ssl.isTLS())
1146 TLS_hmac(ssl, verify, rawData, streamSz, application_data, true);
1147 else
1148 hmac(ssl, verify, rawData, streamSz, application_data, true);
1149 if (constant_compare(verify, rawData + streamSz, digestSz) != 0) {
1150 ssl.SetError(verify_error);
1151 return;
1152 }
1153 }
1154
989 int dataSz = msgSz - ivExtra - digestSz - pad - padSz;1155 int dataSz = msgSz - ivExtra - digestSz - pad - padSz;
990 opaque verify[SHA_LEN];
9911156
992 if (dataSz < 0) {1157 if (dataSz < 0) {
993 ssl.SetError(bad_input);1158 ssl.SetError(bad_input);
994 return;1159 return;
995 }1160 }
9961161
997 const byte* rawData = input.get_buffer() + input.get_current();
998
999 // read data1162 // read data
1000 if (dataSz) { // could be compressed1163 if (dataSz) { // could be compressed
1001 if (ssl.CompressionOn()) {1164 if (ssl.CompressionOn()) {
@@ -1013,27 +1176,10 @@
1013 input.read(data->get_buffer(), dataSz);1176 input.read(data->get_buffer(), dataSz);
1014 data->add_size(dataSz);1177 data->add_size(dataSz);
1015 }1178 }
10161179 }
1017 if (ssl.isTLS())1180
1018 TLS_hmac(ssl, verify, rawData, dataSz, application_data, true);1181 // advance past mac and fill
1019 else1182 input.set_current(input.get_current() + digestSz + pad + padSz);
1020 hmac(ssl, verify, rawData, dataSz, application_data, true);
1021 }
1022
1023 // read mac and skip fill
1024 opaque mac[SHA_LEN];
1025 input.read(mac, digestSz);
1026 input.set_current(input.get_current() + pad + padSz);
1027
1028 // verify
1029 if (dataSz) {
1030 if (memcmp(mac, verify, digestSz)) {
1031 ssl.SetError(verify_error);
1032 return;
1033 }
1034 }
1035 else
1036 ssl.get_SEQIncrement(true); // even though no data, increment verify
1037}1183}
10381184
10391185
10401186
=== modified file 'Percona-Server/extra/yassl/src/yassl_int.cpp'
--- Percona-Server/extra/yassl/src/yassl_int.cpp 2013-01-18 04:53:12 +0000
+++ Percona-Server/extra/yassl/src/yassl_int.cpp 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1/* Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.1/* Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
22
3 This program is free software; you can redistribute it and/or modify3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by4 it under the terms of the GNU General Public License as published by
55
=== modified file 'Percona-Server/extra/yassl/taocrypt/benchmark/benchmark.cpp'
--- Percona-Server/extra/yassl/taocrypt/benchmark/benchmark.cpp 2012-08-22 01:40:20 +0000
+++ Percona-Server/extra/yassl/taocrypt/benchmark/benchmark.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2006, 2007 MySQL AB2 Copyright (c) 2006, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/benchmark/make.bat'
--- Percona-Server/extra/yassl/taocrypt/benchmark/make.bat 2012-03-21 14:27:34 +0000
+++ Percona-Server/extra/yassl/taocrypt/benchmark/make.bat 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1REM Copyright (C) 2006, 2007 MySQL AB1REM Copyright (c) 2006, 2012, Oracle and/or its affiliates. All rights reserved.
2REM 2REM
3REM This program is free software; you can redistribute it and/or modify3REM This program is free software; you can redistribute it and/or modify
4REM it under the terms of the GNU General Public License as published by4REM it under the terms of the GNU General Public License as published by
55
=== modified file 'Percona-Server/extra/yassl/taocrypt/include/aes.hpp'
--- Percona-Server/extra/yassl/taocrypt/include/aes.hpp 2013-02-12 07:47:19 +0000
+++ Percona-Server/extra/yassl/taocrypt/include/aes.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/include/algebra.hpp'
--- Percona-Server/extra/yassl/taocrypt/include/algebra.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/include/algebra.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/include/arc4.hpp'
--- Percona-Server/extra/yassl/taocrypt/include/arc4.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/include/arc4.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/include/asn.hpp'
--- Percona-Server/extra/yassl/taocrypt/include/asn.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/include/asn.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
@@ -112,7 +112,7 @@
112 MAX_LENGTH_SZ = 5, 112 MAX_LENGTH_SZ = 5,
113 MAX_SEQ_SZ = 5, // enum(seq|con) + length(4)113 MAX_SEQ_SZ = 5, // enum(seq|con) + length(4)
114 MAX_ALGO_SIZE = 9,114 MAX_ALGO_SIZE = 9,
115 MAX_DIGEST_SZ = 25, // SHA + enum(Bit or Octet) + length(4)115 MAX_DIGEST_SZ = 69, // SHA512 + enum(Bit or Octet) + length(4)
116 DSA_SIG_SZ = 40,116 DSA_SIG_SZ = 40,
117 ASN_NAME_MAX = 512 // max total of all included names117 ASN_NAME_MAX = 512 // max total of all included names
118};118};
@@ -258,8 +258,11 @@
258258
259259
260enum ContentType { HUH = 651 };260enum ContentType { HUH = 651 };
261enum SigType { SHAwDSA = 517, MD2wRSA = 646, MD5wRSA = 648, SHAwRSA =649};261enum SigType { SHAwDSA = 517, MD2wRSA = 646, MD5wRSA = 648, SHAwRSA = 649,
262enum HashType { MD2h = 646, MD5h = 649, SHAh = 88 };262 SHA256wRSA = 655, SHA384wRSA = 656, SHA512wRSA = 657,
263 SHA256wDSA = 416 };
264enum HashType { MD2h = 646, MD5h = 649, SHAh = 88, SHA256h = 414,
265 SHA384h = 415, SHA512h = 416 };
263enum KeyType { DSAk = 515, RSAk = 645 }; // sums of algo OID266enum KeyType { DSAk = 515, RSAk = 645 }; // sums of algo OID
264267
265268
266269
=== modified file 'Percona-Server/extra/yassl/taocrypt/include/block.hpp'
--- Percona-Server/extra/yassl/taocrypt/include/block.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/include/block.hpp 2013-05-12 06:41:27 +0000
@@ -1,6 +1,5 @@
1/*1/*
2 Copyright (c) 2005-2007 MySQL AB, 2009 Sun Microsystems, Inc.2 Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
3 Use is subject to license terms.
43
5 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
76
=== modified file 'Percona-Server/extra/yassl/taocrypt/include/blowfish.hpp'
--- Percona-Server/extra/yassl/taocrypt/include/blowfish.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/include/blowfish.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2006, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/include/coding.hpp'
--- Percona-Server/extra/yassl/taocrypt/include/coding.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/include/coding.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/include/des.hpp'
--- Percona-Server/extra/yassl/taocrypt/include/des.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/include/des.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/include/dh.hpp'
--- Percona-Server/extra/yassl/taocrypt/include/dh.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/include/dh.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/include/dsa.hpp'
--- Percona-Server/extra/yassl/taocrypt/include/dsa.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/include/dsa.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/include/error.hpp'
--- Percona-Server/extra/yassl/taocrypt/include/error.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/include/error.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/include/file.hpp'
--- Percona-Server/extra/yassl/taocrypt/include/file.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/include/file.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/include/hash.hpp'
--- Percona-Server/extra/yassl/taocrypt/include/hash.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/include/hash.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/include/hc128.hpp'
--- Percona-Server/extra/yassl/taocrypt/include/hc128.hpp 2012-05-17 12:10:48 +0000
+++ Percona-Server/extra/yassl/taocrypt/include/hc128.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/include/hmac.hpp'
--- Percona-Server/extra/yassl/taocrypt/include/hmac.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/include/hmac.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/include/integer.hpp'
--- Percona-Server/extra/yassl/taocrypt/include/integer.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/include/integer.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/include/kernelc.hpp'
--- Percona-Server/extra/yassl/taocrypt/include/kernelc.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/include/kernelc.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/include/md2.hpp'
--- Percona-Server/extra/yassl/taocrypt/include/md2.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/include/md2.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/include/md4.hpp'
--- Percona-Server/extra/yassl/taocrypt/include/md4.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/include/md4.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/include/md5.hpp'
--- Percona-Server/extra/yassl/taocrypt/include/md5.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/include/md5.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/include/misc.hpp'
--- Percona-Server/extra/yassl/taocrypt/include/misc.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/include/misc.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/include/modarith.hpp'
--- Percona-Server/extra/yassl/taocrypt/include/modarith.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/include/modarith.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/include/modes.hpp'
--- Percona-Server/extra/yassl/taocrypt/include/modes.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/include/modes.hpp 2013-05-12 06:41:27 +0000
@@ -1,6 +1,5 @@
1/*1/*
2 Copyright (c) 2005-2007 MySQL AB, 2009 Sun Microsystems, Inc.2 Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
3 Use is subject to license terms.
43
5 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
76
=== modified file 'Percona-Server/extra/yassl/taocrypt/include/pwdbased.hpp'
--- Percona-Server/extra/yassl/taocrypt/include/pwdbased.hpp 2013-02-12 07:47:19 +0000
+++ Percona-Server/extra/yassl/taocrypt/include/pwdbased.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/include/rabbit.hpp'
--- Percona-Server/extra/yassl/taocrypt/include/rabbit.hpp 2012-05-17 12:10:48 +0000
+++ Percona-Server/extra/yassl/taocrypt/include/rabbit.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/include/random.hpp'
--- Percona-Server/extra/yassl/taocrypt/include/random.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/include/random.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/include/ripemd.hpp'
--- Percona-Server/extra/yassl/taocrypt/include/ripemd.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/include/ripemd.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/include/rsa.hpp'
--- Percona-Server/extra/yassl/taocrypt/include/rsa.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/include/rsa.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/include/runtime.hpp'
--- Percona-Server/extra/yassl/taocrypt/include/runtime.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/include/runtime.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/include/sha.hpp'
--- Percona-Server/extra/yassl/taocrypt/include/sha.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/include/sha.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
@@ -158,6 +158,12 @@
158 void Transform();158 void Transform();
159};159};
160160
161enum { MAX_SHA2_DIGEST_SIZE = 64 }; // SHA512
162
163#else
164
165enum { MAX_SHA2_DIGEST_SIZE = 32 }; // SHA256
166
161#endif // WORD64_AVAILABLE167#endif // WORD64_AVAILABLE
162168
163169
164170
=== modified file 'Percona-Server/extra/yassl/taocrypt/include/twofish.hpp'
--- Percona-Server/extra/yassl/taocrypt/include/twofish.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/include/twofish.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/include/type_traits.hpp'
--- Percona-Server/extra/yassl/taocrypt/include/type_traits.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/include/type_traits.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/include/types.hpp'
--- Percona-Server/extra/yassl/taocrypt/include/types.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/include/types.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/mySTL/algorithm.hpp'
--- Percona-Server/extra/yassl/taocrypt/mySTL/algorithm.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/mySTL/algorithm.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/mySTL/helpers.hpp'
--- Percona-Server/extra/yassl/taocrypt/mySTL/helpers.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/mySTL/helpers.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/mySTL/list.hpp'
--- Percona-Server/extra/yassl/taocrypt/mySTL/list.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/mySTL/list.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/mySTL/memory.hpp'
--- Percona-Server/extra/yassl/taocrypt/mySTL/memory.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/mySTL/memory.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/mySTL/memory_array.hpp'
--- Percona-Server/extra/yassl/taocrypt/mySTL/memory_array.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/mySTL/memory_array.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/mySTL/pair.hpp'
--- Percona-Server/extra/yassl/taocrypt/mySTL/pair.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/mySTL/pair.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/mySTL/stdexcept.hpp'
--- Percona-Server/extra/yassl/taocrypt/mySTL/stdexcept.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/mySTL/stdexcept.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/mySTL/vector.hpp'
--- Percona-Server/extra/yassl/taocrypt/mySTL/vector.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/mySTL/vector.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/src/aes.cpp'
--- Percona-Server/extra/yassl/taocrypt/src/aes.cpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/src/aes.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/src/aestables.cpp'
--- Percona-Server/extra/yassl/taocrypt/src/aestables.cpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/src/aestables.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/src/algebra.cpp'
--- Percona-Server/extra/yassl/taocrypt/src/algebra.cpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/src/algebra.cpp 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1/* Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.1/* Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
22
3 This program is free software; you can redistribute it and/or modify3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by4 it under the terms of the GNU General Public License as published by
55
=== modified file 'Percona-Server/extra/yassl/taocrypt/src/arc4.cpp'
--- Percona-Server/extra/yassl/taocrypt/src/arc4.cpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/src/arc4.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/src/asn.cpp'
--- Percona-Server/extra/yassl/taocrypt/src/asn.cpp 2013-03-05 12:46:43 +0000
+++ Percona-Server/extra/yassl/taocrypt/src/asn.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
@@ -986,12 +986,26 @@
986 hasher.reset(NEW_TC SHA);986 hasher.reset(NEW_TC SHA);
987 ht = SHAh;987 ht = SHAh;
988 }988 }
989 else if (signatureOID_ == SHA256wRSA || signatureOID_ == SHA256wDSA) {
990 hasher.reset(NEW_TC SHA256);
991 ht = SHA256h;
992 }
993#ifdef WORD64_AVAILABLE
994 else if (signatureOID_ == SHA384wRSA) {
995 hasher.reset(NEW_TC SHA384);
996 ht = SHA384h;
997 }
998 else if (signatureOID_ == SHA512wRSA) {
999 hasher.reset(NEW_TC SHA512);
1000 ht = SHA512h;
1001 }
1002#endif
989 else {1003 else {
990 source_.SetError(UNKOWN_SIG_E);1004 source_.SetError(UNKOWN_SIG_E);
991 return false;1005 return false;
992 }1006 }
9931007
994 byte digest[SHA::DIGEST_SIZE]; // largest size1008 byte digest[MAX_SHA2_DIGEST_SIZE]; // largest size
9951009
996 hasher->Update(source_.get_buffer() + certBegin_, sigIndex_ - certBegin_);1010 hasher->Update(source_.get_buffer() + certBegin_, sigIndex_ - certBegin_);
997 hasher->Final(digest);1011 hasher->Final(digest);
@@ -1064,7 +1078,14 @@
1064 0x02, 0x05, 0x05, 0x00 };1078 0x02, 0x05, 0x05, 0x00 };
1065 static const byte md2AlgoID[] = { 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d,1079 static const byte md2AlgoID[] = { 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d,
1066 0x02, 0x02, 0x05, 0x00};1080 0x02, 0x02, 0x05, 0x00};
10671081 static const byte sha256AlgoID[] = { 0x60, 0x86, 0x48, 0x01, 0x65, 0x03,
1082 0x04, 0x02, 0x01, 0x05, 0x00 };
1083#ifdef WORD64_AVAILABLE
1084 static const byte sha384AlgoID[] = { 0x60, 0x86, 0x48, 0x01, 0x65, 0x03,
1085 0x04, 0x02, 0x02, 0x05, 0x00 };
1086 static const byte sha512AlgoID[] = { 0x60, 0x86, 0x48, 0x01, 0x65, 0x03,
1087 0x04, 0x02, 0x03, 0x05, 0x00 };
1088#endif
1068 int algoSz = 0;1089 int algoSz = 0;
1069 const byte* algoName = 0;1090 const byte* algoName = 0;
10701091
@@ -1074,6 +1095,23 @@
1074 algoName = shaAlgoID;1095 algoName = shaAlgoID;
1075 break;1096 break;
10761097
1098 case SHA256h:
1099 algoSz = sizeof(sha256AlgoID);
1100 algoName = sha256AlgoID;
1101 break;
1102
1103#ifdef WORD64_AVAILABLE
1104 case SHA384h:
1105 algoSz = sizeof(sha384AlgoID);
1106 algoName = sha384AlgoID;
1107 break;
1108
1109 case SHA512h:
1110 algoSz = sizeof(sha512AlgoID);
1111 algoName = sha512AlgoID;
1112 break;
1113#endif
1114
1077 case MD2h:1115 case MD2h:
1078 algoSz = sizeof(md2AlgoID);1116 algoSz = sizeof(md2AlgoID);
1079 algoName = md2AlgoID;1117 algoName = md2AlgoID;
10801118
=== modified file 'Percona-Server/extra/yassl/taocrypt/src/bftables.cpp'
--- Percona-Server/extra/yassl/taocrypt/src/bftables.cpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/src/bftables.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/src/blowfish.cpp'
--- Percona-Server/extra/yassl/taocrypt/src/blowfish.cpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/src/blowfish.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2006, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/src/coding.cpp'
--- Percona-Server/extra/yassl/taocrypt/src/coding.cpp 2013-02-12 07:47:19 +0000
+++ Percona-Server/extra/yassl/taocrypt/src/coding.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/src/des.cpp'
--- Percona-Server/extra/yassl/taocrypt/src/des.cpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/src/des.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/src/dh.cpp'
--- Percona-Server/extra/yassl/taocrypt/src/dh.cpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/src/dh.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/src/dsa.cpp'
--- Percona-Server/extra/yassl/taocrypt/src/dsa.cpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/src/dsa.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/src/file.cpp'
--- Percona-Server/extra/yassl/taocrypt/src/file.cpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/src/file.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/src/hash.cpp'
--- Percona-Server/extra/yassl/taocrypt/src/hash.cpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/src/hash.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/src/hc128.cpp'
--- Percona-Server/extra/yassl/taocrypt/src/hc128.cpp 2012-05-17 12:10:48 +0000
+++ Percona-Server/extra/yassl/taocrypt/src/hc128.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/src/integer.cpp'
--- Percona-Server/extra/yassl/taocrypt/src/integer.cpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/src/integer.cpp 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1/* Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.1/* Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
22
3 This program is free software; you can redistribute it and/or modify3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by4 it under the terms of the GNU General Public License as published by
55
=== modified file 'Percona-Server/extra/yassl/taocrypt/src/make.bat'
--- Percona-Server/extra/yassl/taocrypt/src/make.bat 2012-03-21 14:27:34 +0000
+++ Percona-Server/extra/yassl/taocrypt/src/make.bat 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1REM Copyright (C) 2006, 2007 MySQL AB1REM Copyright (c) 2006, 2012, Oracle and/or its affiliates. All rights reserved.
2REM 2REM
3REM This program is free software; you can redistribute it and/or modify3REM This program is free software; you can redistribute it and/or modify
4REM it under the terms of the GNU General Public License as published by4REM it under the terms of the GNU General Public License as published by
55
=== modified file 'Percona-Server/extra/yassl/taocrypt/src/md2.cpp'
--- Percona-Server/extra/yassl/taocrypt/src/md2.cpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/src/md2.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/src/md4.cpp'
--- Percona-Server/extra/yassl/taocrypt/src/md4.cpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/src/md4.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/src/md5.cpp'
--- Percona-Server/extra/yassl/taocrypt/src/md5.cpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/src/md5.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/src/misc.cpp'
--- Percona-Server/extra/yassl/taocrypt/src/misc.cpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/src/misc.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/src/rabbit.cpp'
--- Percona-Server/extra/yassl/taocrypt/src/rabbit.cpp 2012-05-17 12:10:48 +0000
+++ Percona-Server/extra/yassl/taocrypt/src/rabbit.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/src/random.cpp'
--- Percona-Server/extra/yassl/taocrypt/src/random.cpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/src/random.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/src/ripemd.cpp'
--- Percona-Server/extra/yassl/taocrypt/src/ripemd.cpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/src/ripemd.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/src/rsa.cpp'
--- Percona-Server/extra/yassl/taocrypt/src/rsa.cpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/src/rsa.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/src/sha.cpp'
--- Percona-Server/extra/yassl/taocrypt/src/sha.cpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/src/sha.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/src/template_instnt.cpp'
--- Percona-Server/extra/yassl/taocrypt/src/template_instnt.cpp 2012-05-17 12:10:48 +0000
+++ Percona-Server/extra/yassl/taocrypt/src/template_instnt.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/src/tftables.cpp'
--- Percona-Server/extra/yassl/taocrypt/src/tftables.cpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/src/tftables.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2000-2007 MySQL AB2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/src/twofish.cpp'
--- Percona-Server/extra/yassl/taocrypt/src/twofish.cpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/taocrypt/src/twofish.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2006, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/test/make.bat'
--- Percona-Server/extra/yassl/taocrypt/test/make.bat 2012-03-21 14:27:34 +0000
+++ Percona-Server/extra/yassl/taocrypt/test/make.bat 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1REM Copyright (C) 2006, 2007 MySQL AB1REM Copyright (c) 2006, 2012, Oracle and/or its affiliates. All rights reserved.
2REM 2REM
3REM This program is free software; you can redistribute it and/or modify3REM This program is free software; you can redistribute it and/or modify
4REM it under the terms of the GNU General Public License as published by4REM it under the terms of the GNU General Public License as published by
55
=== modified file 'Percona-Server/extra/yassl/taocrypt/test/memory.cpp'
--- Percona-Server/extra/yassl/taocrypt/test/memory.cpp 2013-02-12 07:47:19 +0000
+++ Percona-Server/extra/yassl/taocrypt/test/memory.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2006, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/taocrypt/test/test.cpp'
--- Percona-Server/extra/yassl/taocrypt/test/test.cpp 2012-08-22 01:40:20 +0000
+++ Percona-Server/extra/yassl/taocrypt/test/test.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2006, 2007 MySQL AB2 Copyright (c) 2006, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/testsuite/make.bat'
--- Percona-Server/extra/yassl/testsuite/make.bat 2012-03-21 14:27:34 +0000
+++ Percona-Server/extra/yassl/testsuite/make.bat 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1REM Copyright (C) 2006, 2007 MySQL AB1REM Copyright (c) 2006, 2012, Oracle and/or its affiliates. All rights reserved.
2REM 2REM
3REM This program is free software; you can redistribute it and/or modify3REM This program is free software; you can redistribute it and/or modify
4REM it under the terms of the GNU General Public License as published by4REM it under the terms of the GNU General Public License as published by
55
=== modified file 'Percona-Server/extra/yassl/testsuite/test.hpp'
--- Percona-Server/extra/yassl/testsuite/test.hpp 2012-10-16 06:21:51 +0000
+++ Percona-Server/extra/yassl/testsuite/test.hpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2006, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/extra/yassl/testsuite/testsuite.cpp'
--- Percona-Server/extra/yassl/testsuite/testsuite.cpp 2012-08-22 01:40:20 +0000
+++ Percona-Server/extra/yassl/testsuite/testsuite.cpp 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (C) 2006, 2007 MySQL AB2 Copyright (c) 2006, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/include/errmsg.h'
--- Percona-Server/include/errmsg.h 2013-04-15 07:19:08 +0000
+++ Percona-Server/include/errmsg.h 2013-05-12 06:41:27 +0000
@@ -1,7 +1,7 @@
1#ifndef ERRMSG_INCLUDED1#ifndef ERRMSG_INCLUDED
2#define ERRMSG_INCLUDED2#define ERRMSG_INCLUDED
33
4/* Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.4/* Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
55
6 This program is free software; you can redistribute it and/or modify6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by7 it under the terms of the GNU General Public License as published by
88
=== modified file 'Percona-Server/include/ft_global.h'
--- Percona-Server/include/ft_global.h 2012-08-22 01:40:20 +0000
+++ Percona-Server/include/ft_global.h 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1/* Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.1/* Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
22
3 This program is free software; you can redistribute it and/or modify3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by4 it under the terms of the GNU General Public License as published by
55
=== modified file 'Percona-Server/include/m_ctype.h'
--- Percona-Server/include/m_ctype.h 2013-01-18 04:53:12 +0000
+++ Percona-Server/include/m_ctype.h 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1/* Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.1/* Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
22
3 This program is free software; you can redistribute it and/or modify3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by4 it under the terms of the GNU General Public License as published by
55
=== modified file 'Percona-Server/include/m_string.h'
--- Percona-Server/include/m_string.h 2013-05-12 06:39:35 +0000
+++ Percona-Server/include/m_string.h 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.2 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/include/my_atomic.h'
--- Percona-Server/include/my_atomic.h 2012-12-07 12:43:40 +0000
+++ Percona-Server/include/my_atomic.h 2013-05-12 06:41:27 +0000
@@ -1,7 +1,7 @@
1#ifndef MY_ATOMIC_INCLUDED1#ifndef MY_ATOMIC_INCLUDED
2#define MY_ATOMIC_INCLUDED2#define MY_ATOMIC_INCLUDED
33
4/* Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.4/* Copyright (c) 2006, 2012, Oracle and/or its affiliates. All rights reserved.
55
6 This program is free software; you can redistribute it and/or modify6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by7 it under the terms of the GNU General Public License as published by
88
=== modified file 'Percona-Server/include/my_base.h'
--- Percona-Server/include/my_base.h 2013-01-18 04:53:12 +0000
+++ Percona-Server/include/my_base.h 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1/* Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.1/* Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
22
3 This program is free software; you can redistribute it and/or modify3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by4 it under the terms of the GNU General Public License as published by
@@ -478,7 +478,8 @@
478#define HA_ERR_TABLE_IN_FK_CHECK 183 /* Table being used in foreign key check */478#define HA_ERR_TABLE_IN_FK_CHECK 183 /* Table being used in foreign key check */
479#define HA_ERR_TABLESPACE_EXISTS 184 /* The tablespace existed in storage engine */479#define HA_ERR_TABLESPACE_EXISTS 184 /* The tablespace existed in storage engine */
480#define HA_ERR_TOO_MANY_FIELDS 185 /* Table has too many columns */480#define HA_ERR_TOO_MANY_FIELDS 185 /* Table has too many columns */
481#define HA_ERR_LAST 185 /* Copy of last error nr */481#define HA_ERR_ROW_IN_WRONG_PARTITION 186 /* Row in wrong partition */
482#define HA_ERR_LAST 186 /* Copy of last error nr */
482483
483/* Number of different errors */484/* Number of different errors */
484#define HA_ERR_ERRORS (HA_ERR_LAST - HA_ERR_FIRST + 1)485#define HA_ERR_ERRORS (HA_ERR_LAST - HA_ERR_FIRST + 1)
485486
=== modified file 'Percona-Server/include/my_dbug.h'
--- Percona-Server/include/my_dbug.h 2012-09-26 13:52:56 +0000
+++ Percona-Server/include/my_dbug.h 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1/* Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved. 1/* Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
22
3 This program is free software; you can redistribute it and/or modify3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by4 it under the terms of the GNU General Public License as published by
55
=== modified file 'Percona-Server/include/my_pthread.h'
--- Percona-Server/include/my_pthread.h 2013-01-18 04:53:12 +0000
+++ Percona-Server/include/my_pthread.h 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1/* Copyright (c) 2000, 2011, 2012 Oracle and/or its affiliates. All rights reserved.1/* Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
22
3 This program is free software; you can redistribute it and/or modify3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by4 it under the terms of the GNU General Public License as published by
55
=== modified file 'Percona-Server/include/my_sys.h'
--- Percona-Server/include/my_sys.h 2013-05-12 06:39:35 +0000
+++ Percona-Server/include/my_sys.h 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1/* Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.1/* Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
22
3 This program is free software; you can redistribute it and/or modify3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by4 it under the terms of the GNU General Public License as published by
@@ -247,6 +247,7 @@
247extern void (*error_handler_hook)(uint my_err, const char *str,myf MyFlags);247extern void (*error_handler_hook)(uint my_err, const char *str,myf MyFlags);
248extern void (*fatal_error_handler_hook)(uint my_err, const char *str,248extern void (*fatal_error_handler_hook)(uint my_err, const char *str,
249 myf MyFlags);249 myf MyFlags);
250extern void(*sql_print_warning_hook)(const char *format,...);
250extern uint my_file_limit;251extern uint my_file_limit;
251extern ulong my_thread_stack_size;252extern ulong my_thread_stack_size;
252253
@@ -676,6 +677,7 @@
676 va_list ap);677 va_list ap);
677extern int my_error_register(const char** (*get_errmsgs) (),678extern int my_error_register(const char** (*get_errmsgs) (),
678 int first, int last);679 int first, int last);
680extern void my_printf_warning (const char * format, ...);
679extern const char **my_error_unregister(int first, int last);681extern const char **my_error_unregister(int first, int last);
680extern void my_message(uint my_err, const char *str,myf MyFlags);682extern void my_message(uint my_err, const char *str,myf MyFlags);
681extern void my_message_stderr(uint my_err, const char *str, myf MyFlags);683extern void my_message_stderr(uint my_err, const char *str, myf MyFlags);
682684
=== modified file 'Percona-Server/include/my_time.h'
--- Percona-Server/include/my_time.h 2012-08-22 01:40:20 +0000
+++ Percona-Server/include/my_time.h 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1/* Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved.1/* Copyright (c) 2004, 2012, Oracle and/or its affiliates. All rights reserved.
22
3 This program is free software; you can redistribute it and/or modify3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by4 it under the terms of the GNU General Public License as published by
55
=== modified file 'Percona-Server/include/my_user.h'
--- Percona-Server/include/my_user.h 2010-10-27 11:32:32 +0000
+++ Percona-Server/include/my_user.h 2013-05-12 06:41:27 +0000
@@ -1,4 +1,5 @@
1/* Copyright (C) 2005 MySQL AB1/* Copyright (c) 2005-2007 MySQL AB
2 Use is subject to license terms
23
3 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
56
=== modified file 'Percona-Server/include/my_xml.h'
--- Percona-Server/include/my_xml.h 2012-07-04 09:28:24 +0000
+++ Percona-Server/include/my_xml.h 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1/* Copyright (C) 2000 MySQL AB1/* Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
22
3 This program is free software; you can redistribute it and/or modify3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by4 it under the terms of the GNU General Public License as published by
55
=== modified file 'Percona-Server/include/mysql.h'
--- Percona-Server/include/mysql.h 2013-02-12 07:47:19 +0000
+++ Percona-Server/include/mysql.h 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1/* Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.1/* Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
22
3 This program is free software; you can redistribute it and/or modify3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by4 it under the terms of the GNU General Public License as published by
55
=== modified file 'Percona-Server/include/mysql/plugin.h'
--- Percona-Server/include/mysql/plugin.h 2013-05-12 06:39:35 +0000
+++ Percona-Server/include/mysql/plugin.h 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1/* Copyright (c) 2005, 2011, 2012 Oracle and/or its affiliates. All rights reserved.1/* Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
22
3 This program is free software; you can redistribute it and/or modify3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by4 it under the terms of the GNU General Public License as published by
@@ -551,6 +551,7 @@
551 unsigned int max_query_len);551 unsigned int max_query_len);
552/* Increments the row counter, see THD::row_count */552/* Increments the row counter, see THD::row_count */
553void thd_inc_row_count(MYSQL_THD thd);553void thd_inc_row_count(MYSQL_THD thd);
554int thd_allow_batch(MYSQL_THD thd);
554555
555void increment_thd_innodb_stats(MYSQL_THD thd,556void increment_thd_innodb_stats(MYSQL_THD thd,
556 unsigned long long trx_id,557 unsigned long long trx_id,
557558
=== modified file 'Percona-Server/include/mysql/plugin_audit.h.pp'
--- Percona-Server/include/mysql/plugin_audit.h.pp 2013-05-12 06:39:35 +0000
+++ Percona-Server/include/mysql/plugin_audit.h.pp 2013-05-12 06:41:27 +0000
@@ -233,6 +233,7 @@
233char *thd_security_context(void* thd, char *buffer, unsigned int length,233char *thd_security_context(void* thd, char *buffer, unsigned int length,
234 unsigned int max_query_len);234 unsigned int max_query_len);
235void thd_inc_row_count(void* thd);235void thd_inc_row_count(void* thd);
236int thd_allow_batch(void* thd);
236void increment_thd_innodb_stats(void* thd,237void increment_thd_innodb_stats(void* thd,
237 unsigned long long trx_id,238 unsigned long long trx_id,
238 long io_reads,239 long io_reads,
239240
=== modified file 'Percona-Server/include/mysql/plugin_auth.h.pp'
--- Percona-Server/include/mysql/plugin_auth.h.pp 2013-05-12 06:39:35 +0000
+++ Percona-Server/include/mysql/plugin_auth.h.pp 2013-05-12 06:41:27 +0000
@@ -233,6 +233,7 @@
233char *thd_security_context(void* thd, char *buffer, unsigned int length,233char *thd_security_context(void* thd, char *buffer, unsigned int length,
234 unsigned int max_query_len);234 unsigned int max_query_len);
235void thd_inc_row_count(void* thd);235void thd_inc_row_count(void* thd);
236int thd_allow_batch(void* thd);
236void increment_thd_innodb_stats(void* thd,237void increment_thd_innodb_stats(void* thd,
237 unsigned long long trx_id,238 unsigned long long trx_id,
238 long io_reads,239 long io_reads,
239240
=== modified file 'Percona-Server/include/mysql/plugin_auth_common.h'
--- Percona-Server/include/mysql/plugin_auth_common.h 2012-02-07 14:35:13 +0000
+++ Percona-Server/include/mysql/plugin_auth_common.h 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1#ifndef MYSQL_PLUGIN_AUTH_COMMON_INCLUDED1#ifndef MYSQL_PLUGIN_AUTH_COMMON_INCLUDED
2/* Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.2/* Copyright (c) 2010, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/include/mysql/plugin_ftparser.h.pp'
--- Percona-Server/include/mysql/plugin_ftparser.h.pp 2013-05-12 06:39:35 +0000
+++ Percona-Server/include/mysql/plugin_ftparser.h.pp 2013-05-12 06:41:27 +0000
@@ -186,6 +186,7 @@
186char *thd_security_context(void* thd, char *buffer, unsigned int length,186char *thd_security_context(void* thd, char *buffer, unsigned int length,
187 unsigned int max_query_len);187 unsigned int max_query_len);
188void thd_inc_row_count(void* thd);188void thd_inc_row_count(void* thd);
189int thd_allow_batch(void* thd);
189void increment_thd_innodb_stats(void* thd,190void increment_thd_innodb_stats(void* thd,
190 unsigned long long trx_id,191 unsigned long long trx_id,
191 long io_reads,192 long io_reads,
192193
=== modified file 'Percona-Server/include/mysql/psi/mysql_file.h'
--- Percona-Server/include/mysql/psi/mysql_file.h 2012-10-16 06:21:51 +0000
+++ Percona-Server/include/mysql/psi/mysql_file.h 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1/* Copyright (c) 2008, 2011, Oracle and/or its affiliates. All rights reserved.1/* Copyright (c) 2008, 2012, Oracle and/or its affiliates. All rights reserved.
22
3 This program is free software; you can redistribute it and/or modify3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by4 it under the terms of the GNU General Public License as published by
55
=== modified file 'Percona-Server/include/mysql/psi/mysql_idle.h'
--- Percona-Server/include/mysql/psi/mysql_idle.h 2012-08-22 01:40:20 +0000
+++ Percona-Server/include/mysql/psi/mysql_idle.h 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1/* Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved. 1/* Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
22
3 This program is free software; you can redistribute it and/or modify3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by4 it under the terms of the GNU General Public License as published by
55
=== modified file 'Percona-Server/include/mysql/psi/mysql_stage.h'
--- Percona-Server/include/mysql/psi/mysql_stage.h 2012-08-22 01:40:20 +0000
+++ Percona-Server/include/mysql/psi/mysql_stage.h 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1/* Copyright (c) 2010, 2011, Oracle and/or its affiliates. All rights reserved. 1/* Copyright (c) 2010, 2012, Oracle and/or its affiliates. All rights reserved.
22
3 This program is free software; you can redistribute it and/or modify3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by4 it under the terms of the GNU General Public License as published by
55
=== modified file 'Percona-Server/include/mysql/psi/psi.h'
--- Percona-Server/include/mysql/psi/psi.h 2013-01-18 04:53:12 +0000
+++ Percona-Server/include/mysql/psi/psi.h 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1/* Copyright (c) 2008, 2012, Oracle and/or its affiliates. All rights reserved.1/* Copyright (c) 2008, 2013, Oracle and/or its affiliates. All rights reserved.
22
3 This program is free software; you can redistribute it and/or modify3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by4 it under the terms of the GNU General Public License as published by
@@ -1372,7 +1372,7 @@
1372 @param info the process into string1372 @param info the process into string
1373 @param info_len the process into string length1373 @param info_len the process into string length
1374*/1374*/
1375typedef void (*set_thread_info_v1_t)(const char* info, int info_len);1375typedef void (*set_thread_info_v1_t)(const char* info, uint info_len);
13761376
1377/**1377/**
1378 Attach a thread instrumentation to the running thread.1378 Attach a thread instrumentation to the running thread.
13791379
=== modified file 'Percona-Server/include/mysql/psi/psi_abi_v1.h.pp'
--- Percona-Server/include/mysql/psi/psi_abi_v1.h.pp 2013-01-18 04:53:12 +0000
+++ Percona-Server/include/mysql/psi/psi_abi_v1.h.pp 2013-05-12 06:41:27 +0000
@@ -357,7 +357,7 @@
357typedef void (*set_thread_command_v1_t)(int command);357typedef void (*set_thread_command_v1_t)(int command);
358typedef void (*set_thread_start_time_v1_t)(time_t start_time);358typedef void (*set_thread_start_time_v1_t)(time_t start_time);
359typedef void (*set_thread_state_v1_t)(const char* state);359typedef void (*set_thread_state_v1_t)(const char* state);
360typedef void (*set_thread_info_v1_t)(const char* info, int info_len);360typedef void (*set_thread_info_v1_t)(const char* info, uint info_len);
361typedef void (*set_thread_v1_t)(struct PSI_thread *thread);361typedef void (*set_thread_v1_t)(struct PSI_thread *thread);
362typedef void (*delete_current_thread_v1_t)(void);362typedef void (*delete_current_thread_v1_t)(void);
363typedef void (*delete_thread_v1_t)(struct PSI_thread *thread);363typedef void (*delete_thread_v1_t)(struct PSI_thread *thread);
364364
=== modified file 'Percona-Server/include/mysql/service_my_snprintf.h'
--- Percona-Server/include/mysql/service_my_snprintf.h 2011-06-30 15:46:53 +0000
+++ Percona-Server/include/mysql/service_my_snprintf.h 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1#ifndef MYSQL_SERVICE_MY_SNPRINTF_INCLUDED1#ifndef MYSQL_SERVICE_MY_SNPRINTF_INCLUDED
2/* Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.2/* Copyright (c) 2009, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
@@ -49,6 +49,7 @@
49 string will be quoted according to MySQL identifier quoting rules.49 string will be quoted according to MySQL identifier quoting rules.
5050
51 Both <width> and <precision> can be specified as numbers or '*'.51 Both <width> and <precision> can be specified as numbers or '*'.
52 If an asterisk is used, an argument of type int is consumed.
5253
53 <length modifier> can be 'l', 'll', or 'z'.54 <length modifier> can be 'l', 'll', or 'z'.
5455
5556
=== modified file 'Percona-Server/include/mysql/services.h'
--- Percona-Server/include/mysql/services.h 2012-08-22 01:40:20 +0000
+++ Percona-Server/include/mysql/services.h 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1#ifndef MYSQL_SERVICES_INCLUDED1#ifndef MYSQL_SERVICES_INCLUDED
2/* Copyright (c) 2009, 2011, Oracle and/or its affiliates. All rights reserved.2/* Copyright (c) 2009, 2012, Oracle and/or its affiliates. All rights reserved.
33
4 This program is free software; you can redistribute it and/or modify4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by5 it under the terms of the GNU General Public License as published by
66
=== modified file 'Percona-Server/include/mysql_version.h.in'
--- Percona-Server/include/mysql_version.h.in 2007-09-13 14:19:46 +0000
+++ Percona-Server/include/mysql_version.h.in 2013-05-12 06:41:27 +0000
@@ -1,4 +1,5 @@
1/* Copyright Abandoned 1996, 1999, 2001 MySQL AB1/* Copyright (c) 1996, 1999-2004, 2007 MySQL AB
2 Use is subject to license terms
2 This file is public domain and comes with NO WARRANTY of any kind */3 This file is public domain and comes with NO WARRANTY of any kind */
34
4/* Version numbers for protocol & mysqld */5/* Version numbers for protocol & mysqld */
56
=== modified file 'Percona-Server/include/password.h'
--- Percona-Server/include/password.h 2012-08-22 01:40:20 +0000
+++ Percona-Server/include/password.h 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1/* Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.1/* Copyright (c) 2006, 2011, Oracle and/or its affiliates. All rights reserved.
22
3 This program is free software; you can redistribute it and/or modify3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by4 it under the terms of the GNU General Public License as published by
55
=== modified file 'Percona-Server/include/service_versions.h'
--- Percona-Server/include/service_versions.h 2012-08-22 01:40:20 +0000
+++ Percona-Server/include/service_versions.h 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1/* Copyright (c) 2009, 2011, Oracle and/or its affiliates. All rights reserved.1/* Copyright (c) 2009, 2012, Oracle and/or its affiliates. All rights reserved.
22
3 This program is free software; you can redistribute it and/or modify3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by4 it under the terms of the GNU General Public License as published by
55
=== modified file 'Percona-Server/include/sha1.h'
--- Percona-Server/include/sha1.h 2012-08-22 01:40:20 +0000
+++ Percona-Server/include/sha1.h 2013-05-12 06:41:27 +0000
@@ -1,8 +1,7 @@
1#ifndef SHA1_INCLUDED1#ifndef SHA1_INCLUDED
2#define SHA1_INCLUDED2#define SHA1_INCLUDED
33
4/* Copyright (c) 2002, 2006 MySQL AB, 2009 Sun Microsystems, Inc.4/* Copyright (c) 2002, 2012, Oracle and/or its affiliates. All rights reserved.
5 Use is subject to license terms.
65
7 This program is free software; you can redistribute it and/or modify6 This program is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by7 it under the terms of the GNU General Public License as published by
98
=== modified file 'Percona-Server/include/sslopt-longopts.h'
--- Percona-Server/include/sslopt-longopts.h 2012-08-16 15:00:09 +0000
+++ Percona-Server/include/sslopt-longopts.h 2013-05-12 06:41:27 +0000
@@ -1,7 +1,7 @@
1#ifndef SSLOPT_LONGOPTS_INCLUDED1#ifndef SSLOPT_LONGOPTS_INCLUDED
2#define SSLOPT_LONGOPTS_INCLUDED2#define SSLOPT_LONGOPTS_INCLUDED
33
4/* Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.4/* Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
55
6 This program is free software; you can redistribute it and/or modify6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by7 it under the terms of the GNU General Public License as published by
88
=== modified file 'Percona-Server/include/violite.h'
--- Percona-Server/include/violite.h 2013-05-12 06:39:35 +0000
+++ Percona-Server/include/violite.h 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1/* Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.1/* Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
22
3 This program is free software; you can redistribute it and/or modify3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by4 it under the terms of the GNU General Public License as published by
@@ -37,8 +37,8 @@
3737
38enum enum_vio_type38enum enum_vio_type
39{39{
40 VIO_CLOSED, VIO_TYPE_TCPIP, VIO_TYPE_SOCKET, VIO_TYPE_NAMEDPIPE,40 VIO_TYPE_TCPIP, VIO_TYPE_SOCKET, VIO_TYPE_NAMEDPIPE, VIO_TYPE_SSL,
41 VIO_TYPE_SSL, VIO_TYPE_SHARED_MEMORY41 VIO_TYPE_SHARED_MEMORY
42};42};
4343
44/**44/**
@@ -71,19 +71,19 @@
71#define HANDLE void *71#define HANDLE void *
72#endif /* __WIN__ */72#endif /* __WIN__ */
7373
74void vio_delete(Vio* vio);74void vio_delete(Vio* vio);
75int vio_close(Vio* vio);75int vio_shutdown(Vio* vio, int how);
76my_bool vio_reset(Vio* vio, enum enum_vio_type type,76my_bool vio_reset(Vio* vio, enum enum_vio_type type,
77 my_socket sd, void *ssl, uint flags);77 my_socket sd, void *ssl, uint flags);
78size_t vio_read(Vio *vio, uchar * buf, size_t size);78size_t vio_read(Vio *vio, uchar * buf, size_t size);
79size_t vio_read_buff(Vio *vio, uchar * buf, size_t size);79size_t vio_read_buff(Vio *vio, uchar * buf, size_t size);
80size_t vio_write(Vio *vio, const uchar * buf, size_t size);80size_t vio_write(Vio *vio, const uchar * buf, size_t size);
81/* setsockopt TCP_NODELAY at IPPROTO_TCP level, when possible */81/* setsockopt TCP_NODELAY at IPPROTO_TCP level, when possible */
82int vio_fastsend(Vio *vio);82int vio_fastsend(Vio *vio);
83/* setsockopt SO_KEEPALIVE at SOL_SOCKET level, when possible */83/* setsockopt SO_KEEPALIVE at SOL_SOCKET level, when possible */
84int vio_keepalive(Vio *vio, my_bool onoff);84int vio_keepalive(Vio *vio, my_bool onoff);
85/* Whenever we should retry the last read/write operation. */85/* Whenever we should retry the last read/write operation. */
86my_bool vio_should_retry(Vio *vio);86my_bool vio_should_retry(Vio *vio);
87/* Check that operation was timed out */87/* Check that operation was timed out */
88my_bool vio_was_timeout(Vio *vio);88my_bool vio_was_timeout(Vio *vio);
89/* Short text description of the socket for those, who are curious.. */89/* Short text description of the socket for those, who are curious.. */
@@ -161,36 +161,36 @@
161161
162struct st_VioSSLFd162struct st_VioSSLFd
163*new_VioSSLConnectorFd(const char *key_file, const char *cert_file,163*new_VioSSLConnectorFd(const char *key_file, const char *cert_file,
164 const char *ca_file, const char *ca_path,164 const char *ca_file, const char *ca_path,
165 const char *cipher, enum enum_ssl_init_error *error,165 const char *cipher, enum enum_ssl_init_error *error,
166 const char *crl_file, const char *crl_path);166 const char *crl_file, const char *crl_path);
167struct st_VioSSLFd167struct st_VioSSLFd
168*new_VioSSLAcceptorFd(const char *key_file, const char *cert_file,168*new_VioSSLAcceptorFd(const char *key_file, const char *cert_file,
169 const char *ca_file,const char *ca_path,169 const char *ca_file,const char *ca_path,
170 const char *cipher, enum enum_ssl_init_error *error,170 const char *cipher, enum enum_ssl_init_error *error,
171 const char *crl_file, const char *crl_path);171 const char *crl_file, const char *crl_path);
172void free_vio_ssl_acceptor_fd(struct st_VioSSLFd *fd);172void free_vio_ssl_acceptor_fd(struct st_VioSSLFd *fd);
173#endif /* ! EMBEDDED_LIBRARY */173#endif /* ! EMBEDDED_LIBRARY */
174#endif /* HAVE_OPENSSL */174#endif /* HAVE_OPENSSL */
175175
176void ssl_start(void);
176void vio_end(void);177void vio_end(void);
177178
178#ifdef __cplusplus179#ifdef __cplusplus
179}180}
180#endif181#endif
181182
182#if !defined(DONT_MAP_VIO)183#if !defined(DONT_MAP_VIO)
183#define vio_delete(vio) (vio)->viodelete(vio)184#define vio_delete(vio) (vio)->viodelete(vio)
184#define vio_errno(vio) (vio)->vioerrno(vio)185#define vio_errno(vio) (vio)->vioerrno(vio)
185#define vio_read(vio, buf, size) ((vio)->read)(vio,buf,size)186#define vio_read(vio, buf, size) ((vio)->read)(vio,buf,size)
186#define vio_write(vio, buf, size) ((vio)->write)(vio, buf, size)187#define vio_write(vio, buf, size) ((vio)->write)(vio, buf, size)
187#define vio_fastsend(vio) (vio)->fastsend(vio)188#define vio_fastsend(vio) (vio)->fastsend(vio)
188#define vio_keepalive(vio, set_keep_alive) (vio)->viokeepalive(vio, set_keep_alive)189#define vio_keepalive(vio, set_keep_alive) (vio)->viokeepalive(vio, set_keep_alive)
189#define vio_should_retry(vio) (vio)->should_retry(vio)190#define vio_should_retry(vio) (vio)->should_retry(vio)
190#define vio_was_timeout(vio) (vio)->was_timeout(vio)191#define vio_was_timeout(vio) (vio)->was_timeout(vio)
191#define vio_close(vio) ((vio)->vioclose)(vio)192#define vio_shutdown(vio,how) ((vio)->vioshutdown)(vio,how)
192#define vio_shutdown(vio,how) ((vio)->shutdown)(vio,how)193#define vio_peer_addr(vio, buf, prt, buflen) (vio)->peer_addr(vio, buf, prt, buflen)
193#define vio_peer_addr(vio, buf, prt, buflen) (vio)->peer_addr(vio, buf, prt, buflen)
194#define vio_io_wait(vio, event, timeout) (vio)->io_wait(vio, event, timeout)194#define vio_io_wait(vio, event, timeout) (vio)->io_wait(vio, event, timeout)
195#define vio_is_connected(vio) (vio)->is_connected(vio)195#define vio_is_connected(vio) (vio)->is_connected(vio)
196#endif /* !defined(DONT_MAP_VIO) */196#endif /* !defined(DONT_MAP_VIO) */
@@ -221,13 +221,14 @@
221/* This structure is for every connection on both sides */221/* This structure is for every connection on both sides */
222struct st_vio222struct st_vio
223{223{
224 MYSQL_SOCKET mysql_socket; /* Instrumented socket */224 MYSQL_SOCKET mysql_socket; /* Instrumented socket */
225 my_bool localhost; /* Are we from localhost? */225 my_bool localhost; /* Are we from localhost? */
226 struct sockaddr_storage local; /* Local internet address */226 struct sockaddr_storage local; /* Local internet address */
227 struct sockaddr_storage remote; /* Remote internet address */227 struct sockaddr_storage remote; /* Remote internet address */
228 int addrLen; /* Length of remote address */228 int addrLen; /* Length of remote address */
229 enum enum_vio_type type; /* Type of connection */229 enum enum_vio_type type; /* Type of connection */
230 char desc[VIO_DESCRIPTION_SIZE]; /* Description string. This230 my_bool inactive; /* Connection inactive (has been shutdown) */
231 char desc[VIO_DESCRIPTION_SIZE]; /* Description string. This
231 member MUST NOT be232 member MUST NOT be
232 used directly, but only233 used directly, but only
233 via function234 via function
@@ -238,7 +239,16 @@
238 char *read_end; /* end of unfetched data */239 char *read_end; /* end of unfetched data */
239 int read_timeout; /* Timeout value (ms) for read ops. */240 int read_timeout; /* Timeout value (ms) for read ops. */
240 int write_timeout; /* Timeout value (ms) for write ops. */241 int write_timeout; /* Timeout value (ms) for write ops. */
241 /* function pointers. They are similar for socket/SSL/whatever */242
243 /*
244 VIO vtable interface to be implemented by VIO's like SSL, Socket,
245 Named Pipe, etc.
246 */
247
248 /*
249 viodelete is responsible for cleaning up the VIO object by freeing
250 internal buffers, closing descriptors, handles.
251 */
242 void (*viodelete)(Vio*);252 void (*viodelete)(Vio*);
243 int (*vioerrno)(Vio*);253 int (*vioerrno)(Vio*);
244 size_t (*read)(Vio*, uchar *, size_t);254 size_t (*read)(Vio*, uchar *, size_t);
@@ -250,9 +260,13 @@
250 void (*in_addr)(Vio*, struct sockaddr_storage*);260 void (*in_addr)(Vio*, struct sockaddr_storage*);
251 my_bool (*should_retry)(Vio*);261 my_bool (*should_retry)(Vio*);
252 my_bool (*was_timeout)(Vio*);262 my_bool (*was_timeout)(Vio*);
253 int (*vioclose)(Vio*);263 /*
264 vioshutdown is resposnible to shutdown/close the channel, so that no
265 further communications can take place, however any related buffers,
266 descriptors, handles can remain valid after a shutdown.
267 */
268 int (*vioshutdown)(Vio*, int);
254 my_bool (*is_connected)(Vio*);269 my_bool (*is_connected)(Vio*);
255 int (*shutdown)(Vio *, int);
256 my_bool (*has_data) (Vio*);270 my_bool (*has_data) (Vio*);
257 int (*io_wait)(Vio*, enum enum_vio_io_event, int);271 int (*io_wait)(Vio*, enum enum_vio_io_event, int);
258 my_bool (*connect)(Vio*, struct sockaddr *, socklen_t, int);272 my_bool (*connect)(Vio*, struct sockaddr *, socklen_t, int);
@@ -262,7 +276,7 @@
262 HANDLE hPipe;276 HANDLE hPipe;
263#endif277#endif
264#ifdef HAVE_OPENSSL278#ifdef HAVE_OPENSSL
265 void *ssl_arg;279 void *ssl_arg;
266#endif280#endif
267#ifdef HAVE_SMEM281#ifdef HAVE_SMEM
268 HANDLE handle_file_map;282 HANDLE handle_file_map;
269283
=== modified file 'Percona-Server/include/welcome_copyright_notice.h'
--- Percona-Server/include/welcome_copyright_notice.h 2012-12-20 11:34:11 +0000
+++ Percona-Server/include/welcome_copyright_notice.h 2013-05-12 06:41:27 +0000
@@ -1,4 +1,4 @@
1/* Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.1/* Copyright (c) 2010, 2012, Oracle and/or its affiliates. All rights reserved.
22
3 This program is free software; you can redistribute it and/or modify3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by4 it under the terms of the GNU General Public License as published by
55
=== modified file 'Percona-Server/libmysql/CMakeLists.txt'
--- Percona-Server/libmysql/CMakeLists.txt 2013-04-15 07:19:08 +0000
+++ Percona-Server/libmysql/CMakeLists.txt 2013-05-12 06:41:27 +0000
@@ -173,7 +173,6 @@
173ENDIF()173ENDIF()
174174
175# Merge several convenience libraries into one big mysqlclient175# Merge several convenience libraries into one big mysqlclient
176# and link them together into shared library.
177MERGE_LIBRARIES(mysqlclient STATIC ${LIBS} COMPONENT Development)176MERGE_LIBRARIES(mysqlclient STATIC ${LIBS} COMPONENT Development)
178177
179# Visual Studio users need debug static library for debug projects178# Visual Studio users need debug static library for debug projects
@@ -197,7 +196,11 @@
197ENDIF()196ENDIF()
198197
199IF(NOT DISABLE_SHARED)198IF(NOT DISABLE_SHARED)
200 MERGE_LIBRARIES(libmysql SHARED ${LIBS} EXPORTS ${CLIENT_API_FUNCTIONS} COMPONENT SharedLibraries)199 # Merge several convenience libraries into one big mysqlclient
200 # and link them together into shared library.
201 MERGE_LIBRARIES(libmysql SHARED ${LIBS}
202 EXPORTS ${CLIENT_API_FUNCTIONS}
203 COMPONENT SharedLibraries)
201 IF(UNIX)204 IF(UNIX)
202 # libtool compatability205 # libtool compatability
203 IF(CMAKE_SYSTEM_NAME MATCHES "FreeBSD" OR APPLE)206 IF(CMAKE_SYSTEM_NAME MATCHES "FreeBSD" OR APPLE)
204207
=== modified file 'Percona-Server/libmysql/libmysql.c'
--- Percona-Server/libmysql/libmysql.c 2013-03-05 12:46:43 +0000
+++ Percona-Server/libmysql/libmysql.c 2013-05-12 06:41:27 +0000
@@ -2119,7 +2119,14 @@
2119 DBUG_RETURN(1);2119 DBUG_RETURN(1);
2120 }2120 }
21212121
2122 net_clear(net, 1); /* Sets net->write_pos */2122 if (net->vio)
2123 net_clear(net, 1); /* Sets net->write_pos */
2124 else
2125 {
2126 set_stmt_errmsg(stmt, net);
2127 DBUG_RETURN(1);
2128 }
2129
2123 /* Reserve place for null-marker bytes */2130 /* Reserve place for null-marker bytes */
2124 null_count= (stmt->param_count+7) /8;2131 null_count= (stmt->param_count+7) /8;
2125 if (my_realloc_str(net, null_count + 1))2132 if (my_realloc_str(net, null_count + 1))
21262133
=== modified file 'Percona-Server/libmysqld/lib_sql.cc'
--- Percona-Server/libmysqld/lib_sql.cc 2013-03-05 12:46:43 +0000
+++ Percona-Server/libmysqld/lib_sql.cc 2013-05-12 06:41:27 +0000
@@ -659,7 +659,7 @@
659 /* Signal successful initialization */659 /* Signal successful initialization */
660 mysql_mutex_lock(&LOCK_server_started);660 mysql_mutex_lock(&LOCK_server_started);
661 mysqld_server_started= 1;661 mysqld_server_started= 1;
662 mysql_cond_signal(&COND_server_started);662 mysql_cond_broadcast(&COND_server_started);
663 mysql_mutex_unlock(&LOCK_server_started);663 mysql_mutex_unlock(&LOCK_server_started);
664664
665#ifdef WITH_NDBCLUSTER_STORAGE_ENGINE665#ifdef WITH_NDBCLUSTER_STORAGE_ENGINE
666666
=== modified file 'Percona-Server/mysql-test/collections/default.daily'
--- Percona-Server/mysql-test/collections/default.daily 2013-02-12 07:47:19 +0000
+++ Percona-Server/mysql-test/collections/default.daily 2013-05-12 06:41:27 +0000
@@ -18,6 +18,9 @@
18# Additional modes for rpl. Multi-Threaded Slave18# Additional modes for rpl. Multi-Threaded Slave
19perl mysql-test-run.pl --timer --debug-server --force --parallel=auto --comment=rpl_MTS-debug --vardir=var-mts-rpl-debug --experimental=collections/default.experimental --mysqld=--slave-parallel-workers=4 --mysqld=--slave-transaction-retries=0 --suite=rpl19perl mysql-test-run.pl --timer --debug-server --force --parallel=auto --comment=rpl_MTS-debug --vardir=var-mts-rpl-debug --experimental=collections/default.experimental --mysqld=--slave-parallel-workers=4 --mysqld=--slave-transaction-retries=0 --suite=rpl
2020
21# Additional GTID coverage (binlog suite with gtid_mode=ON)
22perl mysql-test-run.pl --force --timer --debug-server --parallel=auto --experimental=collections/default.experimental --comment=binlog_gtid-debug --vardir=var-binlog_gtid-debug --suite=binlog --mysqld=--binlog-checksum=CRC32 --mysqld=--enforce-gtid-consistency --mysqld=--log-slave-updates --mysqld=--gtid-mode=on --skip-test-list=collections/disabled-gtid-on.list
23
21# Additional runs for innodb-page-size=4k and 8k24# Additional runs for innodb-page-size=4k and 8k
22perl mysql-test-run.pl --timer --force --debug-server --parallel=auto --comment=n_mix_4k_size --vardir=var-n_mix --mysqld=--binlog-format=mixed --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list --mysqld=--innodb-page-size=4k --skip-test=innodb_ignore_builtin25perl mysql-test-run.pl --timer --force --debug-server --parallel=auto --comment=n_mix_4k_size --vardir=var-n_mix --mysqld=--binlog-format=mixed --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list --mysqld=--innodb-page-size=4k --skip-test=innodb_ignore_builtin
23perl mysql-test-run.pl --timer --force --debug-server --parallel=auto --comment=n_mix_8k_size --vardir=var-n_mix --mysqld=--binlog-format=mixed --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list --mysqld=--innodb-page-size=8k --skip-test=innodb_ignore_builtin26perl mysql-test-run.pl --timer --force --debug-server --parallel=auto --comment=n_mix_8k_size --vardir=var-n_mix --mysqld=--binlog-format=mixed --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list --mysqld=--innodb-page-size=8k --skip-test=innodb_ignore_builtin
2427
=== modified file 'Percona-Server/mysql-test/collections/default.experimental'
--- Percona-Server/mysql-test/collections/default.experimental 2013-02-12 07:47:19 +0000
+++ Percona-Server/mysql-test/collections/default.experimental 2013-05-12 06:41:27 +0000
@@ -9,18 +9,14 @@
9main.mysqlslap @windows # Bug#11761520 2010-08-10 alik mysqlslap fails sporadically starting from Dahlia9main.mysqlslap @windows # Bug#11761520 2010-08-10 alik mysqlslap fails sporadically starting from Dahlia
1010
11main.index_merge_innodb # BUG#11754168 2012-05-08 jorgen Doing an attempt at reenabling tests disabled by bug. EXPLAIN's row estimates varies for innodb so marked experimental for a while11main.index_merge_innodb # BUG#11754168 2012-05-08 jorgen Doing an attempt at reenabling tests disabled by bug. EXPLAIN's row estimates varies for innodb so marked experimental for a while
12main.kill @freebsd # Bug#12619719 2011-08-04 Occasional failure in PB2
13main.kill @darwin # Bug#12619719 2012-07-12 Occasional failure in PB2
1412
15innodb.innodb_monitor # Bug#12320827 2011-08-04 Occasional failure in PB213innodb.innodb_monitor # Bug#12320827 2011-08-04 Occasional failure in PB2
1614
17rpl.rpl_delayed_slave # BUG#11764654 rpl_delayed_slave fails sporadically in pb15rpl.rpl_delayed_slave # BUG#11764654 rpl_delayed_slave fails sporadically in pb
18rpl.rpl_innodb_bug28430 # Bug#1175442516rpl.rpl_innodb_bug28430 # Bug#11754425
19rpl.rpl_show_slave_running # BUG#12346048 2011-04-11 sven fails sporadically on pb217rpl.rpl_show_slave_running # BUG#12346048 2011-04-11 sven fails sporadically on pb2
20rpl.rpl_parallel_switch_sequential # BUG#13626976 2012-02-07 dlenev Fails sporadically on pb218rpl.rpl_gtid_logs_without_rotate_or_stop_event @windows # Bug#16207800 2013-02-09 anitha Fails very frequently on windows
2119
22sys_vars.rpl_init_slave_func # Bug#12535301 2011-05-09 andrei sys_vars.rpl_init_slave_func mismatches in daily-5.520sys_vars.rpl_init_slave_func # Bug#12535301 2011-05-09 andrei sys_vars.rpl_init_slave_func mismatches in daily-5.5
2321
24rpl.rpl_mixed_mts_rec_crash_safe @solaris # Bug#12902514 2011-08-19 andrei mts recovery tests are slow22
25rpl.rpl_mixed_mts_rec_crash_safe_checksum @solaris # Bug#12902514 2011-08-19 andrei same as rpl_mixed_mts_rec_crash_safe
26rpl.rpl_mixed_mts_crash_safe @solaris # Bug#12902514 2011-08-19 andrei same as rpl_mixed_mts_rec_crash_safe
2723
=== modified file 'Percona-Server/mysql-test/collections/default.push'
--- Percona-Server/mysql-test/collections/default.push 2013-02-12 07:47:19 +0000
+++ Percona-Server/mysql-test/collections/default.push 2013-05-12 06:41:27 +0000
@@ -1,5 +1,5 @@
1perl mysql-test-run.pl --timer --debug-server --force --parallel=auto --comment=n_mix-debug --vardir=var-n_mix --mysqld=--binlog-format=mixed --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list1perl mysql-test-run.pl --timer --debug-server --force --parallel=auto --comment=n_mix-debug --vardir=var-n_mix --mysqld=--binlog-format=mixed --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list
2perl mysql-test-run.pl --timer --debug-server --force --parallel=auto --comment=main_ps_row-debug --vardir=var-main-ps_row --suite=main --ps-protocol --mysqld=--binlog-format=row --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list2perl mysql-test-run.pl --timer --debug-server --force --parallel=auto --comment=rpl_binlog_ps_row-debug --vardir=var-rpl_binlog-ps_row --suite=rpl,binlog --ps-protocol --mysqld=--binlog-format=row --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list
3perl mysql-test-run.pl --timer --debug-server --force --parallel=auto --comment=main_embedded-debug --vardir=var-main_emebbed --suite=main --embedded --experimental=collections/default.experimental3perl mysql-test-run.pl --timer --debug-server --force --parallel=auto --comment=main_embedded-debug --vardir=var-main_emebbed --suite=main --embedded --experimental=collections/default.experimental
4perl mysql-test-run.pl --timer --debug-server --force --parallel=auto --comment=innodb_4k_size-debug --vardir=var-innodb-4k --experimental=collections/default.experimental --suite=innodb --mysqld=--innodb-page-size=4k4perl mysql-test-run.pl --timer --debug-server --force --parallel=auto --comment=innodb_4k_size-debug --vardir=var-innodb-4k --experimental=collections/default.experimental --suite=innodb --mysqld=--innodb-page-size=4k
5perl mysql-test-run.pl --timer --debug-server --force --parallel=auto --comment=rpl_binlog_n_mix_MTS-debug --vardir=var-mts-rpl-binlog-n_mix --mysqld=--binlog-format=mixed --experimental=collections/default.experimental --mysqld=--slave-parallel-workers=4 --mysqld=--slave-transaction-retries=0 --suite=rpl 5perl mysql-test-run.pl --timer --debug-server --force --parallel=auto --comment=rpl_binlog_n_mix_MTS-debug --vardir=var-mts-rpl-binlog-n_mix --mysqld=--binlog-format=mixed --experimental=collections/default.experimental --mysqld=--slave-parallel-workers=4 --mysqld=--slave-transaction-retries=0 --suite=rpl
66
=== modified file 'Percona-Server/mysql-test/collections/default.release.in'
--- Percona-Server/mysql-test/collections/default.release.in 2013-02-12 07:47:19 +0000
+++ Percona-Server/mysql-test/collections/default.release.in 2013-05-12 06:41:27 +0000
@@ -5,7 +5,7 @@
5# include default.weekly5# include default.weekly
66
7perl mysql-test-run.pl --force --timer --parallel=auto --experimental=collections/default.experimental --comment=debug --vardir=var-debug --skip-rpl --report-features --debug-server7perl mysql-test-run.pl --force --timer --parallel=auto --experimental=collections/default.experimental --comment=debug --vardir=var-debug --skip-rpl --report-features --debug-server
8perl mysql-test-run.pl --force --timer --parallel=auto --experimental=collections/default.experimental --comment=normal --vardir=var-normal --report-features8perl mysql-test-run.pl --force --timer --parallel=auto --experimental=collections/default.experimental --comment=normal --vardir=var-normal --report-features --unit-tests
9perl mysql-test-run.pl --force --timer --parallel=auto --experimental=collections/default.experimental --comment=ps --vardir=var-ps --ps-protocol9perl mysql-test-run.pl --force --timer --parallel=auto --experimental=collections/default.experimental --comment=ps --vardir=var-ps --ps-protocol
10perl mysql-test-run.pl --force --timer --parallel=auto --experimental=collections/default.experimental --comment=funcs1+ps --vardir=var-funcs_1_ps --suite=funcs_1 --ps-protocol10perl mysql-test-run.pl --force --timer --parallel=auto --experimental=collections/default.experimental --comment=funcs1+ps --vardir=var-funcs_1_ps --suite=funcs_1 --ps-protocol
11perl mysql-test-run.pl --force --timer --parallel=auto --experimental=collections/default.experimental --comment=funcs2 --vardir=var-funcs2 --suite=funcs_211perl mysql-test-run.pl --force --timer --parallel=auto --experimental=collections/default.experimental --comment=funcs2 --vardir=var-funcs2 --suite=funcs_2
1212
=== modified file 'Percona-Server/mysql-test/collections/default.weekly'
--- Percona-Server/mysql-test/collections/default.weekly 2013-03-05 12:46:43 +0000
+++ Percona-Server/mysql-test/collections/default.weekly 2013-05-12 06:41:27 +0000
@@ -52,12 +52,12 @@
5252
53# Run with 4K page size53# Run with 4K page size
54perl mysql-test-run.pl --debug-server --timer --force --parallel=auto --comment=n_mix_4k_size --vardir=var-n_mix_4k_size --mysqld=--binlog-format=mixed --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list --mysqld=--innodb-page-size=4k --skip-test=innodb_ignore_builtin54perl mysql-test-run.pl --debug-server --timer --force --parallel=auto --comment=n_mix_4k_size --vardir=var-n_mix_4k_size --mysqld=--binlog-format=mixed --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list --mysqld=--innodb-page-size=4k --skip-test=innodb_ignore_builtin
55perl mysql-test-run.pl --debug-server --timer --force --parallel=auto --comment=main_ps_row_4k_size --vardir=var-main-ps_row --suite=main --ps-protocol --mysqld=--binlog-format=row --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list --mysqld=--innodb-page-size=4k --skip-test=innodb_ignore_builtin55perl mysql-test-run.pl --debug-server --timer --force --parallel=auto --comment=rpl_binlog_ps_row_4k_size --vardir=var-rpl_binlog-ps_row --suite=rpl,binlog --ps-protocol --mysqld=--binlog-format=row --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list --mysqld=--innodb-page-size=4k --skip-test=innodb_ignore_builtin
56perl mysql-test-run.pl --debug-server --timer --force --parallel=auto --comment=main_embedded_4k_size --vardir=var-main_emebbed --suite=main --embedded --experimental=collections/default.experimental --mysqld=--innodb-page-size=4k --skip-test=innodb_ignore_builtin56perl mysql-test-run.pl --debug-server --timer --force --parallel=auto --comment=main_embedded_4k_size --vardir=var-main_emebbed --suite=main --embedded --experimental=collections/default.experimental --mysqld=--innodb-page-size=4k --skip-test=innodb_ignore_builtin
5757
58# Run with 8K page size58# Run with 8K page size
59perl mysql-test-run.pl --debug-server --timer --force --parallel=auto --comment=n_mix_8k_size --vardir=var-n_mix_8k_size --mysqld=--binlog-format=mixed --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list --mysqld=--innodb-page-size=8k --skip-test=innodb_ignore_builtin59perl mysql-test-run.pl --debug-server --timer --force --parallel=auto --comment=n_mix_8k_size --vardir=var-n_mix_8k_size --mysqld=--binlog-format=mixed --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list --mysqld=--innodb-page-size=8k --skip-test=innodb_ignore_builtin
60perl mysql-test-run.pl --debug-server --timer --force --parallel=auto --comment=main_ps_row_8k_size --vardir=var-main-ps_row --suite=main --ps-protocol --mysqld=--binlog-format=row --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list --mysqld=--innodb-page-size=8k --skip-test=innodb_ignore_builtin60perl mysql-test-run.pl --debug-server --timer --force --parallel=auto --comment=rpl_binlog_ps_row_8k_size --vardir=var-rpl_binlog-ps_row --suite=rpl,binlog --ps-protocol --mysqld=--binlog-format=row --experimental=collections/default.experimental --skip-test-list=collections/disabled-per-push.list --mysqld=--innodb-page-size=8k --skip-test=innodb_ignore_builtin
61perl mysql-test-run.pl --debug-server --timer --force --parallel=auto --comment=main_embedded_8k_size --vardir=var-main_emebbed --suite=main --embedded --experimental=collections/default.experimental --mysqld=--innodb-page-size=8k --skip-test=innodb_ignore_builtin61perl mysql-test-run.pl --debug-server --timer --force --parallel=auto --comment=main_embedded_8k_size --vardir=var-main_emebbed --suite=main --embedded --experimental=collections/default.experimental --mysqld=--innodb-page-size=8k --skip-test=innodb_ignore_builtin
6262
6363
6464
=== modified file 'Percona-Server/mysql-test/collections/disabled-gtid-on.list'
--- Percona-Server/mysql-test/collections/disabled-gtid-on.list 2012-10-24 08:43:19 +0000
+++ Percona-Server/mysql-test/collections/disabled-gtid-on.list 2013-05-12 06:41:27 +0000
@@ -1,169 +1,5 @@
1rpl_loaddata_s : Skipped and the reason requires further analysis.1binlog.binlog_variables_relay_log_index : No need to test. Binary log off.
2rpl_server_id2 : Skipped and the reason requires furhter analysis.2binlog.binlog_variables_relay_log : No need to test. Binary log off.
3rpl_server_id_ignore : Skipped and the reason requires further analysis.3binlog.binlog_base64_flag : No need to test. Binary log off.
4rpl_insert : Skipped and the reason requires furhter analysis.4binlog.binlog_hexdump : No need to test. Binary log off.
5rpl_mix_insert_delayed : Skipped and the reason requires furhter analysis.5binlog.binlog_old_versions : No need to test. Binary log off.
6rpl_row_mysqlbinlog : Skipped and the reason requires furhter analysis.
7rpl_typeconv : Skipped and the reason requires furhter analysis.
8rpl_slave_start: Skipped and the reason requires furhter analysis.
9rpl_change_master_crash_safe : Skipped and the reason requires furhter analysis.
10rpl_change_master : Skipped and the reason requires furhter analysis.
11rpl_extra_col_slave_innodb : Skipped and the reason requires furhter analysis..
12rpl_extra_col_slave_myisam : Skipped and the reason requires furhter analysis.
13rpl_seconds_behind_master : Skipped and the reason requires furhter analysis.
14rpl_loaddata_fatal : Skipped and the reason requires furhter analysis.
15rpl_row_delayed_ins : Skipped and the reason requires furhter analysis.
16rpl_row_max_relay_size : Skipped and the reason requires furhter analysis.
17rpl_stm_000001 : Skipped and the reason requires furhter analysis.
18rpl_filter_tables_not_exist : Skipped and the reason requires furhter analysis.
19rpl_ssl1 : Skipped and the reason requires furhter analysis.
20rpl_circular_for_4_hosts : Skipped and the reason requires furhter analysis.
21rpl_loaddata : Skipped and the reason requires furhter analysis.
22rpl_heartbeat_2slaves : Skipped and the reason requires furhter analysis.
23mysql_client_test : Skipped and the reason requires furhter analysis.
24binlog_base64_flag : Skipped and the reason requires furhter analysis.
25binlog_old_versions : Skipped and the reason requires furhter analysis.
26rpl_row_img_eng_full : Skipped and the reason requires furhter analysis.
27skip_log_bin : Skipped and the reason requires furhter analysis.
28flush2 : Skipped and the reason requires furhter analysis.
29mysqldump-no-binlog : Skipped and the reason requires furhter analysis.
30delayed: Skipped and the reason requires further analysis.
31no_binlog: Skipped and the reason requires further analysis.
32openssl_1: Skipped and the reason requires further analysis.
33innodb-replace: Skipped and the reason requires further analysis.
34read_only_innodb: Skipped and the reason requires further analysis.
35sys_vars.delayed_insert_limit_func: Skipped and the reason requires further analysis.
36sp-lock: Skipped and the reason requires further analysis.
37lock_sync: Skipped and the reason requires further analysis.
38
39
40
41rpl_gtid_mode : Skipped due to problems in the test.
42binlog_gtid_errors : Skipped due to problems in the test.
43binlog_enforce_gtid_consistency : Skipped due to problems in the test.
44rpl_gtid_execution : Skipped due to problems in the test.
45
46
47
48rpl_get_master_version_and_clock : Skipped due to clashes in debug.
49rpl_init_slave_errors : Skipped due to clashes in debug.
50rpl_corruption : Skipped due to clashes in debug.
51rpl_show_slave_running : Skipped due to clashes in debug.
52rpl_mysqlbinlog_gtid_on : Skipped due to clashes in debug.
53rpl_mts_debug : Skipped due to clashes in debug.
54rpl_row_4_bytes : Skipped due to clashes in debug.
55rpl_row_find_row_debug : Skipped due to clashes in debug.
56rpl_known_bugs_detection : Skipped due to clashes in debug.
57rpl_slave_load_remove_tmpfile : Skipped due to clashes in debug.
58binlog_index : Skipped due to clashes in debug.
59binlog_write_error : Skipped due to clashes in debug.
60rpl_show_errors : Skipped due to clashes in debug.
61rpl_bug33931 : Skipped due to clashes in debug.
62rpl_checksum : Skipped due to clashes in debug.
63rpl_checksum_cache: Skipped due to clashes in debug.
64
65
66
67rpl_row_crash_safe : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
68rpl_stm_mixed_crash_safe : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
69flush_block_commit_notembedded : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
70multi_update : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
71mysqlbinlog_start_stop : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
72partition_binlog : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
73user_var-binlog : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
74binlog_checksum : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
75binlog_crash_safe_master_checksum : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
76binlog_database : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
77binlog_delete_and_flush_index : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
78binlog_drop_if_exists : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
79binlog_implicit_commit : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
80binlog_innodb : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
81binlog_innodb_row : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
82binlog_killed : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
83binlog_mixed_load_data : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
84binlog_mysqlbinlog_filter : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
85binlog_rewrite : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
86binlog_row_ctype_ucs : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
87binlog_row_drop_tbl : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
88binlog_row_drop_tmp_tbl : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
89binlog_server_id : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
90binlog_statement_insert_delayed : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
91binlog_stm_blackhole : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
92binlog_stm_ctype_ucs : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
93binlog_stm_do_db : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
94binlog_stm_drop_tbl : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
95binlog_stm_drop_tmp_tbl : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
96binlog_stm_ps : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
97binlog_stm_row : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
98binlog_stm_user_variables : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
99binlog_mix : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
100binlog_row : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
101binlog_stm : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
102relaylog : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
103rpl_auto_increment_update_failure : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
104rpl_conditional_comments : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
105rpl_do_db_filter : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
106rpl_do_grant : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
107rpl_do_table_filter_insensitive : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
108rpl_do_table_filter_sensitive : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
109rpl_drop_temp : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
110rpl_ignore_db_filter : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
111rpl_ignore_table_filter_insensitive : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
112rpl_ignore_table_filter_sensitive : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
113rpl_innodb_mixed_ddl : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
114rpl_innodb_mixed_dml : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
115rpl_loaddata_map : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
116rpl_mixed_mts_crash_safe : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
117rpl_row_mts_crash_safe : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
118rpl_stm_mts_crash_safe : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
119rpl_mixed_mts_rec_crash_safe : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
120rpl_row_mts_rec_crash_safe : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
121rpl_stm_mts_rec_crash_safe : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
122rpl_mixed_mts_rec_crash_safe_checksum : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
123rpl_rbr_to_sbr : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
124rpl_rewrt_db : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
125rpl_rewrite_db_filter : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
126rpl_row_drop : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
127rpl_row_event_max_size : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
128rpl_row_flsh_tbls : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
129rpl_stm_flsh_tbls : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
130rpl_slave_skip : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
131rpl_stm_auto_increment_bug33029 : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
132rpl_stm_loaddata_concurrent : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
133rpl_stm_multi_query : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
134rpl_stm_user_variables : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
135rpl_user : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
136rpl_row_basic_11bugs : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
137rpl_crash_safe_master : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
138binlog_truncate_myisam : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs.
139
140
141
142rpl_stm_insert_delayed : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs and positions. Check extra/rpl_tests/rpl_insert_delayed.test.
143rpl_row_insert_delayed : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs and positions. Check extra/rpl_tests/rpl_insert_delayed.test.
144rpl_mixed_insert_delayed : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs and positions. Check extra/rpl_tests/rpl_insert_delayed.test.
145
146
147
148rpl_insert_ignore : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs and positions. Check mysql-test/extra/rpl_tests/rpl_insert_ignore.test.
149
150
151
152rpl_row_log : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs and positions. Check mysql-test/extra/rpl_tests/rpl_log.test.
153rpl_stm_log : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs and positions. Check mysql-test/extra/rpl_tests/rpl_log.test.
154rpl_row_log_innodb : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs and positions. Check mysql-test/extra/rpl_tests/rpl_log.test.
155
156
157
158binlog_killed : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs and positions.
159binlog_killed_simulate : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs and positions.
160rpl_binlog_errors : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs and positions.
161rpl_dual_pos_advance : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs and positions.
162rpl_grant_plugin : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs and positions.
163rpl_stm_mix_show_relaylog_events : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs and positions.
164rpl_row_show_relaylog_events : Skipped because SHOW BINLOG/RELAY EVENTS produce different outputs and positions.
165
166
167
168rpl_cross_version : Disabled because the not_gtid_enabled.inc does not work.
169rpl_server_uuid : Disabled because the not_gtid_enabled.inc does not work.
1706
=== added file 'Percona-Server/mysql-test/extra/binlog_tests/binlog_implicit_commit.inc'
--- Percona-Server/mysql-test/extra/binlog_tests/binlog_implicit_commit.inc 1970-01-01 00:00:00 +0000
+++ Percona-Server/mysql-test/extra/binlog_tests/binlog_implicit_commit.inc 2013-05-12 06:41:27 +0000
@@ -0,0 +1,60 @@
1# The purpose of this test is to test that setting autocommit does a
2# commit of outstanding transactions and nothing is left pending in
3# the transaction cache.
4
5# We need a transactional engine, so let's use InnoDB
6CREATE TABLE t1 (id INT) ENGINE = InnoDB;
7
8# Testing SET AUTOCOMMIT
9SET BINLOG_FORMAT = STATEMENT;
10
11let $cleanup = COMMIT;
12
13let $prepare = SET AUTOCOMMIT = 0;
14let $statement = SET AUTOCOMMIT = 1;
15source extra/binlog_tests/implicit.test;
16
17let $prepare = SET AUTOCOMMIT = 1;
18let $statement = SET AUTOCOMMIT = 1;
19source extra/binlog_tests/implicit.test;
20
21let $prepare = SET AUTOCOMMIT = 0;
22let $statement = SET AUTOCOMMIT = 0;
23source extra/binlog_tests/implicit.test;
24
25let $prepare = SET AUTOCOMMIT = 1;
26let $statement = SET AUTOCOMMIT = 0;
27source extra/binlog_tests/implicit.test;
28
29SET BINLOG_FORMAT = ROW;
30let $prepare = SET AUTOCOMMIT = 0;
31let $statement = SET AUTOCOMMIT = 1;
32source extra/binlog_tests/implicit.test;
33
34let $prepare = SET AUTOCOMMIT = 1;
35let $statement = SET AUTOCOMMIT = 1;
36source extra/binlog_tests/implicit.test;
37
38let $prepare = SET AUTOCOMMIT = 0;
39let $statement = SET AUTOCOMMIT = 0;
40source extra/binlog_tests/implicit.test;
41
42let $prepare = SET AUTOCOMMIT = 1;
43let $statement = SET AUTOCOMMIT = 0;
44source extra/binlog_tests/implicit.test;
45
46RESET MASTER;
47SET AUTOCOMMIT = 0;
48INSERT INTO t1 VALUES (1);
49source include/show_binlog_events.inc;
50LOCK TABLES t1 WRITE;
51source include/show_binlog_events.inc;
52INSERT INTO t1 VALUES (2);
53source include/show_binlog_events.inc;
54UNLOCK TABLES;
55source include/show_binlog_events.inc;
56COMMIT;
57source include/show_binlog_events.inc;
58
59# Cleaning up
60DROP TABLE t1;
061
=== added file 'Percona-Server/mysql-test/extra/binlog_tests/binlog_innodb.inc'
--- Percona-Server/mysql-test/extra/binlog_tests/binlog_innodb.inc 1970-01-01 00:00:00 +0000
+++ Percona-Server/mysql-test/extra/binlog_tests/binlog_innodb.inc 2013-05-12 06:41:27 +0000
@@ -0,0 +1,171 @@
1
2SET BINLOG_FORMAT=MIXED;
3
4RESET MASTER;
5
6CREATE TABLE t1 (a INT PRIMARY KEY, b INT) ENGINE=INNODB;
7INSERT INTO t1 VALUES (1,1),(2,2),(3,3),(4,4),(5,5),(6,6);
8
9SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ;
10BEGIN;
11# Should be logged as statement
12UPDATE t1 SET b = 2*a WHERE a > 1;
13COMMIT;
14
15SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
16BEGIN;
17# Should be logged as rows
18UPDATE t1 SET b = a * a WHERE a > 3;
19COMMIT;
20
21# Check that errors are generated when trying to use READ COMMITTED
22# transaction isolation level in STATEMENT binlog mode.
23
24SET BINLOG_FORMAT=STATEMENT;
25
26SET SESSION TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;
27BEGIN;
28error ER_BINLOG_STMT_MODE_AND_ROW_ENGINE;
29UPDATE t1 SET b = 1*a WHERE a > 1;
30COMMIT;
31
32SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
33BEGIN;
34error ER_BINLOG_STMT_MODE_AND_ROW_ENGINE;
35UPDATE t1 SET b = 2*a WHERE a > 2;
36COMMIT;
37
38SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ;
39BEGIN;
40UPDATE t1 SET b = 3*a WHERE a > 3;
41COMMIT;
42
43SET SESSION TRANSACTION ISOLATION LEVEL SERIALIZABLE;
44BEGIN;
45UPDATE t1 SET b = 4*a WHERE a > 4;
46COMMIT;
47
48SET BINLOG_FORMAT=MIXED;
49
50SET SESSION TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;
51BEGIN;
52UPDATE t1 SET b = 1*a WHERE a > 1;
53COMMIT;
54
55SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
56BEGIN;
57UPDATE t1 SET b = 2*a WHERE a > 2;
58COMMIT;
59
60SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ;
61BEGIN;
62UPDATE t1 SET b = 3*a WHERE a > 3;
63COMMIT;
64
65SET SESSION TRANSACTION ISOLATION LEVEL SERIALIZABLE;
66BEGIN;
67UPDATE t1 SET b = 4*a WHERE a > 4;
68COMMIT;
69
70SET BINLOG_FORMAT=ROW;
71
72SET SESSION TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;
73BEGIN;
74UPDATE t1 SET b = 1*a WHERE a > 1;
75COMMIT;
76
77SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
78BEGIN;
79UPDATE t1 SET b = 2*a WHERE a > 2;
80COMMIT;
81
82SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ;
83BEGIN;
84UPDATE t1 SET b = 3*a WHERE a > 3;
85COMMIT;
86
87SET SESSION TRANSACTION ISOLATION LEVEL SERIALIZABLE;
88BEGIN;
89UPDATE t1 SET b = 4*a WHERE a > 4;
90COMMIT;
91
92source include/show_binlog_events.inc;
93
94DROP TABLE t1;
95
96
97#
98# Let us test binlog_cache_use and binlog_cache_disk_use status vars.
99# Actually this test has nothing to do with innodb per se, it just requires
100# transactional table.
101#
102flush status;
103show status like "binlog_cache_use";
104show status like "binlog_cache_disk_use";
105
106create table t1 (a int) engine=innodb;
107
108# Now we are going to create transaction which is long enough so its
109# transaction binlog will be flushed to disk...
110let $1=2000;
111disable_query_log;
112begin;
113while ($1)
114{
115 eval insert into t1 values( $1 );
116 dec $1;
117}
118commit;
119enable_query_log;
120show status like "binlog_cache_use";
121show status like "binlog_cache_disk_use";
122
123# Transaction which should not be flushed to disk and so should not
124# increase binlog_cache_disk_use.
125begin;
126delete from t1;
127commit;
128show status like "binlog_cache_use";
129show status like "binlog_cache_disk_use";
130drop table t1;
131
132#
133# Bug#27716 multi-update did partially and has not binlogged
134#
135
136CREATE TABLE `t1` (
137 `a` int(11) NOT NULL auto_increment,
138 `b` int(11) default NULL,
139 PRIMARY KEY (`a`)
140) ENGINE=MyISAM DEFAULT CHARSET=latin1 ;
141
142CREATE TABLE `t2` (
143 `a` int(11) NOT NULL auto_increment,
144 `b` int(11) default NULL,
145 PRIMARY KEY (`a`)
146) ENGINE=INNODB DEFAULT CHARSET=latin1 ;
147
148# A. testing multi_update::send_eof() execution branch
149insert into t1 values (1,1),(2,2);
150insert into t2 values (1,1),(4,4);
151reset master;
152--error ER_DUP_ENTRY
153UPDATE t2,t1 SET t2.a=t1.a+2;
154# check
155select * from t2 /* must be (3,1), (4,4) */;
156--echo # There must no UPDATE in binlog;
157source include/show_binlog_events.inc;
158
159# B. testing multi_update::send_error() execution branch
160delete from t1;
161delete from t2;
162insert into t1 values (1,2),(3,4),(4,4);
163insert into t2 values (1,2),(3,4),(4,4);
164reset master;
165--error ER_DUP_ENTRY
166UPDATE t2,t1 SET t2.a=t2.b where t2.a=t1.a;
167--echo # There must be no UPDATE query event;
168source include/show_binlog_events.inc;
169
170# cleanup bug#27716
171drop table t1, t2;
0172
=== added file 'Percona-Server/mysql-test/extra/binlog_tests/binlog_mysqlbinlog_row.inc'
--- Percona-Server/mysql-test/extra/binlog_tests/binlog_mysqlbinlog_row.inc 1970-01-01 00:00:00 +0000
+++ Percona-Server/mysql-test/extra/binlog_tests/binlog_mysqlbinlog_row.inc 2013-05-12 06:41:27 +0000
@@ -0,0 +1,484 @@
1--echo #
2--echo # Preparatory cleanup.
3--echo #
4--disable_warnings
5DROP TABLE IF EXISTS t1;
6--enable_warnings
7
8--echo #
9--echo # We need a fixed timestamp to avoid varying results.
10--echo #
11SET timestamp=1000000000;
12
13--echo #
14--echo # Delete all existing binary logs.
15--echo #
16RESET MASTER;
17
18
19CREATE TABLE t1 (c01 BIT);
20INSERT INTO t1 VALUES (0);
21INSERT INTO t1 VALUES (1);
22DROP TABLE t1;
23
24CREATE TABLE t1 (c01 BIT(7));
25INSERT INTO t1 VALUES (1);
26INSERT INTO t1 VALUES (2);
27INSERT INTO t1 VALUES (4);
28INSERT INTO t1 VALUES (8);
29INSERT INTO t1 VALUES (16);
30INSERT INTO t1 VALUES (32);
31INSERT INTO t1 VALUES (64);
32INSERT INTO t1 VALUES (127);
33DELETE FROM t1 WHERE c01=127;
34UPDATE t1 SET c01=15 WHERE c01=16;
35DROP TABLE t1;
36
37CREATE TABLE t1 (a BIT(20), b CHAR(2));
38INSERT INTO t1 VALUES (b'00010010010010001001', 'ab');
39DROP TABLE t1;
40
41CREATE TABLE t1 (c02 BIT(64));
42INSERT INTO t1 VALUES (1);
43INSERT INTO t1 VALUES (2);
44INSERT INTO t1 VALUES (128);
45INSERT INTO t1 VALUES (b'1111111111111111111111111111111111111111111111111111111111111111');
46DROP TABLE t1;
47
48
49CREATE TABLE t1 (c03 TINYINT);
50INSERT INTO t1 VALUES (1),(2),(3);
51INSERT INTO t1 VALUES (-128);
52UPDATE t1 SET c03=2 WHERE c03=1;
53DELETE FROM t1 WHERE c03=-128;
54DROP TABLE t1;
55
56CREATE TABLE t1 (c04 TINYINT UNSIGNED);
57INSERT INTO t1 VALUES (128), (255);
58UPDATE t1 SET c04=2 WHERE c04=1;
59DELETE FROM t1 WHERE c04=255;
60DROP TABLE t1;
61
62CREATE TABLE t1 (c06 BOOL);
63INSERT INTO t1 VALUES (TRUE);
64DELETE FROM t1 WHERE c06=TRUE;
65DROP TABLE t1;
66
67CREATE TABLE t1 (c07 SMALLINT);
68INSERT INTO t1 VALUES (1234);
69DELETE FROM t1 WHERE c07=1234;
70DROP TABLE t1;
71
72CREATE TABLE t1 (c08 SMALLINT UNSIGNED);
73INSERT INTO t1 VALUES (32768), (65535);
74UPDATE t1 SET c08=2 WHERE c08=32768;
75DELETE FROM t1 WHERE c08=65535;
76DROP TABLE t1;
77
78CREATE TABLE t1 (c10 MEDIUMINT);
79INSERT INTO t1 VALUES (12345);
80DELETE FROM t1 WHERE c10=12345;
81DROP TABLE t1;
82
83CREATE TABLE t1 (c11 MEDIUMINT UNSIGNED);
84INSERT INTO t1 VALUES (8388608), (16777215);
85UPDATE t1 SET c11=2 WHERE c11=8388608;
86DELETE FROM t1 WHERE c11=16777215;
87DROP TABLE t1;
88
89CREATE TABLE t1 (c13 INT);
90INSERT INTO t1 VALUES (123456);
91DELETE FROM t1 WHERE c13=123456;
92DROP TABLE t1;
93
94CREATE TABLE t1 (c14 INT UNSIGNED);
95INSERT INTO t1 VALUES (2147483648), (4294967295);
96UPDATE t1 SET c14=2 WHERE c14=2147483648;
97DELETE FROM t1 WHERE c14=4294967295;
98DROP TABLE t1;
99
100CREATE TABLE t1 (c16 BIGINT);
101INSERT INTO t1 VALUES (1234567890);
102DELETE FROM t1 WHERE c16=1234567890;
103DROP TABLE t1;
104
105CREATE TABLE t1 (c17 BIGINT UNSIGNED);
106INSERT INTO t1 VALUES (9223372036854775808), (18446744073709551615);
107UPDATE t1 SET c17=2 WHERE c17=9223372036854775808;
108DELETE FROM t1 WHERE c17=18446744073709551615;
109DROP TABLE t1;
110
111CREATE TABLE t1 (c19 FLOAT);
112INSERT INTO t1 VALUES (123.2234);
113DELETE FROM t1 WHERE c19>123;
114DROP TABLE t1;
115
116CREATE TABLE t1 (c22 DOUBLE);
117INSERT INTO t1 VALUES (123434.22344545);
118DELETE FROM t1 WHERE c22>123434;
119DROP TABLE t1;
120
121#
122
123CREATE TABLE t1 (c25 DECIMAL(10,5));
124INSERT INTO t1 VALUES (124.45);
125INSERT INTO t1 VALUES (-543.21);
126DELETE FROM t1 WHERE c25=124.45;
127DROP TABLE t1;
128
129#
130
131CREATE TABLE t1 (c28 DATE);
132INSERT INTO t1 VALUES ('2001-02-03');
133DELETE FROM t1 WHERE c28='2001-02-03';
134DROP TABLE t1;
135
136CREATE TABLE t1 (c29 DATETIME);
137INSERT INTO t1 VALUES ('2001-02-03 10:20:30');
138DELETE FROM t1 WHERE c29='2001-02-03 10:20:30';
139DROP TABLE t1;
140
141CREATE TABLE t1 (c30 TIMESTAMP);
142INSERT INTO t1 VALUES ('2001-02-03 10:20:30');
143DELETE FROM t1 WHERE c30='2001-02-03 10:20:30';
144DROP TABLE t1;
145
146CREATE TABLE t1 (c31 TIME);
147INSERT INTO t1 VALUES ('11:22:33');
148DELETE FROM t1 WHERE c31='11:22:33';
149DROP TABLE t1;
150
151CREATE TABLE t1 (c32 YEAR);
152INSERT INTO t1 VALUES ('2001');
153DELETE FROM t1 WHERE c32=2001;
154DROP TABLE t1;
155
156#
157
158CREATE TABLE t1 (c33 CHAR);
159INSERT INTO t1 VALUES ('a');
160DELETE FROM t1 WHERE c33='a';
161DROP TABLE t1;
162
163CREATE TABLE t1 (c34 CHAR(0));
164INSERT INTO t1 VALUES ('');
165DELETE FROM t1 WHERE c34='';
166DROP TABLE t1;
167
168CREATE TABLE t1 (c35 CHAR(1));
169INSERT INTO t1 VALUES ('b');
170DELETE FROM t1 WHERE c35='b';
171DROP TABLE t1;
172
173CREATE TABLE t1 (c36 CHAR(255));
174INSERT INTO t1 VALUES (repeat('c',255));
175DELETE FROM t1 WHERE c36>'c';
176DROP TABLE t1;
177
178#
179
180CREATE TABLE t1 (c37 NATIONAL CHAR);
181INSERT INTO t1 VALUES ('a');
182DELETE FROM t1 WHERE c37='a';
183DROP TABLE t1;
184
185CREATE TABLE t1 (c38 NATIONAL CHAR(0));
186INSERT INTO t1 VALUES ('');
187DELETE FROM t1 WHERE c38='';
188DROP TABLE t1;
189
190CREATE TABLE t1 (c39 NATIONAL CHAR(1));
191INSERT INTO t1 VALUES ('a');
192DELETE FROM t1 WHERE c39='a';
193DROP TABLE t1;
194
195CREATE TABLE t1 (c40 NATIONAL CHAR(255));
196INSERT INTO t1 VALUES (repeat('a', 255));
197INSERT INTO t1 VALUES (repeat(_latin1 0xDF, 255));
198DELETE FROM t1 WHERE c40>'a';
199DROP TABLE t1;
200
201#
202
203CREATE TABLE t1 (c41 CHAR CHARACTER SET UCS2);
204INSERT INTO t1 VALUES ('a');
205DELETE FROM t1 WHERE c41='a';
206DROP TABLE t1;
207
208CREATE TABLE t1 (c42 CHAR(0) CHARACTER SET UCS2);
209INSERT INTO t1 VALUES ('');
210DELETE FROM t1 WHERE c42='';
211DROP TABLE t1;
212
213CREATE TABLE t1 (c43 CHAR(1) CHARACTER SET UCS2);
214INSERT INTO t1 VALUES ('a');
215DELETE FROM t1 WHERE c43='a';
216DROP TABLE t1;
217
218CREATE TABLE t1 (c44 CHAR(255) CHARACTER SET UCS2);
219INSERT INTO t1 VALUES (repeat('a', 255));
220INSERT INTO t1 VALUES (repeat(_latin1 0xDF, 255));
221DELETE FROM t1 WHERE c44>'a';
222DROP TABLE t1;
223
224#
225
226CREATE TABLE t1 (c45 VARCHAR(0));
227INSERT INTO t1 VALUES ('');
228DELETE FROM t1 WHERE c45='';
229DROP TABLE t1;
230
231CREATE TABLE t1 (c46 VARCHAR(1));
232INSERT INTO t1 VALUES ('a');
233DELETE FROM t1 WHERE c46='a';
234DROP TABLE t1;
235
236CREATE TABLE t1 (c47 VARCHAR(255));
237INSERT INTO t1 VALUES (repeat('a',255));
238DELETE FROM t1 WHERE c47>'a';
239DROP TABLE t1;
240
241CREATE TABLE t1 (c48 VARCHAR(261));
242INSERT INTO t1 VALUES (repeat('a',261));
243DELETE FROM t1 WHERE c48>'a';
244DROP TABLE t1;
245
246#
247
248CREATE TABLE t1 (c49 NATIONAL VARCHAR(0));
249INSERT INTO t1 VALUES ('');
250DELETE FROM t1 WHERE c49='';
251DROP TABLE t1;
252
253CREATE TABLE t1 (c50 NATIONAL VARCHAR(1));
254INSERT INTO t1 VALUES ('a');
255DELETE FROM t1 WHERE c50='a';
256DROP TABLE t1;
257
258CREATE TABLE t1 (c51 NATIONAL VARCHAR(255));
259INSERT INTO t1 VALUES (repeat('a',255));
260INSERT INTO t1 VALUES (repeat(_latin1 0xDF, 255));
261DELETE FROM t1 WHERE c51>'a';
262DROP TABLE t1;
263
264CREATE TABLE t1 (c52 NATIONAL VARCHAR(261));
265INSERT INTO t1 VALUES (repeat('a',261));
266INSERT INTO t1 VALUES (repeat(_latin1 0xDF, 261));
267DELETE FROM t1 WHERE c52>'a';
268DROP TABLE t1;
269
270#
271
272CREATE TABLE t1 (c53 VARCHAR(0) CHARACTER SET ucs2);
273INSERT INTO t1 VALUES ('');
274DELETE FROM t1 WHERE c53='';
275DROP TABLE t1;
276
277CREATE TABLE t1 (c54 VARCHAR(1) CHARACTER SET ucs2);
278INSERT INTO t1 VALUES ('a');
279DELETE FROM t1 WHERE c54='a';
280DROP TABLE t1;
281
282CREATE TABLE t1 (c55 VARCHAR(255) CHARACTER SET ucs2);
283INSERT INTO t1 VALUES (repeat('ab', 127));
284DELETE FROM t1 WHERE c55>'a';
285DROP TABLE t1;
286
287CREATE TABLE t1 (c56 VARCHAR(261) CHARACTER SET ucs2);
288INSERT INTO t1 VALUES (repeat('ab', 130));
289DELETE FROM t1 WHERE c56>'a';
290DROP TABLE t1;
291
292#
293
294CREATE TABLE t1 (c57 BINARY);
295INSERT INTO t1 VALUES (0x00);
296INSERT INTO t1 VALUES (0x02);
297INSERT INTO t1 VALUES ('a');
298DELETE FROM t1 WHERE c57='a';
299DROP TABLE t1;
300
301CREATE TABLE t1 (c58 BINARY(0));
302INSERT INTO t1 VALUES ('');
303DELETE FROM t1 WHERE c58='';
304DROP TABLE t1;
305
306CREATE TABLE t1 (c59 BINARY(1));
307INSERT INTO t1 VALUES (0x00);
308INSERT INTO t1 VALUES (0x02);
309INSERT INTO t1 VALUES ('a');
310DELETE FROM t1 WHERE c59='a';
311DROP TABLE t1;
312
313CREATE TABLE t1 (c60 BINARY(255));
314INSERT INTO t1 VALUES (0x00);
315INSERT INTO t1 VALUES (0x02);
316INSERT INTO t1 VALUES (repeat('a\0',120));
317DELETE FROM t1 WHERE c60<0x02;
318DROP TABLE t1;
319
320#
321
322CREATE TABLE t1 (c61 VARBINARY(0));
323INSERT INTO t1 VALUES ('');
324DELETE FROM t1 WHERE c61='';
325DROP TABLE t1;
326
327CREATE TABLE t1 (c62 VARBINARY(1));
328INSERT INTO t1 VALUES (0x00);
329INSERT INTO t1 VALUES (0x02);
330INSERT INTO t1 VALUES ('a');
331DELETE FROM t1 WHERE c62=0x02;
332DROP TABLE t1;
333
334CREATE TABLE t1 (c63 VARBINARY(255));
335INSERT INTO t1 VALUES (0x00);
336INSERT INTO t1 VALUES (0x02);
337INSERT INTO t1 VALUES (repeat('a\0',120));
338DELETE FROM t1 WHERE c63=0x02;
339DROP TABLE t1;
340
341#
342
343CREATE TABLE t1 (c65 TINYBLOB);
344INSERT INTO t1 VALUES ('tinyblob1');
345DELETE FROM t1 WHERE c65='tinyblob1';
346DROP TABLE t1;
347
348CREATE TABLE t1 (c68 BLOB);
349INSERT INTO t1 VALUES ('blob1');
350DELETE FROM t1 WHERE c68='blob1';
351DROP TABLE t1;
352
353CREATE TABLE t1 (c71 MEDIUMBLOB);
354INSERT INTO t1 VALUES ('mediumblob1');
355DELETE FROM t1 WHERE c71='mediumblob1';
356DROP TABLE t1;
357
358CREATE TABLE t1 (c74 LONGBLOB);
359INSERT INTO t1 VALUES ('longblob1');
360DELETE FROM t1 WHERE c74='longblob1';
361DROP TABLE t1;
362
363CREATE TABLE t1 (c66 TINYTEXT);
364INSERT INTO t1 VALUES ('tinytext1');
365DELETE FROM t1 WHERE c66='tinytext1';
366DROP TABLE t1;
367
368CREATE TABLE t1 (c69 TEXT);
369INSERT INTO t1 VALUES ('text1');
370DELETE FROM t1 WHERE c69='text1';
371DROP TABLE t1;
372
373CREATE TABLE t1 (c72 MEDIUMTEXT);
374INSERT INTO t1 VALUES ('mediumtext1');
375DELETE FROM t1 WHERE c72='mediumtext1';
376DROP TABLE t1;
377
378CREATE TABLE t1 (c75 LONGTEXT);
379INSERT INTO t1 VALUES ('longtext1');
380DELETE FROM t1 WHERE c75='longtext1';
381DROP TABLE t1;
382
383#
384
385CREATE TABLE t1 (c67 TINYTEXT CHARACTER SET UCS2);
386INSERT INTO t1 VALUES ('tinytext1');
387DELETE FROM t1 WHERE c67='tinytext1';
388DROP TABLE t1;
389
390CREATE TABLE t1 (c70 TEXT CHARACTER SET UCS2);
391INSERT INTO t1 VALUES ('text1');
392DELETE FROM t1 WHERE c70='text1';
393DROP TABLE t1;
394
395CREATE TABLE t1 (c73 MEDIUMTEXT CHARACTER SET UCS2);
396INSERT INTO t1 VALUES ('mediumtext1');
397DELETE FROM t1 WHERE c73='mediumtext1';
398DROP TABLE t1;
399
400CREATE TABLE t1 (c76 LONGTEXT CHARACTER SET UCS2);
401INSERT INTO t1 VALUES ('longtext1');
402DELETE FROM t1 WHERE c76='longtext1';
403DROP TABLE t1;
404
405#
406
407CREATE TABLE t1 (c77 ENUM('a','b','c'));
408INSERT INTO t1 VALUES ('b');
409DELETE FROM t1 WHERE c77='b';
410DROP TABLE t1;
411
412#
413
414CREATE TABLE t1 (c78 SET('a','b','c','d','e','f'));
415INSERT INTO t1 VALUES ('a,b');
416INSERT INTO t1 VALUES ('a,c');
417INSERT INTO t1 VALUES ('b,c');
418INSERT INTO t1 VALUES ('a,b,c');
419INSERT INTO t1 VALUES ('a,b,c,d');
420INSERT INTO t1 VALUES ('a,b,c,d,e');
421INSERT INTO t1 VALUES ('a,b,c,d,e,f');
422DELETE FROM t1 WHERE c78='a,b';
423DROP TABLE t1;
424
425#
426# Start of FSP-enabled data types
427#
428SET time_zone='+00:00';
429SET timestamp=UNIX_TIMESTAMP('2002-02-02 20:20:20') + 0.123456;
430SET @t='00:00:01.123456';
431CREATE TABLE t1 (
432 c79 TIME(6), c80 TIME(5), c81 TIME(4),
433 c82 TIME(3), c83 TIME(2), c84 TIME(1)
434);
435INSERT INTO t1 VALUES (@t, @t, @t, @t, @t, @t);
436INSERT INTO t1 VALUES (NOW(), NOW(), NOW(), NOW(), NOW(), NOW());
437INSERT INTO t1 VALUES (NOW(6), NOW(6), NOW(6), NOW(6), NOW(6), NOW(6));
438DROP TABLE t1;
439
440SET @ts='2001-01-01 00:00:00.123456';
441CREATE TABLE t1 (
442 c85 DATETIME(6), c86 DATETIME(5), c87 DATETIME(4),
443 c88 DATETIME(3), c89 DATETIME(2), c90 DATETIME(1)
444);
445INSERT INTO t1 VALUES (@ts, @ts, @ts, @ts, @ts, @ts);
446INSERT INTO t1 VALUES (NOW(), NOW(), NOW(), NOW(), NOW(), NOW());
447INSERT INTO t1 VALUES (NOW(6), NOW(6), NOW(6), NOW(6), NOW(6), NOW(6));
448DROP TABLE t1;
449
450SET @ts='2001-01-01 00:00:00.123456';
451CREATE TABLE t1 (
452 c85 TIMESTAMP(6), c86 TIMESTAMP(5), c87 TIMESTAMP(4),
453 c88 TIMESTAMP(3), c89 TIMESTAMP(2), c90 TIMESTAMP(1)
454);
455INSERT INTO t1 VALUES (@ts, @ts, @ts, @ts, @ts, @ts);
456INSERT INTO t1 VALUES (NOW(), NOW(), NOW(), NOW(), NOW(), NOW());
457INSERT INTO t1 VALUES (NOW(6), NOW(6), NOW(6), NOW(6), NOW(6), NOW(6));
458DROP TABLE t1;
459
460SET timestamp=1000000000;
461SET time_zone=default;
462#
463# End of FSP-enabled data types
464#
465
466
467#
468# Check multi-table update
469#
470CREATE TABLE t1 (a int NOT NULL DEFAULT 0, b int NOT NULL DEFAULT 0);
471CREATE TABLE t2 (a int NOT NULL DEFAULT 0, b int NOT NULL DEFAULT 0);
472INSERT INTO t1 SET a=1;
473INSERT INTO t1 SET b=1;
474INSERT INTO t2 SET a=1;
475INSERT INTO t2 SET b=1;
476UPDATE t1, t2 SET t1.a=10, t2.a=20;
477DROP TABLE t1,t2;
478
479flush logs;
480
481let $MYSQLD_DATADIR= `select @@datadir`;
482--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
483--replace_regex /SQL_LOAD_MB-[0-9]-[0-9]/SQL_LOAD_MB-#-#/ /exec_time=[0-9]*/exec_time=#/ /end_log_pos [0-9]*/end_log_pos #/ /# at [0-9]*/# at #/ /thread_id=[0-9]*/thread_id=#/ /table id [0-9]*/table id #/ /mapped to number [0-9]*/mapped to number #/ /server v [^ ]*/server v #.##.##/ /(@[0-9]*=[0-9]*[.][0-9]{1,3})[0-9e+-]*[^ ]*(.*(FLOAT|DOUBLE).*[*].)/\1...\2/ /SET @@SESSION.GTID_NEXT= '.*'/SET @@SESSION.GTID_NEXT= 'GTID'/ /CRC32 0x[0-9a-f]{8}/CRC32 #/
484--exec $MYSQL_BINLOG --base64-output=decode-rows -v -v $MYSQLD_DATADIR/master-bin.000001
0485
=== added file 'Percona-Server/mysql-test/extra/binlog_tests/binlog_mysqlbinlog_start_stop.inc'
--- Percona-Server/mysql-test/extra/binlog_tests/binlog_mysqlbinlog_start_stop.inc 1970-01-01 00:00:00 +0000
+++ Percona-Server/mysql-test/extra/binlog_tests/binlog_mysqlbinlog_start_stop.inc 2013-05-12 06:41:27 +0000
@@ -0,0 +1,91 @@
1# ==== Purpose ====
2#
3# Test the --[start|stop]-[position|datetime] options to mysqlbinlog,
4# with/without --read-from-remote-server, with one or two binary logs
5# as input.
6#
7# ==== Implementation ====
8
9# TODO: Need to look at making row based version once new binlog client is complete.
10
11CREATE TABLE t1 (a INT);
12RESET MASTER;
13
14# We need to set fixed timestamps in this test.
15# Use a date in the future to keep a growing timestamp along the
16# binlog (including the Start_log_event). This test will work
17# unchanged everywhere, because mysql-test-run has fixed TZ, which it
18# exports (so mysqlbinlog has same fixed TZ).
19--let $datetime_1= 2031-01-01 12:00:00
20eval SET TIMESTAMP= UNIX_TIMESTAMP("$datetime_1");
21INSERT INTO t1 VALUES(1);
22--let $pos_1= query_get_value(SHOW MASTER STATUS, Position, 1)
23
24--let $datetime_2= 2032-01-01 12:00:00
25eval SET TIMESTAMP= UNIX_TIMESTAMP("$datetime_2");
26INSERT INTO t1 VALUES(2);
27--let $pos_2= query_get_value(SHOW MASTER STATUS, Position, 1)
28
29eval SET TIMESTAMP= UNIX_TIMESTAMP("2033-01-01 12:00:00");
30INSERT INTO t1 VALUES(3);
31
32--let $file_1= query_get_value(SHOW MASTER STATUS, File, 1)
33FLUSH LOGS;
34
35SET TIMESTAMP= UNIX_TIMESTAMP("2034-01-01 12:00:00");
36INSERT INTO t1 VALUES(4);
37--let $pos_3= query_get_value(SHOW MASTER STATUS, Position, 1)
38--let $datetime_3= 2035-01-01 12:00:00
39eval SET TIMESTAMP= UNIX_TIMESTAMP("$datetime_3");
40INSERT INTO t1 VALUES(5);
41
42--let $file_2= query_get_value(SHOW MASTER STATUS, File, 1)
43FLUSH LOGS;
44
45--let $MYSQLD_DATADIR= `select @@datadir`
46
47--echo
48--echo ==== Local ====
49
50--let $start_position= $pos_1
51--let $start_datetime= $datetime_1
52
53--let $stop_position= $pos_2
54--let $stop_datetime= $datetime_2
55--let $extra_options= $MYSQLD_DATADIR/$file_1
56--source extra/binlog_tests/mysqlbinlog_start_stop_1.inc
57
58--echo
59--echo ==== Local with 2 binlogs on command line ====
60# This is to verify that some options apply only to first, or last binlog
61
62--let $stop_position= $pos_3
63--let $stop_datetime= $datetime_3
64--let $extra_options= $MYSQLD_DATADIR/$file_1 $MYSQLD_DATADIR/$file_2
65--source extra/binlog_tests/mysqlbinlog_start_stop_1.inc
66
67--echo
68--echo ==== Remote ====
69
70--let $stop_position= $pos_2
71--let $stop_datetime= $datetime_2
72--let $extra_options= --read-from-remote-server --user=root --host=127.0.0.1 --port=$MASTER_MYPORT $file_1
73--source extra/binlog_tests/mysqlbinlog_start_stop_1.inc
74
75--echo
76--echo ==== Remote with 2 binlogs on command line ====
77
78--let $stop_position= $pos_3
79--let $stop_datetime= $datetime_3
80--let $extra_options= --read-from-remote-server --user=root --host=127.0.0.1 --port=$MASTER_MYPORT $file_1 $file_2
81--source extra/binlog_tests/mysqlbinlog_start_stop_1.inc
82
83# ==== to-last-log ====
84
85--let $extra_options= --read-from-remote-server --user=root --host=127.0.0.1 --port=$MASTER_MYPORT $file_1
86--let $option= --to-last-log
87--source extra/binlog_tests/mysqlbinlog_start_stop_2.inc
88
89--echo
90--echo ==== clean up ====
91DROP TABLE t1;
092
=== modified file 'Percona-Server/mysql-test/extra/binlog_tests/blackhole.test'
--- Percona-Server/mysql-test/extra/binlog_tests/blackhole.test 2010-11-17 10:16:13 +0000
+++ Percona-Server/mysql-test/extra/binlog_tests/blackhole.test 2013-05-12 06:41:27 +0000
@@ -199,7 +199,7 @@
199insert into t1 values (NULL), (33), (NULL);199insert into t1 values (NULL), (33), (NULL);
200set insert_id= 5;200set insert_id= 5;
201insert into t1 values (55), (NULL);201insert into t1 values (55), (NULL);
202source include/show_binlog_events2.inc;202source include/show_binlog_events.inc;
203203
204# cleanup204# cleanup
205drop table t1;205drop table t1;
206206
=== modified file 'Percona-Server/mysql-test/extra/binlog_tests/mysqlbinlog_row_engine.inc'
--- Percona-Server/mysql-test/extra/binlog_tests/mysqlbinlog_row_engine.inc 2013-01-18 04:53:12 +0000
+++ Percona-Server/mysql-test/extra/binlog_tests/mysqlbinlog_row_engine.inc 2013-05-12 06:41:27 +0000
@@ -1809,6 +1809,10 @@
1809 ('2008-03-08','VARCHAR-03-08',38),1809 ('2008-03-08','VARCHAR-03-08',38),
1810 ('2008-03-09','VARCHAR-03-09',39);1810 ('2008-03-09','VARCHAR-03-09',39);
18111811
1812ANALYZE TABLE t1;
1813ANALYZE TABLE t2;
1814ANALYZE TABLE t3;
1815
1812--echo #1816--echo #
1813--echo # Multi-table update.1817--echo # Multi-table update.
1814--echo #1818--echo #
18151819
=== modified file 'Percona-Server/mysql-test/extra/binlog_tests/mysqlbinlog_start_stop_2.inc'
--- Percona-Server/mysql-test/extra/binlog_tests/mysqlbinlog_start_stop_2.inc 2012-01-06 20:00:48 +0000
+++ Percona-Server/mysql-test/extra/binlog_tests/mysqlbinlog_start_stop_2.inc 2013-05-12 06:41:27 +0000
@@ -30,5 +30,5 @@
30--echo ---- $option_text ----30--echo ---- $option_text ----
3131
32# Print output32# Print output
33--replace_regex /SET @@SESSION.GTID_NEXT= '.*'/SET @@SESSION.GTID_NEXT= 'GTID';/ /([0-9A-F\-]{36})\:[0-9]+\-[0-9]+/UUID:#-#/33--replace_regex /SET @@SESSION.GTID_NEXT= '.*'/SET @@SESSION.GTID_NEXT= 'GTID';/ /([0-9A-Fa-f\-]{36})\:[0-9]+\-[0-9]+/UUID:#-#/
34--exec $MYSQL_BINLOG --short-form $option $extra_options34--exec $MYSQL_BINLOG --short-form $option $extra_options
3535
=== modified file 'Percona-Server/mysql-test/extra/rpl_tests/delayed_slave_wait_on_query.inc'
--- Percona-Server/mysql-test/extra/rpl_tests/delayed_slave_wait_on_query.inc 2012-02-17 19:46:49 +0000
+++ Percona-Server/mysql-test/extra/rpl_tests/delayed_slave_wait_on_query.inc 2013-05-12 06:41:27 +0000
@@ -31,11 +31,11 @@
3131
32--let $assert_text= Query $query_number should not be executed32--let $assert_text= Query $query_number should not be executed
33--let $assert_cond= MAX(b) < $query_number FROM t133--let $assert_cond= MAX(b) < $query_number FROM t1
34--source include/rpl_assert.inc34--source include/assert.inc
3535
36--let $assert_text= Status should be 'Waiting until MASTER_DELAY...'36--let $assert_text= Status should be 'Waiting until MASTER_DELAY...'
37--let $assert_cond= "[SHOW SLAVE STATUS, Slave_SQL_Running_State, 1]" LIKE "Waiting until MASTER_DELAY%"37--let $assert_cond= "[SHOW SLAVE STATUS, Slave_SQL_Running_State, 1]" LIKE "Waiting until MASTER_DELAY%"
38--source include/rpl_assert.inc38--source include/assert.inc
3939
40--echo # sleep 1*T40--echo # sleep 1*T
41--sleep $time141--sleep $time1
@@ -45,11 +45,11 @@
4545
46--let $assert_text= Query $query_number should be executed46--let $assert_text= Query $query_number should be executed
47--let $assert_cond= MAX(b) = $query_number FROM t147--let $assert_cond= MAX(b) = $query_number FROM t1
48--source include/rpl_assert.inc48--source include/assert.inc
4949
50--let $assert_text= Status should be 'Has read all relay log...'50--let $assert_text= Status should be 'Has read all relay log...'
51--let $assert_cond= "[SHOW SLAVE STATUS, Slave_SQL_Running_State, 1]" LIKE "Slave has read all relay log%"51--let $assert_cond= "[SHOW SLAVE STATUS, Slave_SQL_Running_State, 1]" LIKE "Slave has read all relay log%"
52--source include/rpl_assert.inc52--source include/assert.inc
5353
5454
55--source include/check_slave_is_running.inc55--source include/check_slave_is_running.inc
5656
=== modified file 'Percona-Server/mysql-test/extra/rpl_tests/rpl_deadlock.test'
--- Percona-Server/mysql-test/extra/rpl_tests/rpl_deadlock.test 2012-07-26 16:05:43 +0000
+++ Percona-Server/mysql-test/extra/rpl_tests/rpl_deadlock.test 2013-05-12 06:41:27 +0000
@@ -25,7 +25,8 @@
25SHOW CREATE TABLE t1;25SHOW CREATE TABLE t1;
26SHOW CREATE TABLE t2;26SHOW CREATE TABLE t2;
27SHOW CREATE TABLE t3;27SHOW CREATE TABLE t3;
28SHOW VARIABLES LIKE 'slave_transaction_retries';28SELECT @@GLOBAL.slave_transaction_retries;
29SELECT @@GLOBAL.innodb_lock_wait_timeout;
29--source include/stop_slave.inc30--source include/stop_slave.inc
3031
31connection master;32connection master;
@@ -50,7 +51,7 @@
50# Save variable 'Slave_retried_transactions' before deadlock51# Save variable 'Slave_retried_transactions' before deadlock
51let $slave_retried_transactions= query_get_value(SHOW GLOBAL STATUS LIKE 'Slave_retried_transactions', Value, 1);52let $slave_retried_transactions= query_get_value(SHOW GLOBAL STATUS LIKE 'Slave_retried_transactions', Value, 1);
52--connection slave253--connection slave2
53START SLAVE;54--source include/start_slave.inc
54--connection slave55--connection slave
55# Wait until SQL thread blocked: variable 'Slave_retried_transactions' will incremented56# Wait until SQL thread blocked: variable 'Slave_retried_transactions' will incremented
56let $status_var= Slave_retried_transactions;57let $status_var= Slave_retried_transactions;
@@ -60,13 +61,12 @@
60--source include/wait_for_status_var.inc61--source include/wait_for_status_var.inc
61SELECT COUNT(*) FROM t2;62SELECT COUNT(*) FROM t2;
62COMMIT;63COMMIT;
64source include/check_slave_is_running.inc;
63sync_with_master;65sync_with_master;
6466
65# Check the data67# Check the data
66SELECT * FROM t1;68SELECT * FROM t1;
67SELECT * FROM t3;69SELECT * FROM t3;
68# Check that no error is reported
69source include/check_slave_is_running.inc;
70--echo70--echo
7171
72# 2) Test lock wait timeout72# 2) Test lock wait timeout
@@ -181,7 +181,9 @@
181181
182let $slave_sql_errno= 1205; # ER_LOCK_TIMEOUT182let $slave_sql_errno= 1205; # ER_LOCK_TIMEOUT
183let $show_slave_sql_error= 0;183let $show_slave_sql_error= 0;
184let $rpl_debug= 1;
184source include/wait_for_slave_sql_error.inc;185source include/wait_for_slave_sql_error.inc;
186let $rpl_debug= 0;
185187
186rollback;188rollback;
187189
188190
=== modified file 'Percona-Server/mysql-test/extra/rpl_tests/rpl_mts_crash_safe.inc'
--- Percona-Server/mysql-test/extra/rpl_tests/rpl_mts_crash_safe.inc 2013-01-18 04:53:12 +0000
+++ Percona-Server/mysql-test/extra/rpl_tests/rpl_mts_crash_safe.inc 2013-05-12 06:41:27 +0000
@@ -118,7 +118,10 @@
118 --echo ** fixing gaps **118 --echo ** fixing gaps **
119 --let $rpl_server_number= 2119 --let $rpl_server_number= 2
The diff has been truncated for viewing.

Subscribers

People subscribed via source and target branches