From 7e54c6cfadaccff3c6ad88c27f72e17a6d1eeabc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Otto=20Kek=C3=A4l=C3=A4inen?= Date: Fri, 3 May 2019 09:19:56 +0300 Subject: [PATCH] New upstream version 10.1.39 --- CMakeLists.txt | 13 +- Docs/INFO_SRC | 10 +- VERSION | 2 +- client/CMakeLists.txt | 2 +- client/mysql.cc | 3 +- client/mysql_plugin.c | 8 +- client/mysqlbinlog.cc | 23 +- client/mysqlcheck.c | 3 +- client/mysqldump.c | 63 +- client/mysqltest.cc | 60 +- .../build_configurations/mysql_release.cmake | 4 +- cmake/build_depends.cmake | 39 + cmake/cpack_rpm.cmake | 59 +- cmake/cpack_source_ignore_files.cmake | 20 +- cmake/maintainer.cmake | 9 +- cmake/os/Linux.cmake | 2 +- cmake/plugin.cmake | 5 +- cmake/readline.cmake | 2 +- cmake/systemd.cmake | 14 +- configure.cmake | 2 +- dbug/tests.c | 8 + extra/mariabackup/backup_copy.cc | 7 +- extra/mariabackup/backup_mysql.cc | 30 +- extra/mariabackup/changed_page_bitmap.cc | 1 + extra/mariabackup/ds_compress.c | 1 + extra/mariabackup/encryption_plugin.cc | 8 +- extra/mariabackup/fil_cur.cc | 6 +- extra/mariabackup/xtrabackup.cc | 81 +- extra/mariabackup/xtrabackup.h | 2 +- include/my_pthread.h | 6 +- include/my_tree.h | 2 +- include/mysql/client_plugin.h | 26 +- include/mysql/service_wsrep.h | 3 + include/wsrep.h | 8 +- man/mysql_install_db.1 | 19 +- man/mysqldumpslow.1 | 24 + mysql-test/include/ctype_like_escape.inc | 6 + .../galera => }/include/galera_resume.inc | 2 +- .../include/galera_suspend.inc | 2 +- mysql-test/include/index_merge1.inc | 4 + mysql-test/include/index_merge2.inc | 8 + mysql-test/include/index_merge_2sweeps.inc | 2 + mysql-test/include/index_merge_ror.inc | 8 + mysql-test/include/index_merge_ror_cpk.inc | 4 +- mysql-test/include/mix2.inc | 2 +- mysql-test/lib/generate-ssl-certs.sh | 2 +- mysql-test/mysql-test-run.pl | 6 +- mysql-test/r/analyze_stmt.result | 6 +- mysql-test/r/create_drop_binlog.result | 4 + mysql-test/r/create_drop_event.result | 5 + mysql-test/r/create_drop_role.result | 9 + mysql-test/r/ctype_big5.result | 12 + mysql-test/r/ctype_euckr.result | 12 + mysql-test/r/ctype_gb2312.result | 12 + mysql-test/r/ctype_gbk.result | 12 + mysql-test/r/ctype_latin1.result | 12 + mysql-test/r/ctype_sjis.result | 12 + mysql-test/r/ctype_tis620.result | 12 + mysql-test/r/ctype_uca.result | 6 + mysql-test/r/ctype_ucs.result | 12 + mysql-test/r/ctype_ujis.result | 12 + mysql-test/r/ctype_utf16.result | 12 + mysql-test/r/ctype_utf16_uca.result | 6 + mysql-test/r/ctype_utf16le.result | 12 + mysql-test/r/ctype_utf32.result | 12 + mysql-test/r/ctype_utf32_uca.result | 6 + mysql-test/r/ctype_utf8.result | 12 + mysql-test/r/ctype_utf8mb4.result | 12 + mysql-test/r/ctype_utf8mb4_heap.result | 12 + mysql-test/r/ctype_utf8mb4_innodb.result | 12 + mysql-test/r/ctype_utf8mb4_myisam.result | 12 + mysql-test/r/ddl_i18n_koi8r.result | 84 +- mysql-test/r/ddl_i18n_utf8.result | 84 +- mysql-test/r/events_1.result | 72 +- mysql-test/r/events_2.result | 30 + mysql-test/r/events_bugs.result | 54 + mysql-test/r/events_grant.result | 10 + mysql-test/r/events_restart.result | 26 +- mysql-test/r/events_trans.result | 9 + mysql-test/r/flush_read_lock.result | 2 + mysql-test/r/func_gconcat.result | 28 +- mysql-test/r/func_group.result | 8 +- mysql-test/r/func_hybrid_type.result | 40 +- mysql-test/r/func_math.result | 43 + mysql-test/r/func_str.result | 81 + mysql-test/r/func_time.result | 30 + mysql-test/r/gis-precise.result | 4 + mysql-test/r/gis.result | 14 + mysql-test/r/gis2.result | 14 - mysql-test/r/gis_notembedded.result | 42 + mysql-test/r/grant4.result | 21 + mysql-test/r/index_merge_innodb.result | 5 + mysql-test/r/index_merge_myisam.result | 3 + .../r/information_schema_prepare.result | 4 + mysql-test/r/loaddata.result | 50 + mysql-test/r/lock_sync.result | 4 + mysql-test/r/log_slow.result | 37 + mysql-test/r/log_slow_debug.result | 137 + mysql-test/r/mdev_19276.result | 9 + mysql-test/r/multi_update.result | 21 + ...update2.result => multi_update_big.result} | 0 mysql-test/r/mysql.result | 4 + mysql-test/r/mysqld--help,win.rdiff | 2 +- mysql-test/r/mysqld--help.result | 2 +- mysql-test/r/mysqldump-compat.result | 4 + mysql-test/r/mysqldump.result | 16 + mysql-test/r/olap.result | 54 + mysql-test/r/partition.result | 2 +- mysql-test/r/partition_innodb.result | 42 + mysql-test/r/ps.result | 23 + mysql-test/r/show_check.result | 8 +- mysql-test/r/sp-ucs2.result | 34 +- mysql-test/r/sp.result | 51 +- mysql-test/r/sp_notembedded.result | 4 +- mysql-test/r/sp_trans.result | 2 +- mysql-test/r/ssl.result | 4 +- mysql-test/r/ssl_verify_ip.result | 4 + mysql-test/r/stat_tables.result | 69 + mysql-test/r/stat_tables_innodb.result | 69 + mysql-test/r/statistics.result | 14 + mysql-test/r/status2.result | 4 +- mysql-test/r/subselect_sj.result | 7 + mysql-test/r/subselect_sj_jcl6.result | 7 + mysql-test/r/timezone2.result | 33 + mysql-test/r/type_bit.result | 7 + mysql-test/r/type_date.result | 25 + mysql-test/r/type_decimal.result | 20 + mysql-test/r/type_year.result | 9 + mysql-test/r/update_innodb.result | 24 + mysql-test/r/userstat.result | 12 +- mysql-test/r/view_grant.result | 4 + mysql-test/std_data/cacert.pem | 116 +- mysql-test/std_data/cakey.pem | 52 +- mysql-test/std_data/client-cert.pem | 84 +- mysql-test/std_data/client-key.pem | 26 +- mysql-test/std_data/server-cert.pem | 84 +- mysql-test/std_data/server-key.pem | 26 +- mysql-test/std_data/server8k-cert.pem | 242 +- mysql-test/std_data/server8k-key.pem | 194 +- mysql-test/std_data/serversan-cert.pem | 80 +- mysql-test/std_data/serversan-key.pem | 28 +- mysql-test/suite.pm | 5 + mysql-test/suite/archive/archive_eits.result | 24 + mysql-test/suite/archive/archive_eits.test | 32 + .../suite/binlog/r/binlog_innodb_stm.result | 17 + .../suite/binlog/r/binlog_mdev717.result | 2 + .../suite/binlog/r/binlog_mysqlbinlog2.result | 434 +-- .../suite/binlog/r/binlog_sql_mode.result | 2 + .../suite/binlog/t/binlog_innodb_stm.test | 26 + .../suite/binlog/t/binlog_mysqlbinlog2.test | 22 +- .../r/innodb-checksum-algorithm,32k.rdiff | 18 +- .../r/innodb-checksum-algorithm,64k.rdiff | 18 +- .../r/innodb-checksum-algorithm.result | 18 + .../r/innodb-compressed-blob.result | 2 + .../r/innodb-encryption-alter.result | 35 +- .../encryption/t/innodb-encryption-alter.test | 14 +- .../funcs_1/datadict/processlist_priv.inc | 13 + .../funcs_1/datadict/processlist_val.inc | 7 + mysql-test/suite/galera/disabled.def | 38 +- mysql-test/suite/galera/r/MW-388.result | 12 +- mysql-test/suite/galera/r/MW-86-wait1.result | 11 +- mysql-test/suite/galera/r/MW-86-wait8.result | 11 +- .../r/galera_binlog_stmt_autoinc.result | 28 +- .../suite/galera/r/galera_events.result | 2 + .../galera/r/galera_kill_largechanges.result | 17 +- .../galera/r/galera_kill_nochanges.result | 10 +- .../galera/r/galera_kill_smallchanges.result | 5 +- .../suite/galera/r/galera_many_rows.result | 26 +- .../suite/galera/r/galera_mdl_race.result | 16 +- .../r/galera_query_cache_sync_wait.result | 24 +- .../galera/r/galera_var_slave_threads.result | 38 +- mysql-test/suite/galera/suite.pm | 1 + mysql-test/suite/galera/t/MW-388.test | 10 +- mysql-test/suite/galera/t/MW-86-wait1.test | 5 +- mysql-test/suite/galera/t/MW-86-wait8.test | 5 +- .../t/galera_autoinc_sst_mariabackup.test | 10 +- .../galera/t/galera_kill_largechanges.test | 17 +- .../suite/galera/t/galera_kill_nochanges.test | 14 +- .../galera/t/galera_kill_smallchanges.test | 11 +- .../suite/galera/t/galera_many_rows.cnf | 5 + .../suite/galera/t/galera_many_rows.test | 19 +- .../suite/galera/t/galera_mdl_race.test | 17 +- .../t/galera_query_cache_sync_wait.test | 13 +- .../galera/t/galera_var_dirty_reads.test | 5 - .../galera/t/galera_var_slave_threads.test | 29 +- .../suite/galera_3nodes/galera_2x3nodes.cnf | 1 + .../suite/galera_3nodes/galera_3nodes.cnf | 1 + .../r/galera_ipv6_mariabackup_section.result | 18 + .../r/galera_ipv6_rsync_section.result | 14 + .../galera_3nodes/r/galera_pc_weight.result | 9 + .../r/galera_safe_to_bootstrap.result | 10 + mysql-test/suite/galera_3nodes/suite.pm | 6 +- .../suite/galera_3nodes/t/galera_garbd.test | 20 +- .../t/galera_innobackupex_backup.test | 2 +- .../t/galera_ipv6_mariabackup.test | 2 +- .../t/galera_ipv6_mariabackup_section.cnf | 39 + .../t/galera_ipv6_mariabackup_section.opt | 1 + .../t/galera_ipv6_mariabackup_section.test | 69 + .../galera_3nodes/t/galera_ipv6_mysqldump.opt | 1 + .../galera_3nodes/t/galera_ipv6_rsync.opt | 1 + .../t/galera_ipv6_rsync_section.cnf | 31 + .../t/galera_ipv6_rsync_section.opt | 1 + .../t/galera_ipv6_rsync_section.test | 32 + .../t/galera_ist_gcache_rollover.cnf | 6 +- .../t/galera_ist_gcache_rollover.test | 13 + .../t/galera_safe_to_bootstrap.test | 32 +- .../t/galera_var_dirty_reads2.test | 14 + mysql-test/suite/handler/ps.test | 2 + mysql-test/suite/innodb/r/alter_crash.result | 152 + mysql-test/suite/innodb/r/foreign-keys.result | 13 + mysql-test/suite/innodb/r/foreign_key.result | 31 + .../innodb/r/innodb-alter-nullable.result | 34 + mysql-test/suite/innodb/r/innodb-index.result | 27 + .../suite/innodb/r/innodb-truncate.result | 13 + mysql-test/suite/innodb/r/xa_debug.result | 311 ++ mysql-test/suite/innodb/t/alter_crash.test | 229 ++ mysql-test/suite/innodb/t/foreign-keys.test | 15 + mysql-test/suite/innodb/t/foreign_key.test | 30 + .../suite/innodb/t/innodb-alter-nullable.test | 26 + .../innodb/t/innodb-corrupted-table.test | 1 + mysql-test/suite/innodb/t/innodb-index.test | 20 + .../suite/innodb/t/innodb-truncate.test | 18 + mysql-test/suite/innodb/t/innodb.test | 2 +- mysql-test/suite/innodb/t/xa_debug.test | 46 + .../mariabackup/absolute_ibdata_paths.opt | 2 +- .../mariabackup/absolute_ibdata_paths.test | 26 +- .../mariabackup/page_compression_level.result | 14 + .../mariabackup/page_compression_level.test | 31 + .../r/partition_auto_increment_max.result | 7 + .../parts/t/partition_auto_increment_max.test | 12 + .../perfschema/r/pfs_upgrade_event.result | 2 + mysql-test/suite/plugins/r/pam.result | 20 + mysql-test/suite/plugins/t/pam.test | 24 +- .../plugins/t/thread_pool_server_audit.test | 2 + .../suite/roles/flush_roles-17898.result | 27 + mysql-test/suite/roles/flush_roles-17898.test | 25 + .../suite/rpl/r/kill_race_condition.result | 13 + .../suite/rpl/r/rpl_create_drop_event.result | 4 + .../suite/rpl/r/rpl_current_user.result | 2 + mysql-test/suite/rpl/r/rpl_events.result | 6 + .../suite/rpl/r/rpl_heartbeat_basic.result | 2 + .../suite/rpl/r/rpl_innodb_mixed_dml.result | 2 + .../suite/rpl/r/rpl_invoked_features.result | 4 + mysql-test/suite/rpl/r/rpl_killed_ddl.result | 2 + .../r/rpl_mixed_implicit_commit_binlog.result | 2 + mysql-test/suite/rpl/r/rpl_rewrt_db.result | 19 + .../r/rpl_row_implicit_commit_binlog.result | 2 + .../r/rpl_slave_invalid_external_user.result | 15 + .../r/rpl_stm_implicit_commit_binlog.result | 2 + .../suite/rpl/r/rpl_tmp_table_and_DDL.result | 4 + .../suite/rpl/t/kill_race_condition.test | 28 + mysql-test/suite/rpl/t/rpl_rewrt_db-slave.opt | 2 +- mysql-test/suite/rpl/t/rpl_rewrt_db.test | 19 + .../t/rpl_slave_invalid_external_user.test | 42 + mysql-test/suite/storage_engine/vcol.result | 16 +- .../suite/sys_vars/inc/sysvars_server.inc | 2 +- .../r/sysvars_innodb,32bit,xtradb.rdiff | 4 +- .../sys_vars/r/sysvars_innodb,xtradb.rdiff | 4 +- .../suite/sys_vars/r/sysvars_innodb.result | 2 +- .../sys_vars/r/sysvars_server_embedded.result | 4 +- .../r/sysvars_server_notembedded.result | 4 +- .../sys_vars/r/thread_stack_basic.result | 10 +- .../t/max_prepared_stmt_count_func.test | 2 +- .../sys_vars/t/sql_buffer_result_func.test | 10 + .../suite/sys_vars/t/thread_stack_basic.test | 10 +- .../t/transaction_prealloc_size_bug27322.test | 9 +- .../suite/vcol/r/vcol_ins_upd_innodb.result | 20 +- .../suite/vcol/r/vcol_ins_upd_myisam.result | 20 +- mysql-test/suite/vcol/r/vcol_misc.result | 12 +- .../suite/vcol/r/vcol_select_myisam.result | 6 +- mysql-test/suite/vcol/t/wrong_arena.test | 2 + mysql-test/t/analyze_stmt.test | 6 +- mysql-test/t/create_drop_role.test | 11 + mysql-test/t/ddl_i18n_koi8r.test | 8 +- mysql-test/t/ddl_i18n_utf8.test | 8 +- mysql-test/t/events_1.test | 4 +- mysql-test/t/events_stress.test | 1 + mysql-test/t/func_gconcat.test | 31 +- mysql-test/t/func_hybrid_type.test | 20 + mysql-test/t/func_math.test | 33 + mysql-test/t/func_str.test | 66 + mysql-test/t/func_time.test | 30 + mysql-test/t/gis-precise.test | 6 + mysql-test/t/gis.test | 17 + mysql-test/t/gis2.test | 17 - mysql-test/t/gis_notembedded.test | 24 + mysql-test/t/grant4.test | 31 +- mysql-test/t/index_merge_innodb.test | 2 + mysql-test/t/information_schema_prepare.test | 7 + mysql-test/t/insert.test | 2 +- mysql-test/t/kill_processlist-6619.test | 2 + mysql-test/t/loaddata.test | 45 + mysql-test/t/log_slow.test | 40 + mysql-test/t/log_slow_debug.test | 126 + mysql-test/t/log_tables.test | 2 + mysql-test/t/mdev_19276.test | 17 + mysql-test/t/multi_update.test | 31 + ...pdate2-master.opt => multi_update_big.opt} | 0 ...lti_update2.test => multi_update_big.test} | 0 mysql-test/t/mysql.test | 6 + mysql-test/t/mysqld--help.test | 2 +- mysql-test/t/mysqldump-compat.test | 13 + mysql-test/t/olap.test | 37 + mysql-test/t/old-mode.test | 3 +- mysql-test/t/partition.test | 2 +- mysql-test/t/partition_innodb.test | 24 + mysql-test/t/ps.test | 16 + mysql-test/t/show_check.test | 18 +- mysql-test/t/sp-ucs2.test | 16 +- mysql-test/t/sp.test | 52 +- mysql-test/t/sp_notembedded.test | 2 +- mysql-test/t/sp_trans.test | 2 +- mysql-test/t/ssl_verify_ip.opt | 3 + mysql-test/t/ssl_verify_ip.test | 3 + mysql-test/t/stat_tables.test | 54 + mysql-test/t/statistics.test | 15 + mysql-test/t/status2.test | 4 +- mysql-test/t/subselect_sj.test | 10 + mysql-test/t/subselect_sj_mat.test | 2 + mysql-test/t/temp_table.test | 2 + mysql-test/t/timezone2.test | 31 + mysql-test/t/tmp_table_count-7586.test | 4 + mysql-test/t/type_bit.test | 10 + mysql-test/t/type_date.test | 14 + mysql-test/t/type_decimal.test | 21 + mysql-test/t/type_year.test | 11 + mysql-test/t/update_innodb.test | 29 + mysql-test/t/userstat.test | 7 +- mysql-test/t/view.test | 4 + mysql-test/t/view_grant.test | 5 + mysql-test/unstable-tests | 183 +- mysys/thr_lock.c | 11 - mysys/tree.c | 48 +- pcre/AUTHORS | 6 +- pcre/ChangeLog | 43 + pcre/LICENCE | 10 +- pcre/NEWS | 10 + pcre/configure.ac | 10 +- pcre/pcre_compile.c | 18 +- pcre/pcre_jit_compile.c | 2 +- pcre/pcrecpp.cc | 64 +- pcre/pcrecpp_unittest.cc | 34 +- pcre/pcregrep.c | 4 +- pcre/testdata/testinput1 | 15 + pcre/testdata/testinput2 | 3 + pcre/testdata/testinput4 | 3 + pcre/testdata/testoutput1 | 24 + pcre/testdata/testoutput2 | 4 + pcre/testdata/testoutput4 | 4 + plugin/auth_gssapi/cmake/FindGSSAPI.cmake | 2 +- plugin/auth_pam/CMakeLists.txt | 1 + plugin/auth_pam/auth_pam.c | 14 +- plugin/aws_key_management/CMakeLists.txt | 6 + plugin/server_audit/server_audit.c | 13 +- scripts/maria_add_gis_sp.sql.in | 4 +- scripts/mysql_install_db.sh | 16 +- scripts/mysqldumpslow.sh | 9 +- scripts/wsrep_sst_common.sh | 2 - scripts/wsrep_sst_mariabackup.sh | 96 +- scripts/wsrep_sst_rsync.sh | 7 +- scripts/wsrep_sst_xtrabackup-v2.sh | 3 - sql-common/client.c | 12 +- sql/debug_sync.cc | 6 +- sql/encryption.cc | 15 +- sql/events.cc | 6 + sql/field.h | 51 +- sql/gcalc_slicescan.cc | 2 + sql/gen_win_tzname_data.ps1 | 11 + sql/ha_partition.cc | 55 +- sql/handler.cc | 55 +- sql/handler.h | 7 +- sql/item.cc | 5 +- sql/item.h | 56 + sql/item_cmpfunc.cc | 6 +- sql/item_func.cc | 20 +- sql/item_func.h | 13 +- sql/item_strfunc.cc | 36 +- sql/item_strfunc.h | 23 +- sql/item_sum.cc | 110 +- sql/item_sum.h | 11 +- sql/item_timefunc.cc | 18 +- sql/log.cc | 6 +- sql/log_event.cc | 27 +- sql/log_event_old.cc | 19 +- sql/log_slow.h | 1 + sql/mdl.h | 10 + sql/mysqld.cc | 68 +- sql/opt_range.cc | 16 +- sql/opt_subselect.cc | 2 +- sql/partition_info.cc | 11 +- sql/protocol.h | 67 +- sql/records.h | 2 - sql/share/errmsg-utf8.txt | 6 +- sql/sp_head.cc | 4 +- sql/sql_acl.cc | 144 +- sql/sql_acl.h | 2 + sql/sql_admin.cc | 9 +- sql/sql_alter.cc | 14 +- sql/sql_analyse.cc | 4 +- sql/sql_analyse.h | 5 +- sql/sql_base.cc | 92 +- sql/sql_base.h | 17 +- sql/sql_class.cc | 33 +- sql/sql_class.h | 34 +- sql/sql_db.cc | 26 +- sql/sql_db.h | 2 +- sql/sql_delete.cc | 6 +- sql/sql_derived.cc | 31 +- sql/sql_derived.h | 1 - sql/sql_handler.cc | 7 +- sql/sql_insert.cc | 11 +- sql/sql_lex.cc | 17 +- sql/sql_lex.h | 36 +- sql/sql_load.cc | 14 +- sql/sql_parse.cc | 203 +- sql/sql_partition_admin.cc | 1 - sql/sql_plugin_services.ic | 1 + sql/sql_prepare.cc | 64 +- sql/sql_priv.h | 6 - sql/sql_select.cc | 34 +- sql/sql_select.h | 1 - sql/sql_show.cc | 58 +- sql/sql_signal.cc | 14 - sql/sql_statistics.cc | 19 +- sql/sql_string.cc | 21 + sql/sql_string.h | 5 - sql/sql_table.cc | 20 +- sql/sql_trigger.cc | 4 +- sql/sql_truncate.cc | 14 +- sql/sql_union.cc | 36 +- sql/sql_update.cc | 39 +- sql/sql_view.cc | 28 +- sql/sql_yacc.cc | 3302 +++++++++-------- sql/sql_yacc.yy | 42 +- sql/sys_vars.cc | 93 +- sql/table.cc | 3 +- sql/table.h | 16 +- sql/tztime.cc | 11 +- sql/win_tzname_data.h | 136 + sql/wsrep_binlog.cc | 1 - sql/wsrep_dummy.cc | 8 + sql/wsrep_sst.cc | 11 +- sql/wsrep_thd.cc | 21 + storage/archive/ha_archive.cc | 50 +- storage/archive/ha_archive.h | 3 + storage/connect/CMakeLists.txt | 36 +- storage/connect/filter.h | 1 + storage/connect/ha_connect.cc | 123 +- storage/connect/ha_connect.h | 7 +- storage/connect/jmgoconn.cpp | 4 +- storage/connect/json.h | 1 - storage/connect/jsonudf.cpp | 50 +- storage/connect/mycat.cc | 13 - storage/connect/plugutil.cpp | 2 +- storage/connect/tabdos.cpp | 42 +- storage/connect/tabext.cpp | 43 +- storage/connect/tabext.h | 5 +- storage/connect/tabfmt.cpp | 13 +- storage/connect/tabjdbc.cpp | 67 +- storage/connect/tabjson.cpp | 8 +- storage/connect/user_connect.cc | 3 +- storage/connect/value.cpp | 97 +- storage/connect/value.h | 16 +- storage/federated/ha_federated.cc | 1 - storage/federated/ha_federated.h | 1 - storage/federatedx/federatedx_io.cc | 2 - storage/federatedx/ha_federatedx.cc | 1 - storage/federatedx/ha_federatedx.h | 1 - storage/innobase/CMakeLists.txt | 8 + storage/innobase/btr/btr0scrub.cc | 4 +- storage/innobase/buf/buf0buddy.cc | 3 +- storage/innobase/buf/buf0buf.cc | 33 +- storage/innobase/data/data0data.cc | 3 +- storage/innobase/dict/dict0dict.cc | 116 +- storage/innobase/dict/dict0mem.cc | 6 +- storage/innobase/dict/dict0stats.cc | 5 +- storage/innobase/fil/fil0crypt.cc | 4 +- storage/innobase/fts/fts0blex.cc | 1114 +++--- storage/innobase/fts/fts0fts.cc | 8 +- storage/innobase/fts/fts0opt.cc | 19 +- storage/innobase/fts/fts0tlex.cc | 827 +++-- storage/innobase/handler/ha_innodb.cc | 187 +- storage/innobase/handler/handler0alter.cc | 48 +- storage/innobase/handler/i_s.cc | 156 +- storage/innobase/include/data0data.ic | 28 +- storage/innobase/include/dict0crea.ic | 10 +- storage/innobase/include/dict0dict.ic | 42 +- storage/innobase/include/fts0blex.h | 465 ++- storage/innobase/include/fts0tlex.h | 465 ++- storage/innobase/include/handler0alter.h | 11 +- storage/innobase/include/pars0pars.h | 5 +- storage/innobase/include/rem0rec.ic | 24 +- storage/innobase/include/trx0trx.h | 5 +- storage/innobase/include/trx0trx.ic | 3 +- storage/innobase/include/trx0types.h | 7 +- storage/innobase/include/univ.i | 4 +- storage/innobase/include/ut0dbg.h | 3 +- storage/innobase/include/ut0wqueue.h | 15 +- storage/innobase/lock/lock0lock.cc | 7 +- storage/innobase/os/os0file.cc | 2 +- storage/innobase/pars/lexyy.cc | 506 ++- storage/innobase/pars/make_flex.sh | 9 +- storage/innobase/pars/pars0lex.l | 4 +- storage/innobase/pars/pars0pars.cc | 9 +- storage/innobase/rem/rem0rec.cc | 18 +- storage/innobase/row/row0ftsort.cc | 14 +- storage/innobase/row/row0ins.cc | 7 - storage/innobase/row/row0merge.cc | 19 +- storage/innobase/row/row0mysql.cc | 26 +- storage/innobase/row/row0purge.cc | 4 +- storage/innobase/row/row0row.cc | 5 +- storage/innobase/row/row0upd.cc | 5 +- storage/innobase/srv/srv0start.cc | 7 +- storage/innobase/trx/trx0purge.cc | 4 +- storage/innobase/trx/trx0rec.cc | 6 +- storage/innobase/trx/trx0roll.cc | 6 +- storage/innobase/trx/trx0trx.cc | 34 +- storage/innobase/ut/ut0wqueue.cc | 19 +- storage/maria/ma_delete.c | 2 - storage/maria/ma_test3.c | 2 +- storage/maria/ma_write.c | 20 +- storage/maria/maria_chk.c | 4 +- storage/maria/maria_def.h | 4 +- storage/mroonga/ha_mroonga.cpp | 8 +- storage/mroonga/lib/mrn_context_pool.cpp | 2 +- storage/myisam/mi_test3.c | 2 +- storage/myisam/mi_write.c | 19 +- storage/myisam/myisamchk.c | 4 +- storage/myisam/myisamlog.c | 8 +- storage/myisammrg/ha_myisammrg.cc | 47 +- .../mysql-test/storage_engine/vcol.rdiff | 16 +- storage/perfschema/pfs_events.h | 12 +- storage/perfschema/pfs_events_waits.h | 34 +- storage/sequence/sequence.cc | 9 +- storage/spider/spd_table.cc | 6 +- storage/tokudb/.clang-format | 40 + .../PerconaFT/ftcxx/tests/CMakeLists.txt | 4 +- storage/tokudb/ha_tokudb.cc | 28 +- storage/tokudb/ha_tokudb.h | 2 +- storage/tokudb/ha_tokudb_mrr_mysql.cc | 1 + .../rpl/r/rpl_tokudb_mixed_dml.result | 2 + .../mysql-test/tokudb_bugs/r/PS-5158.result | 6 + .../mysql-test/tokudb_bugs/r/PS-5163.result | 5 + .../tokudb_bugs/t/PS-5158-master.opt | 2 + .../mysql-test/tokudb_bugs/t/PS-5158.test | 27 + .../mysql-test/tokudb_bugs/t/PS-5163.test | 11 + storage/xtradb/CMakeLists.txt | 2 + storage/xtradb/btr/btr0scrub.cc | 4 +- storage/xtradb/buf/buf0buddy.cc | 2 +- storage/xtradb/buf/buf0buf.cc | 31 +- storage/xtradb/data/data0data.cc | 3 +- storage/xtradb/dict/dict0dict.cc | 116 +- storage/xtradb/dict/dict0mem.cc | 6 +- storage/xtradb/dict/dict0stats.cc | 5 +- storage/xtradb/fil/fil0crypt.cc | 4 +- storage/xtradb/fil/fil0fil.cc | 6 - storage/xtradb/fts/fts0blex.cc | 1086 +++--- storage/xtradb/fts/fts0fts.cc | 13 +- storage/xtradb/fts/fts0opt.cc | 19 +- storage/xtradb/fts/fts0tlex.cc | 799 ++-- storage/xtradb/handler/ha_innodb.cc | 190 +- storage/xtradb/handler/handler0alter.cc | 48 +- storage/xtradb/handler/i_s.cc | 147 +- storage/xtradb/include/data0data.ic | 28 +- storage/xtradb/include/dict0crea.ic | 10 +- storage/xtradb/include/dict0dict.ic | 40 +- storage/xtradb/include/fts0blex.h | 465 ++- storage/xtradb/include/fts0tlex.h | 465 ++- storage/xtradb/include/handler0alter.h | 11 +- storage/xtradb/include/log0online.h | 3 +- storage/xtradb/include/pars0pars.h | 5 +- storage/xtradb/include/rem0rec.ic | 24 +- storage/xtradb/include/trx0trx.h | 5 +- storage/xtradb/include/trx0trx.ic | 3 +- storage/xtradb/include/trx0types.h | 7 +- storage/xtradb/include/univ.i | 6 +- storage/xtradb/include/ut0dbg.h | 3 +- storage/xtradb/include/ut0wqueue.h | 15 +- storage/xtradb/lock/lock0lock.cc | 7 +- storage/xtradb/log/log0online.cc | 7 +- storage/xtradb/pars/lexyy.cc | 484 ++- storage/xtradb/pars/make_flex.sh | 9 +- storage/xtradb/pars/pars0lex.l | 10 +- storage/xtradb/pars/pars0pars.cc | 9 +- storage/xtradb/rem/rem0rec.cc | 18 +- storage/xtradb/row/row0ftsort.cc | 14 +- storage/xtradb/row/row0ins.cc | 7 - storage/xtradb/row/row0merge.cc | 19 +- storage/xtradb/row/row0mysql.cc | 26 +- storage/xtradb/row/row0purge.cc | 4 +- storage/xtradb/row/row0row.cc | 5 +- storage/xtradb/row/row0upd.cc | 5 +- storage/xtradb/srv/srv0start.cc | 7 +- storage/xtradb/trx/trx0purge.cc | 4 +- storage/xtradb/trx/trx0rec.cc | 6 +- storage/xtradb/trx/trx0roll.cc | 6 +- storage/xtradb/trx/trx0trx.cc | 34 +- storage/xtradb/ut/ut0wqueue.cc | 19 +- strings/ctype-utf8.c | 31 +- support-files/rpm/server-postin.sh | 7 +- support-files/rpm/server-postun.sh | 11 +- support-files/rpm/server-preun.sh | 18 +- support-files/wsrep.cnf.sh | 4 +- tests/mysql_client_test.c | 22 +- unittest/sql/mf_iocache-t.cc | 10 +- win/packaging/create_msi.cmake.in | 5 +- 606 files changed, 15390 insertions(+), 7602 deletions(-) create mode 100644 cmake/build_depends.cmake rename mysql-test/{suite/galera => }/include/galera_resume.inc (80%) rename mysql-test/{suite/galera_3nodes => }/include/galera_suspend.inc (86%) delete mode 100644 mysql-test/r/gis2.result create mode 100644 mysql-test/r/gis_notembedded.result create mode 100644 mysql-test/r/information_schema_prepare.result create mode 100644 mysql-test/r/log_slow_debug.result create mode 100644 mysql-test/r/mdev_19276.result rename mysql-test/r/{multi_update2.result => multi_update_big.result} (100%) create mode 100644 mysql-test/r/ssl_verify_ip.result create mode 100644 mysql-test/suite/archive/archive_eits.result create mode 100644 mysql-test/suite/archive/archive_eits.test create mode 100644 mysql-test/suite/binlog/r/binlog_innodb_stm.result create mode 100644 mysql-test/suite/binlog/t/binlog_innodb_stm.test create mode 100644 mysql-test/suite/galera/t/galera_many_rows.cnf create mode 100644 mysql-test/suite/galera_3nodes/r/galera_ipv6_mariabackup_section.result create mode 100644 mysql-test/suite/galera_3nodes/r/galera_ipv6_rsync_section.result create mode 100644 mysql-test/suite/galera_3nodes/t/galera_ipv6_mariabackup_section.cnf create mode 100644 mysql-test/suite/galera_3nodes/t/galera_ipv6_mariabackup_section.opt create mode 100644 mysql-test/suite/galera_3nodes/t/galera_ipv6_mariabackup_section.test create mode 100644 mysql-test/suite/galera_3nodes/t/galera_ipv6_mysqldump.opt create mode 100644 mysql-test/suite/galera_3nodes/t/galera_ipv6_rsync.opt create mode 100644 mysql-test/suite/galera_3nodes/t/galera_ipv6_rsync_section.cnf create mode 100644 mysql-test/suite/galera_3nodes/t/galera_ipv6_rsync_section.opt create mode 100644 mysql-test/suite/galera_3nodes/t/galera_ipv6_rsync_section.test create mode 100644 mysql-test/suite/innodb/r/alter_crash.result create mode 100644 mysql-test/suite/innodb/r/xa_debug.result create mode 100644 mysql-test/suite/innodb/t/alter_crash.test create mode 100644 mysql-test/suite/innodb/t/xa_debug.test create mode 100644 mysql-test/suite/mariabackup/page_compression_level.result create mode 100644 mysql-test/suite/mariabackup/page_compression_level.test create mode 100644 mysql-test/suite/parts/r/partition_auto_increment_max.result create mode 100644 mysql-test/suite/parts/t/partition_auto_increment_max.test create mode 100644 mysql-test/suite/rpl/r/kill_race_condition.result create mode 100644 mysql-test/suite/rpl/r/rpl_slave_invalid_external_user.result create mode 100644 mysql-test/suite/rpl/t/kill_race_condition.test create mode 100644 mysql-test/suite/rpl/t/rpl_slave_invalid_external_user.test delete mode 100644 mysql-test/t/gis2.test create mode 100644 mysql-test/t/gis_notembedded.test create mode 100644 mysql-test/t/information_schema_prepare.test create mode 100644 mysql-test/t/log_slow_debug.test create mode 100644 mysql-test/t/mdev_19276.test rename mysql-test/t/{multi_update2-master.opt => multi_update_big.opt} (100%) rename mysql-test/t/{multi_update2.test => multi_update_big.test} (100%) create mode 100644 mysql-test/t/ssl_verify_ip.opt create mode 100644 mysql-test/t/ssl_verify_ip.test create mode 100644 sql/gen_win_tzname_data.ps1 create mode 100644 sql/win_tzname_data.h create mode 100644 storage/tokudb/.clang-format create mode 100644 storage/tokudb/mysql-test/tokudb_bugs/r/PS-5158.result create mode 100644 storage/tokudb/mysql-test/tokudb_bugs/r/PS-5163.result create mode 100644 storage/tokudb/mysql-test/tokudb_bugs/t/PS-5158-master.opt create mode 100644 storage/tokudb/mysql-test/tokudb_bugs/t/PS-5158.test create mode 100644 storage/tokudb/mysql-test/tokudb_bugs/t/PS-5163.test diff --git a/CMakeLists.txt b/CMakeLists.txt index ef8786aff..54645e0b5 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -214,6 +214,15 @@ IF (WITH_ASAN) ENDIF() ENDIF() +OPTION(WITH_UBSAN "Enable undefined behavior sanitizer" OFF) +IF (WITH_UBSAN) + IF(SECURITY_HARDENED) + MESSAGE(FATAL_ERROR "WITH_UBSAN and SECURITY_HARDENED are mutually exclusive") + ENDIF() + MY_CHECK_AND_SET_COMPILER_FLAG("-fsanitize=undefined" DEBUG RELWITHDEBINFO) +ENDIF() + + # enable security hardening features, like most distributions do # in our benchmarks that costs about ~1% of performance, depending on the load IF(CMAKE_C_COMPILER_VERSION VERSION_LESS "4.6") @@ -490,6 +499,8 @@ IF(UNIX) INSTALL_DOCUMENTATION(Docs/INSTALL-BINARY Docs/README-wsrep COMPONENT Readme) ENDIF() +INCLUDE(build_depends) + INCLUDE(CPack) IF(WIN32 AND SIGNCODE) @@ -500,5 +511,5 @@ ENDIF() IF(NON_DISTRIBUTABLE_WARNING) MESSAGE(WARNING " -You have linked MariaDB with GPLv3 libraries! You may not distribute the resulting binary. If you do, you will put yourself into a legal problem with Free Software Foundation.") +You have linked MariaDB with ${NON_DISTRIBUTABLE_WARNING} libraries! You may not distribute the resulting binary. If you do, you will put yourself into a legal problem with the Free Software Foundation.") ENDIF() diff --git a/Docs/INFO_SRC b/Docs/INFO_SRC index 8562cee91..35eb9f992 100644 --- a/Docs/INFO_SRC +++ b/Docs/INFO_SRC @@ -1,8 +1,8 @@ -commit: 4c490d6df63695dc97b2c808e59954e6877d3a51 -date: 2019-02-04 18:55:35 +0200 -build-date: 2019-02-04 17:02:14 +0000 -short: 4c490d6 +commit: e9da78ee92c3f44b341a1a68504da72494a684b9 +date: 2019-04-30 23:58:14 +0300 +build-date: 2019-04-30 21:10:19 +0000 +short: e9da78e branch: HEAD -MariaDB source 10.1.38 +MariaDB source 10.1.39 diff --git a/VERSION b/VERSION index f95ab5017..a7dbe7dfb 100644 --- a/VERSION +++ b/VERSION @@ -1,3 +1,3 @@ MYSQL_VERSION_MAJOR=10 MYSQL_VERSION_MINOR=1 -MYSQL_VERSION_PATCH=38 +MYSQL_VERSION_PATCH=39 diff --git a/client/CMakeLists.txt b/client/CMakeLists.txt index c760a9dbf..40df176c6 100644 --- a/client/CMakeLists.txt +++ b/client/CMakeLists.txt @@ -1,5 +1,5 @@ # Copyright (c) 2006, 2015, Oracle and/or its affiliates. All rights reserved. -# Copyright (c) 2008, 2018, MariaDB Corporation +# Copyright (c) 2008, 2019, MariaDB Corporation # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff --git a/client/mysql.cc b/client/mysql.cc index 3a21e2857..cb7761f81 100644 --- a/client/mysql.cc +++ b/client/mysql.cc @@ -3785,9 +3785,10 @@ print_table_data_html(MYSQL_RES *result) MYSQL_FIELD *field; mysql_field_seek(result,0); - (void) tee_fputs("", PAGER); + (void) tee_fputs("
", PAGER); if (column_names) { + (void) tee_fputs("", PAGER); while((field = mysql_fetch_field(result))) { tee_fputs("
", PAGER); diff --git a/client/mysql_plugin.c b/client/mysql_plugin.c index 76108c7a2..c353fb039 100644 --- a/client/mysql_plugin.c +++ b/client/mysql_plugin.c @@ -321,7 +321,7 @@ static int get_default_values() int ret= 0; FILE *file= 0; - bzero(tool_path, FN_REFLEN); + memset(tool_path, 0, FN_REFLEN); if ((error= find_tool("my_print_defaults" FN_EXEEXT, tool_path))) goto exit; else @@ -334,9 +334,9 @@ static int get_default_values() char *format_str= 0; if (has_spaces(tool_path) || has_spaces(defaults_file)) - format_str = "\"%s mysqld > %s\""; + format_str = "\"%s --mysqld > %s\""; else - format_str = "%s mysqld > %s"; + format_str = "%s --mysqld > %s"; snprintf(defaults_cmd, sizeof(defaults_cmd), format_str, add_quotes(tool_path), add_quotes(defaults_file)); @@ -347,7 +347,7 @@ static int get_default_values() } #else snprintf(defaults_cmd, sizeof(defaults_cmd), - "%s mysqld > %s", tool_path, defaults_file); + "%s --mysqld > %s", tool_path, defaults_file); #endif /* Execute the command */ diff --git a/client/mysqlbinlog.cc b/client/mysqlbinlog.cc index 2c05bb806..4ba76cb3b 100644 --- a/client/mysqlbinlog.cc +++ b/client/mysqlbinlog.cc @@ -2867,16 +2867,25 @@ void *sql_alloc(size_t size) return alloc_root(&s_mem_root, size); } +uint e_key_get_latest_version_func(uint) { return 1; } +uint e_key_get_func(uint, uint, uchar*, uint*) { return 1; } +uint e_ctx_size_func(uint, uint) { return 1; } +int e_ctx_init_func(void *, const uchar*, uint, const uchar*, uint, + int, uint, uint) { return 1; } +int e_ctx_update_func(void *, const uchar*, uint, uchar*, uint*) { return 1; } +int e_ctx_finish_func(void *, uchar*, uint*) { return 1; } +uint e_encrypted_length_func(uint, uint, uint) { return 1; } + uint dummy1() { return 1; } struct encryption_service_st encryption_handler= { - (uint(*)(uint))dummy1, - (uint(*)(uint, uint, uchar*, uint*))dummy1, - (uint(*)(uint, uint))dummy1, - (int (*)(void*, const uchar*, uint, const uchar*, uint, int, uint, uint))dummy1, - (int (*)(void*, const uchar*, uint, uchar*, uint*))dummy1, - (int (*)(void*, uchar*, uint*))dummy1, - (uint (*)(uint, uint, uint))dummy1 + e_key_get_latest_version_func, + e_key_get_func, + e_ctx_size_func, + e_ctx_init_func, + e_ctx_update_func, + e_ctx_finish_func, + e_encrypted_length_func }; /* diff --git a/client/mysqlcheck.c b/client/mysqlcheck.c index a4410eba8..eafd47132 100644 --- a/client/mysqlcheck.c +++ b/client/mysqlcheck.c @@ -953,7 +953,8 @@ static int handle_request_for_tables(char *tables, size_t length, puts(query); if (mysql_real_query(sock, query, query_length)) { - sprintf(message, "when executing '%s%s... %s'", op, tab_view, options); + my_snprintf(message, sizeof(message), "when executing '%s%s... %s'", + op, tab_view, options); DBerror(sock, message); my_free(query); DBUG_RETURN(1); diff --git a/client/mysqldump.c b/client/mysqldump.c index f67e52c1b..f00d11885 100644 --- a/client/mysqldump.c +++ b/client/mysqldump.c @@ -3262,7 +3262,7 @@ static void dump_trigger_old(FILE *sql_file, MYSQL_RES *show_triggers_rs, char name_buff[NAME_LEN * 4 + 3]; const char *xml_msg= "\nWarning! mysqldump being run against old server " - "that does not\nsupport 'SHOW CREATE TRIGGERS' " + "that does not\nsupport 'SHOW CREATE TRIGGER' " "statement. Skipping..\n"; DBUG_ENTER("dump_trigger_old"); @@ -3413,12 +3413,14 @@ static int dump_triggers_for_table(char *table_name, char *db_name) char db_cl_name[MY_CS_NAME_SIZE]; int ret= TRUE; + /* Servers below 5.1.21 do not support SHOW CREATE TRIGGER */ + const int use_show_create_trigger= mysql_get_server_version(mysql) >= 50121; DBUG_ENTER("dump_triggers_for_table"); DBUG_PRINT("enter", ("db: %s, table_name: %s", db_name, table_name)); - if (path && !(sql_file= open_sql_file_for_table(table_name, - O_WRONLY | O_APPEND))) + if (path && + !(sql_file= open_sql_file_for_table(table_name, O_WRONLY | O_APPEND))) DBUG_RETURN(1); /* Do not use ANSI_QUOTES on triggers in dump */ @@ -3434,11 +3436,15 @@ static int dump_triggers_for_table(char *table_name, char *db_name) /* Get list of triggers. */ - my_snprintf(query_buff, sizeof(query_buff), - "SELECT TRIGGER_NAME FROM INFORMATION_SCHEMA.TRIGGERS " - "WHERE EVENT_OBJECT_SCHEMA = DATABASE() AND " - "EVENT_OBJECT_TABLE = %s", - quote_for_equal(table_name, name_buff)); + if (use_show_create_trigger) + my_snprintf(query_buff, sizeof(query_buff), + "SELECT TRIGGER_NAME FROM INFORMATION_SCHEMA.TRIGGERS " + "WHERE EVENT_OBJECT_SCHEMA = DATABASE() AND " + "EVENT_OBJECT_TABLE = %s", + quote_for_equal(table_name, name_buff)); + else + my_snprintf(query_buff, sizeof(query_buff), "SHOW TRIGGERS LIKE %s", + quote_for_like(table_name, name_buff)); if (mysql_query_with_error_report(mysql, &show_triggers_rs, query_buff)) goto done; @@ -3454,35 +3460,28 @@ static int dump_triggers_for_table(char *table_name, char *db_name) while ((row= mysql_fetch_row(show_triggers_rs))) { - - my_snprintf(query_buff, sizeof (query_buff), - "SHOW CREATE TRIGGER %s", - quote_name(row[0], name_buff, TRUE)); - - if (mysql_query(mysql, query_buff)) + if (use_show_create_trigger) { - /* - mysqldump is being run against old server, that does not support - SHOW CREATE TRIGGER statement. We should use SHOW TRIGGERS output. + MYSQL_RES *show_create_trigger_rs; - NOTE: the dump may be incorrect, as old SHOW TRIGGERS does not - provide all the necessary information to restore trigger properly. - */ + my_snprintf(query_buff, sizeof (query_buff), "SHOW CREATE TRIGGER %s", + quote_name(row[0], name_buff, TRUE)); - dump_trigger_old(sql_file, show_triggers_rs, &row, table_name); - } - else - { - MYSQL_RES *show_create_trigger_rs= mysql_store_result(mysql); - - int error= (!show_create_trigger_rs || - dump_trigger(sql_file, show_create_trigger_rs, db_name, - db_cl_name)); - mysql_free_result(show_create_trigger_rs); - if (error) + if (mysql_query_with_error_report(mysql, &show_create_trigger_rs, + query_buff)) goto done; + else + { + int error= (!show_create_trigger_rs || + dump_trigger(sql_file, show_create_trigger_rs, db_name, + db_cl_name)); + mysql_free_result(show_create_trigger_rs); + if (error) + goto done; + } } - + else + dump_trigger_old(sql_file, show_triggers_rs, &row, table_name); } if (opt_xml) diff --git a/client/mysqltest.cc b/client/mysqltest.cc index b2a632877..cc1d61e5d 100644 --- a/client/mysqltest.cc +++ b/client/mysqltest.cc @@ -8219,6 +8219,12 @@ void run_query_stmt(struct st_connection *cn, struct st_command *command, DBUG_ENTER("run_query_stmt"); DBUG_PRINT("query", ("'%-.60s'", query)); + if (!mysql) + { + handle_no_active_connection(command, cn, ds); + DBUG_VOID_RETURN; + } + /* Init a new stmt if it's not already one created for this connection */ @@ -8744,18 +8750,56 @@ void init_re(void) */ const char *ps_re_str = "^(" - "[[:space:]]*REPLACE[[:space:]]|" - "[[:space:]]*INSERT[[:space:]]|" - "[[:space:]]*UPDATE[[:space:]]|" - "[[:space:]]*DELETE[[:space:]]|" - "[[:space:]]*SELECT[[:space:]]|" + "[[:space:]]*ALTER[[:space:]]+SEQUENCE[[:space:]]|" + "[[:space:]]*ALTER[[:space:]]+TABLE[[:space:]]|" + "[[:space:]]*ALTER[[:space:]]+USER[[:space:]]|" + "[[:space:]]*ANALYZE[[:space:]]|" + "[[:space:]]*ASSIGN[[:space:]]|" + //"[[:space:]]*CALL[[:space:]]|" // XXX run_query_stmt doesn't read multiple result sets + "[[:space:]]*CHANGE[[:space:]]|" + "[[:space:]]*CHECKSUM[[:space:]]|" + "[[:space:]]*COMMIT[[:space:]]|" + "[[:space:]]*COMPOUND[[:space:]]|" + "[[:space:]]*CREATE[[:space:]]+DATABASE[[:space:]]|" + "[[:space:]]*CREATE[[:space:]]+INDEX[[:space:]]|" + "[[:space:]]*CREATE[[:space:]]+ROLE[[:space:]]|" + "[[:space:]]*CREATE[[:space:]]+SEQUENCE[[:space:]]|" "[[:space:]]*CREATE[[:space:]]+TABLE[[:space:]]|" + "[[:space:]]*CREATE[[:space:]]+USER[[:space:]]|" + "[[:space:]]*CREATE[[:space:]]+VIEW[[:space:]]|" + "[[:space:]]*DELETE[[:space:]]|" "[[:space:]]*DO[[:space:]]|" + "[[:space:]]*DROP[[:space:]]+DATABASE[[:space:]]|" + "[[:space:]]*DROP[[:space:]]+INDEX[[:space:]]|" + "[[:space:]]*DROP[[:space:]]+ROLE[[:space:]]|" + "[[:space:]]*DROP[[:space:]]+SEQUENCE[[:space:]]|" + "[[:space:]]*DROP[[:space:]]+TABLE[[:space:]]|" + "[[:space:]]*DROP[[:space:]]+USER[[:space:]]|" + "[[:space:]]*DROP[[:space:]]+VIEW[[:space:]]|" + "[[:space:]]*FLUSH[[:space:]]|" + "[[:space:]]*GRANT[[:space:]]|" "[[:space:]]*HANDLER[[:space:]]+.*[[:space:]]+READ[[:space:]]|" + "[[:space:]]*INSERT[[:space:]]|" + "[[:space:]]*INSTALL[[:space:]]+|" + "[[:space:]]*KILL[[:space:]]|" + "[[:space:]]*OPTIMIZE[[:space:]]|" + "[[:space:]]*PRELOAD[[:space:]]|" + "[[:space:]]*RENAME[[:space:]]+TABLE[[:space:]]|" + "[[:space:]]*RENAME[[:space:]]+USER[[:space:]]|" + "[[:space:]]*REPAIR[[:space:]]|" + "[[:space:]]*REPLACE[[:space:]]|" + "[[:space:]]*RESET[[:space:]]|" + "[[:space:]]*REVOKE[[:space:]]|" + "[[:space:]]*ROLLBACK[[:space:]]|" + "[[:space:]]*SELECT[[:space:]]|" "[[:space:]]*SET[[:space:]]+OPTION[[:space:]]|" - "[[:space:]]*DELETE[[:space:]]+MULTI[[:space:]]|" - "[[:space:]]*UPDATE[[:space:]]+MULTI[[:space:]]|" - "[[:space:]]*INSERT[[:space:]]+SELECT[[:space:]])"; + "[[:space:]]*SHOW[[:space:]]|" + "[[:space:]]*SHUTDOWN[[:space:]]|" + "[[:space:]]*SLAVE[[:space:]]|" + "[[:space:]]*TRUNCATE[[:space:]]|" + "[[:space:]]*UNINSTALL[[:space:]]+|" + "[[:space:]]*UPDATE[[:space:]]" + ")"; /* Filter for queries that can be run using the diff --git a/cmake/build_configurations/mysql_release.cmake b/cmake/build_configurations/mysql_release.cmake index b73b44cdd..709d97ec6 100644 --- a/cmake/build_configurations/mysql_release.cmake +++ b/cmake/build_configurations/mysql_release.cmake @@ -89,8 +89,8 @@ IF(WIN32) ELSEIF(RPM) SET(WITH_SSL system CACHE STRING "") SET(WITH_ZLIB system CACHE STRING "") - SET(CHECKMODULE /usr/bin/checkmodule CACHE STRING "") - SET(SEMODULE_PACKAGE /usr/bin/semodule_package CACHE STRING "") + SET(CHECKMODULE /usr/bin/checkmodule CACHE FILEPATH "") + SET(SEMODULE_PACKAGE /usr/bin/semodule_package CACHE FILEPATH "") SET(WITH_LIBARCHIVE ON CACHE STRING "") ELSEIF(DEB) SET(WITH_SSL system CACHE STRING "") diff --git a/cmake/build_depends.cmake b/cmake/build_depends.cmake new file mode 100644 index 000000000..0d17c22cf --- /dev/null +++ b/cmake/build_depends.cmake @@ -0,0 +1,39 @@ +IF(RPM) + MACRO(FIND_DEP V) + SET(out ${V}_DEP) + IF (NOT DEFINED ${out}) + IF(EXISTS ${${V}} AND NOT IS_DIRECTORY ${${V}}) + EXECUTE_PROCESS(COMMAND ${ARGN} RESULT_VARIABLE res OUTPUT_VARIABLE O OUTPUT_STRIP_TRAILING_WHITESPACE) + ELSE() + SET(res 1) + ENDIF() + IF (res) + SET(O) + ELSE() + MESSAGE(STATUS "Need ${O} for ${${V}}") + ENDIF() + SET(${out} ${O} CACHE INTERNAL "Package that contains ${${V}}" FORCE) + ENDIF() + ENDMACRO() + + GET_CMAKE_PROPERTY(ALL_VARS CACHE_VARIABLES) + FOREACH (V ${ALL_VARS}) + GET_PROPERTY(H CACHE ${V} PROPERTY HELPSTRING) + IF (H MATCHES "^Have library [^/]" AND ${V}) + STRING(REGEX REPLACE "^Have library " "" L ${H}) + SET(V ${L}_LIBRARY) + FIND_LIBRARY(${V} ${L}) + ENDIF() + GET_PROPERTY(T CACHE ${V} PROPERTY TYPE) + IF ((T STREQUAL FILEPATH OR V MATCHES "^CMAKE_COMMAND$") AND ${V} MATCHES "^/") + IF (RPM) + FIND_DEP(${V} rpm -q --qf "%{NAME}" -f ${${V}}) + ELSE() # must be DEB + MESSAGE(FATAL_ERROR "Not implemented") + ENDIF () + SET(BUILD_DEPS ${BUILD_DEPS} ${${V}_DEP}) + ENDIF() + ENDFOREACH() + LIST(REMOVE_DUPLICATES BUILD_DEPS) + STRING(REPLACE ";" " " CPACK_RPM_BUILDREQUIRES "${BUILD_DEPS}") +ENDIF(RPM) diff --git a/cmake/cpack_rpm.cmake b/cmake/cpack_rpm.cmake index 962c9f1f5..02886ef6a 100644 --- a/cmake/cpack_rpm.cmake +++ b/cmake/cpack_rpm.cmake @@ -67,6 +67,14 @@ SET(CPACK_RPM_SPEC_MORE_DEFINE " %define _bindir ${INSTALL_BINDIRABS} %define _sbindir ${INSTALL_SBINDIRABS} %define _sysconfdir ${INSTALL_SYSCONFDIR} + +%{?filter_setup: +%filter_provides_in \\\\.\\\\(test\\\\|result\\\\|h\\\\|cc\\\\|c\\\\|inc\\\\|opt\\\\|ic\\\\|cnf\\\\|rdiff\\\\|cpp\\\\)$ +%filter_requires_in \\\\.\\\\(test\\\\|result\\\\|h\\\\|cc\\\\|c\\\\|inc\\\\|opt\\\\|ic\\\\|cnf\\\\|rdiff\\\\|cpp\\\\)$ +%filter_from_provides /perl(\\\\(mtr\\\\|My::\\\\)/d +%filter_from_requires /\\\\(lib\\\\(ft\\\\|lzma\\\\|tokuportability\\\\)\\\\)\\\\|\\\\(perl(\\\\(.*mtr\\\\|My::\\\\|.*HandlerSocket\\\\|Mysql\\\\)\\\\)/d +%filter_setup +} ") # this creative hack is described here: http://www.cmake.org/pipermail/cmake/2012-January/048416.html @@ -225,36 +233,6 @@ ELSEIF(RPM MATCHES "fedora" OR RPM MATCHES "(rhel|centos)7") SET(CPACK_RPM_common_PACKAGE_CONFLICTS "mariadb-libs < 1:%{version}-%{release}") ENDIF() -# workaround for lots of perl dependencies added by rpmbuild -SETA(CPACK_RPM_test_PACKAGE_PROVIDES - "perl(lib::mtr_gcov.pl)" - "perl(lib::mtr_gprof.pl)" - "perl(lib::mtr_io.pl)" - "perl(lib::mtr_misc.pl)" - "perl(lib::mtr_process.pl)" - "perl(lib::v1/mtr_cases.pl)" - "perl(lib::v1/mtr_gcov.pl)" - "perl(lib::v1/mtr_gprof.pl)" - "perl(lib::v1/mtr_im.pl)" - "perl(lib::v1/mtr_io.pl)" - "perl(lib::v1/mtr_match.pl)" - "perl(lib::v1/mtr_misc.pl)" - "perl(lib::v1/mtr_process.pl)" - "perl(lib::v1/mtr_report.pl)" - "perl(lib::v1/mtr_stress.pl)" - "perl(lib::v1/mtr_timer.pl)" - "perl(lib::v1/mtr_unique.pl)" - "perl(mtr_cases)" - "perl(mtr_io.pl)" - "perl(mtr_match)" - "perl(mtr_misc.pl)" - "perl(mtr_gcov.pl)" - "perl(mtr_gprof.pl)" - "perl(mtr_process.pl)" - "perl(mtr_report)" - "perl(mtr_results)" - "perl(mtr_unique)") - # If we want to build build MariaDB-shared-compat, # extract compat libraries from MariaDB-shared-5.3 rpm FILE(GLOB compat_rpm RELATIVE ${CMAKE_SOURCE_DIR} @@ -284,5 +262,24 @@ ENDIF(compat_rpm) SET(CPACK_RPM_compat_PACKAGE_PROVIDES "mysql-libs = 5.3.5") # exact version doesn't matter as long as it greater than 5.1 SET(CPACK_RPM_compat_PACKAGE_OBSOLETES "mysql-libs < 5.3.5") -ENDIF(RPM) +################ +IF(CMAKE_VERSION VERSION_GREATER "3.9.99") + +SET(CPACK_SOURCE_GENERATOR "RPM") +SETA(CPACK_RPM_SOURCE_PKG_BUILD_PARAMS + "-DBUILD_CONFIG=mysql_release" + "-DRPM=${RPM}" + "-DCPACK_RPM_BUILD_SOURCE_DIRS_PREFIX=/usr/src/debug/${CPACK_RPM_PACKAGE_NAME}-${VERSION}" + ) +MACRO(ADDIF var) + IF(DEFINED ${var}) + SETA(CPACK_RPM_SOURCE_PKG_BUILD_PARAMS "-D${var}=${${var}}") + ENDIF() +ENDMACRO() + +ADDIF(BUILD_CONFIG) +ADDIF(WITH_SSL) + +ENDIF() +ENDIF(RPM) diff --git a/cmake/cpack_source_ignore_files.cmake b/cmake/cpack_source_ignore_files.cmake index 0654fa383..8e1b7bd5e 100644 --- a/cmake/cpack_source_ignore_files.cmake +++ b/cmake/cpack_source_ignore_files.cmake @@ -15,18 +15,19 @@ SET(CPACK_SOURCE_IGNORE_FILES \\\\.git/ -\\\\.gitignore -CMakeCache\\\\.txt -cmake_dist\\\\.cmake -CPackSourceConfig\\\\.cmake -CPackConfig.cmake -/cmake_install\\\\.cmake -/CTestTestfile\\\\.cmake +\\\\.gitignore$ +\\\\.gitattributes$ +CMakeCache\\\\.txt$ +cmake_dist\\\\.cmake$ +CPackSourceConfig\\\\.cmake$ +CPackConfig.cmake$ +/cmake_install\\\\.cmake$ +/CTestTestfile\\\\.cmake$ /CMakeFiles/ /version_resources/ /_CPack_Packages/ -$\\\\.gz -$\\\\.zip +\\\\.gz$ +\\\\.zip$ /CMakeFiles/ /version_resources/ /_CPack_Packages/ @@ -50,5 +51,6 @@ include/config\\\\.h$ include/my_config\\\\.h$ /autom4te\\\\.cache/ errmsg\\\\.sys$ +\\\\.rpm$ # ) diff --git a/cmake/maintainer.cmake b/cmake/maintainer.cmake index 4e902d7fe..caba370c4 100644 --- a/cmake/maintainer.cmake +++ b/cmake/maintainer.cmake @@ -28,10 +28,15 @@ SET(MY_WARNING_FLAGS -Woverloaded-virtual -Wvla -Wwrite-strings + -Werror ) -IF(MYSQL_MAINTAINER_MODE MATCHES "ON") - SET(WHERE) +IF(CMAKE_COMPILER_IS_GNUCC AND CMAKE_C_COMPILER_VERSION VERSION_LESS "6.0.0") + SET(MY_WARNING_FLAGS ${MY_WARNING_FLAGS} -Wno-error=maybe-uninitialized) +ENDIF() + +IF(MYSQL_MAINTAINER_MODE MATCHES "OFF") + RETURN() ELSEIF(MYSQL_MAINTAINER_MODE MATCHES "AUTO") SET(WHERE DEBUG) ENDIF() diff --git a/cmake/os/Linux.cmake b/cmake/os/Linux.cmake index b0680d92a..55be86748 100644 --- a/cmake/os/Linux.cmake +++ b/cmake/os/Linux.cmake @@ -35,7 +35,7 @@ ENDFOREACH() # Ensure we have clean build for shared libraries # without unresolved symbols # Not supported with AddressSanitizer -IF(NOT WITH_ASAN) +IF(NOT WITH_ASAN AND NOT WITH_UBSAN) SET(LINK_FLAG_NO_UNDEFINED "-Wl,--no-undefined") ENDIF() diff --git a/cmake/plugin.cmake b/cmake/plugin.cmake index 9c9c7082a..4396a0a6c 100644 --- a/cmake/plugin.cmake +++ b/cmake/plugin.cmake @@ -209,7 +209,7 @@ MACRO(MYSQL_ADD_PLUGIN) ELSEIF(NOT CMAKE_SYSTEM_NAME STREQUAL "Linux") TARGET_LINK_LIBRARIES (${target} mysqld) ENDIF() - ELSEIF(CMAKE_SYSTEM_NAME STREQUAL "Linux") + ELSEIF(CMAKE_SYSTEM_NAME STREQUAL "Linux" AND NOT WITH_ASAN AND NOT WITH_UBSAN) TARGET_LINK_LIBRARIES (${target} "-Wl,--no-undefined") ENDIF() @@ -236,9 +236,6 @@ MACRO(MYSQL_ADD_PLUGIN) IF (NOT ARG_CLIENT) SET(CPACK_RPM_${ARG_COMPONENT}_PACKAGE_REQUIRES "MariaDB${ver}" PARENT_SCOPE) ENDIF() - # workarounds for cmake issues #13248 and #12864: - SET(CPACK_RPM_${ARG_COMPONENT}_PACKAGE_PROVIDES "cmake_bug_13248" PARENT_SCOPE) - SET(CPACK_RPM_${ARG_COMPONENT}_PACKAGE_OBSOLETES "cmake_bug_13248" PARENT_SCOPE) SET(CPACK_RPM_${ARG_COMPONENT}_USER_FILELIST ${ignored} PARENT_SCOPE) IF(NOT ARG_CLIENT AND NOT ARG_CONFIG AND UNIX) SET(ARG_CONFIG "${CMAKE_CURRENT_BINARY_DIR}/${target}.cnf") diff --git a/cmake/readline.cmake b/cmake/readline.cmake index d03fe5038..9cfbe4f0d 100644 --- a/cmake/readline.cmake +++ b/cmake/readline.cmake @@ -157,7 +157,7 @@ MACRO (MYSQL_FIND_SYSTEM_READLINE) SET(USE_NEW_READLINE_INTERFACE 1) ELSE() IF(NOT_FOR_DISTRIBUTION) - SET(NON_DISTRIBUTABLE_WARNING 1) + SET(NON_DISTRIBUTABLE_WARNING "GPLv3") SET(USE_NEW_READLINE_INTERFACE 1) ELSE() SET(USE_NEW_READLINE_INTERFACE 0) diff --git a/cmake/systemd.cmake b/cmake/systemd.cmake index 692d4df9f..478930c9f 100644 --- a/cmake/systemd.cmake +++ b/cmake/systemd.cmake @@ -39,22 +39,14 @@ MACRO(CHECK_SYSTEMD) SET(LIBSYSTEMD systemd) ENDIF() SET(CMAKE_REQUIRED_LIBRARIES ${LIBSYSTEMD}) - CHECK_C_SOURCE_COMPILES( - " - #include - int main() - { - sd_listen_fds(0); - }" - HAVE_SYSTEMD) + CHECK_LIBRARY_EXISTS(systemd sd_listen_fds "" HAVE_SYSTEMD_SD_LISTEN_FDS) CHECK_INCLUDE_FILES(systemd/sd-daemon.h HAVE_SYSTEMD_SD_DAEMON_H) - CHECK_FUNCTION_EXISTS(sd_listen_fds HAVE_SYSTEMD_SD_LISTEN_FDS) CHECK_FUNCTION_EXISTS(sd_notify HAVE_SYSTEMD_SD_NOTIFY) CHECK_FUNCTION_EXISTS(sd_notifyf HAVE_SYSTEMD_SD_NOTIFYF) SET(CMAKE_REQUIRED_LIBRARIES) - IF(HAVE_SYSTEMD AND HAVE_SYSTEMD_SD_DAEMON_H AND HAVE_SYSTEMD_SD_LISTEN_FDS + IF(HAVE_SYSTEMD_SD_DAEMON_H AND HAVE_SYSTEMD_SD_LISTEN_FDS AND HAVE_SYSTEMD_SD_NOTIFY AND HAVE_SYSTEMD_SD_NOTIFYF) - ADD_DEFINITIONS(-DHAVE_SYSTEMD) + SET(HAVE_SYSTEMD TRUE) SET(SYSTEMD_SCRIPTS mariadb-service-convert galera_new_cluster galera_recovery) SET(SYSTEMD_DEB_FILES "usr/bin/mariadb-service-convert usr/bin/galera_new_cluster diff --git a/configure.cmake b/configure.cmake index d37dccbea..38165e5b4 100644 --- a/configure.cmake +++ b/configure.cmake @@ -258,7 +258,7 @@ SET(CMAKE_REQUIRED_DEFINITIONS ${CMAKE_REQUIRED_DEFINITIONS} -DPACKAGE=test) # b CHECK_INCLUDE_FILES (bfd.h BFD_H_EXISTS) IF(BFD_H_EXISTS) IF(NOT_FOR_DISTRIBUTION) - SET(NON_DISTRIBUTABLE_WARNING 1) + SET(NON_DISTRIBUTABLE_WARNING "GPLv3") SET(HAVE_BFD_H 1) ENDIF() ENDIF() diff --git a/dbug/tests.c b/dbug/tests.c index 22a445fde..70424046b 100644 --- a/dbug/tests.c +++ b/dbug/tests.c @@ -86,3 +86,11 @@ int main (int argc __attribute__((unused)), return 0; #endif /* DBUG_OFF */ } + +#ifdef __SANITIZE_ADDRESS__ +/* Disable LeakSanitizer in this executable */ +const char* __asan_default_options() +{ + return "detect_leaks=0"; +} +#endif diff --git a/extra/mariabackup/backup_copy.cc b/extra/mariabackup/backup_copy.cc index 895ef744e..a27032521 100644 --- a/extra/mariabackup/backup_copy.cc +++ b/extra/mariabackup/backup_copy.cc @@ -501,7 +501,8 @@ datafile_open(const char *file, datafile_cur_t *cursor, uint thread_n) 5.6+. We want to make "local" copies for the backup. */ strncpy(cursor->rel_path, xb_get_relative_path(cursor->abs_path, FALSE), - sizeof(cursor->rel_path)); + (sizeof cursor->rel_path) - 1); + cursor->rel_path[(sizeof cursor->rel_path) - 1] = '\0'; cursor->file = os_file_create_simple_no_error_handling(0, cursor->abs_path, @@ -642,8 +643,7 @@ mkdirp(const char *pathname, int Flags, myf MyFlags) /* make a parent directory path */ if (!(parent= (char *)malloc(len))) return(-1); - strncpy(parent, pathname, len); - parent[len-1]= 0; + memcpy(parent, pathname, len); for (p = parent + strlen(parent); !is_path_separator(*p) && p != parent; p--); @@ -1216,6 +1216,7 @@ copy_or_move_file(const char *src_file_path, if (!directory_exists(dst_dir, true)) { ret = false; + free(link_filepath); goto cleanup; } diff --git a/extra/mariabackup/backup_mysql.cc b/extra/mariabackup/backup_mysql.cc index 7f0ad8a83..ac46a854f 100644 --- a/extra/mariabackup/backup_mysql.cc +++ b/extra/mariabackup/backup_mysql.cc @@ -54,7 +54,7 @@ Place, Suite 330, Boston, MA 02111-1307 USA #include "mysqld.h" #include "encryption_plugin.h" #include - +#include "page0zip.h" char *tool_name; char tool_args[2048]; @@ -66,7 +66,6 @@ unsigned long mysql_server_version = 0; /* server capabilities */ bool have_changed_page_bitmaps = false; bool have_backup_locks = false; -bool have_backup_safe_binlog_info = false; bool have_lock_wait_timeout = false; bool have_galera_enabled = false; bool have_flush_engine_logs = false; @@ -334,7 +333,6 @@ get_mysql_vars(MYSQL *connection) char *version_comment_var = NULL; char *innodb_version_var = NULL; char *have_backup_locks_var = NULL; - char *have_backup_safe_binlog_info_var = NULL; char *log_bin_var = NULL; char *lock_wait_timeout_var= NULL; char *wsrep_on_var = NULL; @@ -350,6 +348,7 @@ get_mysql_vars(MYSQL *connection) char *innodb_undo_directory_var = NULL; char *innodb_page_size_var = NULL; char *innodb_undo_tablespaces_var = NULL; + char *page_zip_level_var = NULL; char *endptr; unsigned long server_version = mysql_get_server_version(connection); @@ -357,8 +356,6 @@ get_mysql_vars(MYSQL *connection) mysql_variable mysql_vars[] = { {"have_backup_locks", &have_backup_locks_var}, - {"have_backup_safe_binlog_info", - &have_backup_safe_binlog_info_var}, {"log_bin", &log_bin_var}, {"lock_wait_timeout", &lock_wait_timeout_var}, {"gtid_mode", >id_mode_var}, @@ -379,6 +376,7 @@ get_mysql_vars(MYSQL *connection) {"innodb_undo_directory", &innodb_undo_directory_var}, {"innodb_page_size", &innodb_page_size_var}, {"innodb_undo_tablespaces", &innodb_undo_tablespaces_var}, + {"innodb_compression_level", &page_zip_level_var}, {NULL, NULL} }; @@ -390,22 +388,12 @@ get_mysql_vars(MYSQL *connection) } if (opt_binlog_info == BINLOG_INFO_AUTO) { - - if (have_backup_safe_binlog_info_var != NULL) - opt_binlog_info = BINLOG_INFO_LOCKLESS; - else if (log_bin_var != NULL && !strcmp(log_bin_var, "ON")) + if (log_bin_var != NULL && !strcmp(log_bin_var, "ON")) opt_binlog_info = BINLOG_INFO_ON; else opt_binlog_info = BINLOG_INFO_OFF; } - if (have_backup_safe_binlog_info_var == NULL && - opt_binlog_info == BINLOG_INFO_LOCKLESS) { - - msg("Error: --binlog-info=LOCKLESS is not supported by the " - "server\n"); - return(false); - } if (lock_wait_timeout_var != NULL) { have_lock_wait_timeout = true; @@ -512,7 +500,13 @@ get_mysql_vars(MYSQL *connection) } if (innodb_undo_tablespaces_var) { - srv_undo_tablespaces = strtoul(innodb_undo_tablespaces_var, &endptr, 10); + srv_undo_tablespaces = strtoul(innodb_undo_tablespaces_var, + &endptr, 10); + ut_ad(*endptr == 0); + } + + if (page_zip_level_var != NULL) { + page_zip_level = strtoul(page_zip_level_var, &endptr, 10); ut_ad(*endptr == 0); } @@ -1574,6 +1568,7 @@ bool write_backup_config_file() "innodb_log_block_size=%lu\n" "innodb_undo_directory=%s\n" "innodb_undo_tablespaces=%lu\n" + "innodb_compression_level=%u\n" "%s%s\n" "%s%s\n" "%s\n", @@ -1586,6 +1581,7 @@ bool write_backup_config_file() srv_log_block_size, srv_undo_dir, srv_undo_tablespaces, + page_zip_level, innobase_doublewrite_file ? "innodb_doublewrite_file=" : "", innobase_doublewrite_file ? innobase_doublewrite_file : "", innobase_buffer_pool_filename ? diff --git a/extra/mariabackup/changed_page_bitmap.cc b/extra/mariabackup/changed_page_bitmap.cc index d5185b189..d4d3b71f9 100644 --- a/extra/mariabackup/changed_page_bitmap.cc +++ b/extra/mariabackup/changed_page_bitmap.cc @@ -381,6 +381,7 @@ log_online_setup_bitmap_file_range( msg("InnoDB: Error: inconsistent bitmap file " "directory\n"); + os_file_closedir(bitmap_dir); free(bitmap_files->files); return FALSE; } diff --git a/extra/mariabackup/ds_compress.c b/extra/mariabackup/ds_compress.c index 88f508573..af848db2f 100644 --- a/extra/mariabackup/ds_compress.c +++ b/extra/mariabackup/ds_compress.c @@ -384,6 +384,7 @@ create_worker_threads(uint n) return threads; err: + my_free(threads); return NULL; } diff --git a/extra/mariabackup/encryption_plugin.cc b/extra/mariabackup/encryption_plugin.cc index 8f7741b05..b5acd385d 100644 --- a/extra/mariabackup/encryption_plugin.cc +++ b/extra/mariabackup/encryption_plugin.cc @@ -67,7 +67,8 @@ void encryption_plugin_backup_init(MYSQL *mysql) /* Required to load the plugin later.*/ add_to_plugin_load_list(plugin_load.c_str()); - strncpy(opt_plugin_dir, dir, FN_REFLEN); + strncpy(opt_plugin_dir, dir, FN_REFLEN - 1); + opt_plugin_dir[FN_REFLEN - 1] = '\0'; oss << "plugin_dir=" << '"' << dir << '"' << endl; @@ -133,7 +134,10 @@ void encryption_plugin_prepare_init(int argc, char **argv) add_to_plugin_load_list(xb_plugin_load); if (xb_plugin_dir) - strncpy(opt_plugin_dir, xb_plugin_dir, FN_REFLEN); + { + strncpy(opt_plugin_dir, xb_plugin_dir, FN_REFLEN - 1); + opt_plugin_dir[FN_REFLEN - 1] = '\0'; + } char **new_argv = new char *[argc + 1]; new_argv[0] = XTRABACKUP_EXE; diff --git a/extra/mariabackup/fil_cur.cc b/extra/mariabackup/fil_cur.cc index 46465575a..ce9aaecfc 100644 --- a/extra/mariabackup/fil_cur.cc +++ b/extra/mariabackup/fil_cur.cc @@ -152,7 +152,8 @@ xb_fil_cur_open( cursor->space_id = node->space->id; cursor->is_system = !fil_is_user_tablespace_id(node->space->id); - strncpy(cursor->abs_path, node->name, sizeof(cursor->abs_path)); + strncpy(cursor->abs_path, node->name, (sizeof cursor->abs_path) - 1); + cursor->abs_path[(sizeof cursor->abs_path) - 1] = '\0'; /* Get the relative path for the destination tablespace name, i.e. the one that can be appended to the backup root directory. Non-system @@ -160,7 +161,8 @@ xb_fil_cur_open( 5.6+. We want to make "local" copies for the backup. */ strncpy(cursor->rel_path, xb_get_relative_path(cursor->abs_path, cursor->is_system), - sizeof(cursor->rel_path)); + (sizeof cursor->rel_path) - 1); + cursor->rel_path[(sizeof cursor->rel_path) - 1] = '\0'; /* In the backup mode we should already have a tablespace handle created by fil_load_single_table_tablespace() unless it is a system diff --git a/extra/mariabackup/xtrabackup.cc b/extra/mariabackup/xtrabackup.cc index 2d28a6caa..e5d2474ba 100644 --- a/extra/mariabackup/xtrabackup.cc +++ b/extra/mariabackup/xtrabackup.cc @@ -366,9 +366,6 @@ uint opt_safe_slave_backup_timeout = 0; const char *opt_history = NULL; -/* Whether xtrabackup_binlog_info should be created on recovery */ -static bool recover_binlog_info; - /* Simple datasink creation tracking...add datasinks in the reverse order you want them destroyed. */ #define XTRABACKUP_MAX_DATASINKS 10 @@ -597,7 +594,8 @@ enum options_xtrabackup OPT_XTRA_TABLES_EXCLUDE, OPT_XTRA_DATABASES_EXCLUDE, - OPT_PROTOCOL + OPT_PROTOCOL, + OPT_INNODB_COMPRESSION_LEVEL }; struct my_option xb_client_options[] = @@ -1145,6 +1143,11 @@ Disable with --skip-innodb-doublewrite.", (G_PTR*) &innobase_use_doublewrite, (G_PTR*)&srv_undo_tablespaces, (G_PTR*)&srv_undo_tablespaces, 0, GET_ULONG, REQUIRED_ARG, 0, 0, 126, 0, 1, 0}, + {"innodb_compression_level", OPT_INNODB_COMPRESSION_LEVEL, + "Compression level used for zlib compression.", + (G_PTR*)&page_zip_level, (G_PTR*)&page_zip_level, + 0, GET_UINT, REQUIRED_ARG, 6, 0, 9, 0, 0, 0}, + {"defaults_group", OPT_DEFAULTS_GROUP, "defaults group in config file (default \"mysqld\").", (G_PTR*) &defaults_group, (G_PTR*) &defaults_group, 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, @@ -1381,6 +1384,10 @@ xb_get_one_option(int optid, ADD_PRINT_PARAM_OPT(innodb_checksum_algorithm_names[srv_log_checksum_algorithm]); break; + case OPT_INNODB_COMPRESSION_LEVEL: + ADD_PRINT_PARAM_OPT(page_zip_level); + break; + case OPT_INNODB_BUFFER_POOL_FILENAME: ADD_PRINT_PARAM_OPT(innobase_buffer_pool_filename); @@ -1854,7 +1861,6 @@ xtrabackup_read_metadata(char *filename) { FILE *fp; my_bool r = TRUE; - int t; fp = fopen(filename,"r"); if(!fp) { @@ -1885,9 +1891,6 @@ xtrabackup_read_metadata(char *filename) } /* Optional fields */ - if (fscanf(fp, "recover_binlog_info = %d\n", &t) == 1) { - recover_binlog_info = (t == 1); - } end: fclose(fp); @@ -1906,13 +1909,11 @@ xtrabackup_print_metadata(char *buf, size_t buf_len) "backup_type = %s\n" "from_lsn = " UINT64PF "\n" "to_lsn = " UINT64PF "\n" - "last_lsn = " UINT64PF "\n" - "recover_binlog_info = %d\n", + "last_lsn = " UINT64PF "\n", metadata_type, metadata_from_lsn, metadata_to_lsn, - metadata_last_lsn, - MY_TEST(opt_binlog_info == BINLOG_INFO_LOCKLESS)); + metadata_last_lsn); } /*********************************************************************** @@ -2251,8 +2252,9 @@ check_if_skip_table( return(FALSE); } - strncpy(buf, dbname, FN_REFLEN); - buf[tbname - 1 - dbname] = 0; + strncpy(buf, dbname, FN_REFLEN - 1); + buf[FN_REFLEN - 1] = '\0'; + buf[tbname - 1 - dbname] = '\0'; const skip_database_check_result skip_database = check_if_skip_database(buf); @@ -2260,7 +2262,6 @@ check_if_skip_table( return (TRUE); } - buf[FN_REFLEN - 1] = '\0'; buf[tbname - 1 - dbname] = '.'; /* Check if there's a suffix in the table name. If so, truncate it. We @@ -4990,7 +4991,8 @@ xtrabackup_apply_delta( } dst_path[strlen(dst_path) - 6] = '\0'; - strncpy(space_name, filename, FN_REFLEN); + strncpy(space_name, filename, FN_REFLEN - 1); + space_name[FN_REFLEN - 1] = '\0'; space_name[strlen(space_name) - 6] = 0; if (!get_meta_path(src_path, meta_path)) { @@ -5325,6 +5327,7 @@ xb_process_datadir( fileinfo.name, data)) { os_file_closedir(dbdir); + os_file_closedir(dir); return(FALSE); } } @@ -5789,35 +5792,6 @@ innodb_free_param() free_tmpdir(&mysql_tmpdir_list); } - -/************************************************************************** -Store the current binary log coordinates in a specified file. -@return 'false' on error. */ -static bool -store_binlog_info( -/*==============*/ - const char *filename) /*!< in: output file name */ -{ - FILE *fp; - - if (trx_sys_mysql_bin_log_name[0] == '\0') { - return(true); - } - - fp = fopen(filename, "w"); - - if (!fp) { - msg("mariabackup: failed to open '%s'\n", filename); - return(false); - } - - fprintf(fp, "%s\t" UINT64PF "\n", - trx_sys_mysql_bin_log_name, trx_sys_mysql_bin_log_pos); - fclose(fp); - - return(true); -} - static void xtrabackup_prepare_func(int argc, char ** argv) { @@ -6036,7 +6010,8 @@ xtrabackup_prepare_func(int argc, char ** argv) p = next + 1; } info_file_path[len - 4] = 0; - strncpy(table_name, prev, FN_REFLEN); + strncpy(table_name, prev, FN_REFLEN - 1); + table_name[FN_REFLEN - 1] = '\0'; info_file_path[len - 4] = '.'; @@ -6072,8 +6047,7 @@ xtrabackup_prepare_func(int argc, char ** argv) mach_write_to_4(page , 0x78706f72UL); mach_write_to_4(page + 4, 0x74696e66UL);/*"xportinf"*/ mach_write_to_4(page + 8, n_index); - strncpy((char *) page + 12, - table_name, 500); + strncpy((char *) page + 12, table_name, FN_REFLEN); msg("mariabackup: export metadata of " "table '%s' to file `%s` " @@ -6137,17 +6111,6 @@ xtrabackup_prepare_func(int argc, char ** argv) trx_sys_print_mysql_binlog_offset(); msg("\n"); - /* output to xtrabackup_binlog_pos_innodb and (if - backup_safe_binlog_info was available on the server) to - xtrabackup_binlog_info. In the latter case xtrabackup_binlog_pos_innodb - becomes redundant and is created only for compatibility. */ - if (!store_binlog_info("xtrabackup_binlog_pos_innodb") || - (recover_binlog_info && - !store_binlog_info(XTRABACKUP_BINLOG_INFO))) { - - exit(EXIT_FAILURE); - } - /* Check whether the log is applied enough or not. */ if ((xtrabackup_incremental && srv_start_lsn < incremental_to_lsn) diff --git a/extra/mariabackup/xtrabackup.h b/extra/mariabackup/xtrabackup.h index e870ecbe2..38c002083 100644 --- a/extra/mariabackup/xtrabackup.h +++ b/extra/mariabackup/xtrabackup.h @@ -161,7 +161,7 @@ extern uint opt_safe_slave_backup_timeout; extern const char *opt_history; -enum binlog_info_enum { BINLOG_INFO_OFF, BINLOG_INFO_LOCKLESS, BINLOG_INFO_ON, +enum binlog_info_enum { BINLOG_INFO_OFF, BINLOG_INFO_ON, BINLOG_INFO_AUTO}; extern ulong opt_binlog_info; diff --git a/include/my_pthread.h b/include/my_pthread.h index ae2f912f9..2b3edb735 100644 --- a/include/my_pthread.h +++ b/include/my_pthread.h @@ -734,7 +734,11 @@ extern void my_mutex_end(void); We need to have at least 256K stack to handle calls to myisamchk_init() with the current number of keys and key parts. */ -#define DEFAULT_THREAD_STACK (289*1024L) +#ifdef __SANITIZE_ADDRESS__ +#define DEFAULT_THREAD_STACK (364*1024L) +#else +#define DEFAULT_THREAD_STACK (292*1024L) +#endif #endif #define MY_PTHREAD_LOCK_READ 0 diff --git a/include/my_tree.h b/include/my_tree.h index 02cab02b5..59d02218a 100644 --- a/include/my_tree.h +++ b/include/my_tree.h @@ -59,7 +59,7 @@ typedef struct st_tree_element { #define ELEMENT_CHILD(element, offs) (*(TREE_ELEMENT**)((char*)element + offs)) typedef struct st_tree { - TREE_ELEMENT *root,null_element; + TREE_ELEMENT *root; TREE_ELEMENT **parents[MAX_TREE_HEIGHT]; uint offset_to_key,elements_in_tree,size_of_element; size_t memory_limit, allocated; diff --git a/include/mysql/client_plugin.h b/include/mysql/client_plugin.h index b2df0019d..84fb3c679 100644 --- a/include/mysql/client_plugin.h +++ b/include/mysql/client_plugin.h @@ -32,17 +32,18 @@ */ #undef MYSQL_PLUGIN_EXPORT #if defined(_MSC_VER) - #ifdef __cplusplus - #define MYSQL_PLUGIN_EXPORT extern "C" __declspec(dllexport) - #else - #define MYSQL_PLUGIN_EXPORT __declspec(dllexport) - #endif + #define MYSQL_PLUGIN_EXPORT_C __declspec(dllexport) #else /*_MSC_VER */ - #ifdef __cplusplus - #define MYSQL_PLUGIN_EXPORT extern "C" - #else - #define MYSQL_PLUGIN_EXPORT - #endif + #define MYSQL_PLUGIN_EXPORT_C +#endif +#ifdef __cplusplus +#define MYSQL_PLUGIN_EXPORT extern "C" MYSQL_PLUGIN_EXPORT_C +#define C_MODE_START extern "C" { +#define C_MODE_END } +#else +#define MYSQL_PLUGIN_EXPORT MYSQL_PLUGIN_EXPORT_C +#define C_MODE_START +#define C_MODE_END #endif #ifndef MYSQL_ABI_CHECK @@ -60,11 +61,12 @@ #define MYSQL_CLIENT_MAX_PLUGINS 3 #define mysql_declare_client_plugin(X) \ - MYSQL_PLUGIN_EXPORT struct st_mysql_client_plugin_ ## X \ + C_MODE_START MYSQL_PLUGIN_EXPORT_C \ + struct st_mysql_client_plugin_ ## X \ _mysql_client_plugin_declaration_ = { \ MYSQL_CLIENT_ ## X ## _PLUGIN, \ MYSQL_CLIENT_ ## X ## _PLUGIN_INTERFACE_VERSION, -#define mysql_end_client_plugin } +#define mysql_end_client_plugin }; C_MODE_END /* generic plugin header structure */ #define MYSQL_CLIENT_PLUGIN_HEADER \ diff --git a/include/mysql/service_wsrep.h b/include/mysql/service_wsrep.h index b51f15442..267c8cb4e 100644 --- a/include/mysql/service_wsrep.h +++ b/include/mysql/service_wsrep.h @@ -107,6 +107,7 @@ extern struct wsrep_service_st { bool (*wsrep_thd_ignore_table_func)(THD *thd); long long (*wsrep_thd_trx_seqno_func)(THD *thd); struct wsrep_ws_handle * (*wsrep_thd_ws_handle_func)(THD *thd); + void (*wsrep_thd_auto_increment_variables_func)(THD *thd, unsigned long long *offset, unsigned long long *increment); int (*wsrep_trx_is_aborting_func)(MYSQL_THD thd); int (*wsrep_trx_order_before_func)(MYSQL_THD, MYSQL_THD); void (*wsrep_unlock_rollback_func)(); @@ -149,6 +150,7 @@ extern struct wsrep_service_st { #define wsrep_thd_ignore_table(T) wsrep_service->wsrep_thd_ignore_table_func(T) #define wsrep_thd_trx_seqno(T) wsrep_service->wsrep_thd_trx_seqno_func(T) #define wsrep_thd_ws_handle(T) wsrep_service->wsrep_thd_ws_handle_func(T) +#define wsrep_thd_auto_increment_variables(T,O,I) wsrep_service->wsrep_thd_auto_increment_variables_func(T,O,I) #define wsrep_trx_is_aborting(T) wsrep_service->wsrep_trx_is_aborting_func(T) #define wsrep_trx_order_before(T1,T2) wsrep_service->wsrep_trx_order_before_func(T1,T2) #define wsrep_unlock_rollback() wsrep_service->wsrep_unlock_rollback_func() @@ -201,6 +203,7 @@ my_bool wsrep_thd_is_BF(MYSQL_THD thd, my_bool sync); my_bool wsrep_thd_is_wsrep(MYSQL_THD thd); struct wsrep *get_wsrep(); struct wsrep_ws_handle *wsrep_thd_ws_handle(THD *thd); +void wsrep_thd_auto_increment_variables(THD *thd, unsigned long long *offset, unsigned long long *increment); void wsrep_aborting_thd_enqueue(THD *thd); void wsrep_lock_rollback(); void wsrep_post_commit(THD* thd, bool all); diff --git a/include/wsrep.h b/include/wsrep.h index 14d624aec..d9800b701 100644 --- a/include/wsrep.h +++ b/include/wsrep.h @@ -50,9 +50,9 @@ #define WSREP_WARN(...) WSREP_LOG(sql_print_warning, ##__VA_ARGS__) #define WSREP_ERROR(...) WSREP_LOG(sql_print_error, ##__VA_ARGS__) -#define WSREP_SYNC_WAIT(thd_, before_) \ - { if (WSREP_CLIENT(thd_) && \ - wsrep_sync_wait(thd_, before_)) goto wsrep_error_label; } +#define WSREP_SYNC_WAIT(thd_, before_) \ + do { if (WSREP_CLIENT(thd_) && \ + wsrep_sync_wait(thd_, before_)) goto wsrep_error_label; } while(0) #define WSREP_ERROR_LABEL wsrep_error_label #else #define IF_WSREP(A,B) B @@ -64,7 +64,7 @@ #define WSREP_TO_ISOLATION_BEGIN(db_, table_, table_list_) #define WSREP_TO_ISOLATION_END #define WSREP_TO_ISOLATION_BEGIN_WRTCHK(db_, table_, table_list_) -#define WSREP_SYNC_WAIT(thd_, before_) +#define WSREP_SYNC_WAIT(thd_, before_) do { } while(0) #define WSREP_ERROR_LABEL goto wsrep_error_label; wsrep_error_label #endif /* WITH_WSREP */ diff --git a/man/mysql_install_db.1 b/man/mysql_install_db.1 index 9fb775f20..636c59740 100644 --- a/man/mysql_install_db.1 +++ b/man/mysql_install_db.1 @@ -1,6 +1,6 @@ '\" t .\" -.TH "\FBMYSQL_INSTALL_DB\" "1" "14/12/2015" "MariaDB 10\&.1" "MariaDB Database System" +.TH "\FBMYSQL_INSTALL_DB\FR" "1" "4 April 2019" "MariaDB 10\&.1" "MariaDB Database System" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- @@ -198,6 +198,21 @@ Must be given as first option\&. .sp -1 .IP \(bu 2.3 .\} +.\" mysql_install_db: defaults-group-suffix option +.\" defaults-group-suffix option: mysql_install_db +\fB\-\-defaults\-group\-suffix=\fR\fB\fIname\fR\fR +.sp +In addition to the given groups, also read groups with this suffix\&. +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} .\" mysql_install_db: force option .\" force option: mysql_install_db \fB\-\-force\fR @@ -354,7 +369,7 @@ For internal use\&. This option is used for creating Windows distributions\&. .SH "COPYRIGHT" .br .PP -Copyright 2007-2008 MySQL AB, 2008-2010 Sun Microsystems, Inc., 2010-2015 MariaDB Foundation +Copyright 2007-2008 MySQL AB, 2008-2010 Sun Microsystems, Inc., 2010-2019 MariaDB Foundation .PP This documentation is free software; you can redistribute it and/or modify it only under the terms of the GNU General Public License as published by the Free Software Foundation; version 2 of the License. .PP diff --git a/man/mysqldumpslow.1 b/man/mysqldumpslow.1 index c33f86c04..ee9daf5a1 100644 --- a/man/mysqldumpslow.1 +++ b/man/mysqldumpslow.1 @@ -210,6 +210,30 @@ should be chosen from the following list: .IP \(bu 2.3 .\} t, +aa: Sort by rows affected or average rows affected +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +l, +ae: Sort by rows examined or aggregate rows examined +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +l, at: Sort by query time or average query time .RE .sp diff --git a/mysql-test/include/ctype_like_escape.inc b/mysql-test/include/ctype_like_escape.inc index d4abc33c1..f817bc03e 100644 --- a/mysql-test/include/ctype_like_escape.inc +++ b/mysql-test/include/ctype_like_escape.inc @@ -16,3 +16,9 @@ select c1 as c1u from t1 where c1 like 'ab\_def'; # should return ab_def select c1 as c2h from t1 where c1 like 'ab#_def' escape '#'; drop table t1; + +# +# MDEV-13335 UTF8 escape wildcard LIKE match has different behavior in different collations +# +SELECT @@collation_connection; +SELECT '\%b' LIKE '%\%'; diff --git a/mysql-test/suite/galera/include/galera_resume.inc b/mysql-test/include/galera_resume.inc similarity index 80% rename from mysql-test/suite/galera/include/galera_resume.inc rename to mysql-test/include/galera_resume.inc index 232cb4647..af8f2b956 100644 --- a/mysql-test/suite/galera/include/galera_resume.inc +++ b/mysql-test/include/galera_resume.inc @@ -3,7 +3,7 @@ my $pid_filename = $ENV{'_SUSPEND_NODE_PIDFILE'}; my $mysqld_pid = `cat $pid_filename`; chomp($mysqld_pid); - system("kill -18 $mysqld_pid"); + system("kill -SIGCONT $mysqld_pid"); exit(0); EOF diff --git a/mysql-test/suite/galera_3nodes/include/galera_suspend.inc b/mysql-test/include/galera_suspend.inc similarity index 86% rename from mysql-test/suite/galera_3nodes/include/galera_suspend.inc rename to mysql-test/include/galera_suspend.inc index 3495ad234..d4037d895 100644 --- a/mysql-test/suite/galera_3nodes/include/galera_suspend.inc +++ b/mysql-test/include/galera_suspend.inc @@ -9,6 +9,6 @@ my $pid_filename = $ENV{'_SUSPEND_NODE_PIDFILE'}; my $mysqld_pid = `cat $pid_filename`; chomp($mysqld_pid); - system("kill -19 $mysqld_pid"); + system("kill -SIGSTOP $mysqld_pid"); exit(0); EOF diff --git a/mysql-test/include/index_merge1.inc b/mysql-test/include/index_merge1.inc index 88dd4c319..7880091ac 100644 --- a/mysql-test/include/index_merge1.inc +++ b/mysql-test/include/index_merge1.inc @@ -37,12 +37,14 @@ insert into t0 values (1),(2),(3),(4),(5),(6),(7),(8); let $1=7; set @d=8; +begin; while ($1) { eval insert into t0 select key1+@d from t0; eval set @d=@d*2; dec $1; } +commit; --enable_query_log alter table t0 add key2 int not null, add index i2(key2); @@ -360,6 +362,7 @@ INSERT INTO t1 VALUES ('foo','bar', 'ZZ'),('fuz','baz', 'ZZ'); --disable_query_log let $1=9; +begin; while ($1) { eval INSERT INTO t1 SELECT * from t1 WHERE cola = 'foo'; @@ -372,6 +375,7 @@ while ($1) eval INSERT INTO t1 SELECT * from t1 WHERE cola <> 'foo'; dec $1; } +commit; --enable_query_log diff --git a/mysql-test/include/index_merge2.inc b/mysql-test/include/index_merge2.inc index 03afa49d3..ae9adac88 100644 --- a/mysql-test/include/index_merge2.inc +++ b/mysql-test/include/index_merge2.inc @@ -34,11 +34,13 @@ create table t1 --disable_query_log let $1=200; +begin; while ($1) { eval insert into t1 values (200-$1, $1); dec $1; } +commit; --enable_query_log # No primary key @@ -80,11 +82,13 @@ create table t1 ( show warnings; --disable_query_log let $1=30; +begin; while ($1) { eval insert into t1 (key1, key2, filler) values ($1/4, $1/8, 'filler-data'); dec $1; } +commit; --enable_query_log explain select pk from t1 where key1 = 1 and key2 = 1; select pk from t1 where key2 = 1 and key1 = 1; @@ -331,16 +335,20 @@ insert into t1(key1) values (1),(2),(3),(4),(5),(6),(7),(8); let $1=7; set @d=8; +begin; while ($1) { eval insert into t1 (key1) select key1+@d from t1; eval set @d=@d*2; dec $1; } +commit; alter table t1 add index i2(key2); alter table t1 add index i3(key3); update t1 set key2=key1,key3=key1; + +insert into t1 select 10000+key1, 10000+key2,10000+key3 from t1; analyze table t1; # to test the bug, the following must use "sort_union": diff --git a/mysql-test/include/index_merge_2sweeps.inc b/mysql-test/include/index_merge_2sweeps.inc index 3ae7e5b3c..ef356e129 100644 --- a/mysql-test/include/index_merge_2sweeps.inc +++ b/mysql-test/include/index_merge_2sweeps.inc @@ -32,12 +32,14 @@ create table t1 ( --disable_query_log +begin; let $1=1000; while ($1) { eval insert into t1 values($1, $1, $1, 'filler-data','filler-data-2'); dec $1; } +commit; --enable_query_log select * from t1 where (key1 >= 2 and key1 <= 10) or (pk >= 4 and pk <=8 ); diff --git a/mysql-test/include/index_merge_ror.inc b/mysql-test/include/index_merge_ror.inc index fdb966e68..3ec6e3429 100644 --- a/mysql-test/include/index_merge_ror.inc +++ b/mysql-test/include/index_merge_ror.inc @@ -67,18 +67,21 @@ create table t1 create table t0 as select * from t1; --disable_query_log --echo # Printing of many insert into t0 values (....) disabled. +begin; let $cnt=1000; while ($cnt) { eval insert into t0 values (1, 2, 3, 1, 2, 3, 0, 0, 0, 0, 'data1', 'data2', 'data3', 'data4', 'data5', 'data6'); dec $cnt; } +commit; --enable_query_log alter table t1 disable keys; --disable_query_log --echo # Printing of many insert into t1 select .... from t0 disabled. let $1=4; +begin; while ($1) { let $2=4; @@ -94,6 +97,7 @@ while ($1) } dec $1; } +commit; --echo # Printing of many insert into t1 (...) values (....) disabled. # Row retrieval tests @@ -101,6 +105,7 @@ while ($1) # insert enough rows for index intersection to be used for (key1,key2) insert into t1 (key1, key2, key3, key4, filler1) values (100, 100, 100, 100,'key1-key2-key3-key4'); let $cnt=400; +begin; while ($cnt) { eval insert into t1 (key1, key2, key3, key4, filler1) values (100, -1, 100, -1,'key1-key3'); @@ -112,6 +117,7 @@ while ($cnt) eval insert into t1 (key1, key2, key3, key4, filler1) values (-1, 100, -1, 100,'key2-key4'); dec $cnt; } +commit; --enable_query_log alter table t1 enable keys; select count(*) from t1; @@ -249,6 +255,7 @@ create table t2 ( --disable_query_log let $1=8; +begin; while ($1) { eval insert into t2 values (repeat(char($1+64), 8),repeat(char($1+64), 8),'filler1', 'filler2'); @@ -256,6 +263,7 @@ while ($1) } insert into t2 select * from t2; insert into t2 select * from t2; +commit; --enable_query_log # The table row buffer is reused. Fill it with rows that don't match. diff --git a/mysql-test/include/index_merge_ror_cpk.inc b/mysql-test/include/index_merge_ror_cpk.inc index df42745b4..0a307aa4f 100644 --- a/mysql-test/include/index_merge_ror_cpk.inc +++ b/mysql-test/include/index_merge_ror_cpk.inc @@ -56,14 +56,14 @@ create table t1 ); --disable_query_log -set autocommit=0; +begin; let $1=10000; while ($1) { eval insert into t1 values ($1 div 10,$1 mod 100, $1/100,$1/100, $1/100,$1/100,$1/100,$1/100,$1/100, $1 mod 100, $1/1000,'filler-data-$1','filler2'); dec $1; } -set autocommit=1; +commit; --enable_query_log # Verify that range scan on CPK is ROR diff --git a/mysql-test/include/mix2.inc b/mysql-test/include/mix2.inc index cdc39f840..3b6c91ebb 100644 --- a/mysql-test/include/mix2.inc +++ b/mysql-test/include/mix2.inc @@ -1153,7 +1153,7 @@ checksum table t1, t2, t3, t4, t5, t6, t7 extended; drop table t1,t2,t3, t4, t5, t6; # -# Test problem with refering to different fields in same table in UNION +# Test problem with referring to different fields in same table in UNION # (Bug#2552: UNION returns NULL instead of expected value (innoDB only tables)) # eval create table t1 (id int, name char(10) not null, name2 char(10) not null) engine=$engine_type; diff --git a/mysql-test/lib/generate-ssl-certs.sh b/mysql-test/lib/generate-ssl-certs.sh index 8f15ba9d5..4b333854c 100755 --- a/mysql-test/lib/generate-ssl-certs.sh +++ b/mysql-test/lib/generate-ssl-certs.sh @@ -31,7 +31,7 @@ openssl ca -keyfile cakey.pem -days 7300 -batch -cert cacert.pem -policy policy_ # with SubjectAltName, only for OpenSSL 1.0.2+ cat > demoCA/sanext.conf < Dump of mysqltest1 @@ -2498,7 +2506,7 @@ ALTER DATABASE `mysqltest1` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;; /*!50003 SET sql_mode = '' */ ;; /*!50003 SET @saved_time_zone = @@time_zone */ ;; /*!50003 SET time_zone = 'SYSTEM' */ ;; -/*!50106 CREATE*/ /*!50117 DEFINER=`root`@`localhost`*/ /*!50106 EVENT `ev1` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN +/*!50106 CREATE*/ /*!50117 DEFINER=`root`@`localhost`*/ /*!50106 EVENT `ev1` ON SCHEDULE AT '1970-01-02 00:00:00' ON COMPLETION PRESERVE DISABLE DO BEGIN DECLARE ÐÅÒÅÍ1 CHAR(10); SELECT COLLATION(ÐÅÒÅÍ1) AS c1, @@ -2526,7 +2534,7 @@ ALTER DATABASE `mysqltest1` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;; /*!50003 SET sql_mode = '' */ ;; /*!50003 SET @saved_time_zone = @@time_zone */ ;; /*!50003 SET time_zone = 'SYSTEM' */ ;; -/*!50106 CREATE*/ /*!50117 DEFINER=`root`@`localhost`*/ /*!50106 EVENT `ev2` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN +/*!50106 CREATE*/ /*!50117 DEFINER=`root`@`localhost`*/ /*!50106 EVENT `ev2` ON SCHEDULE AT '1970-01-02 00:00:00' ON COMPLETION PRESERVE DISABLE DO BEGIN DECLARE ÐÅÒÅÍ1 CHAR(10) CHARACTER SET utf8; SELECT COLLATION(ÐÅÒÅÍ1) AS c1, @@ -2565,7 +2573,7 @@ ALTER DATABASE `mysqltest2` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;; /*!50003 SET sql_mode = '' */ ;; /*!50003 SET @saved_time_zone = @@time_zone */ ;; /*!50003 SET time_zone = 'SYSTEM' */ ;; -/*!50106 CREATE*/ /*!50117 DEFINER=`root`@`localhost`*/ /*!50106 EVENT `ev3` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN +/*!50106 CREATE*/ /*!50117 DEFINER=`root`@`localhost`*/ /*!50106 EVENT `ev3` ON SCHEDULE AT '1970-01-02 00:00:00' ON COMPLETION PRESERVE DISABLE DO BEGIN DECLARE ÐÅÒÅÍ1 CHAR(10) CHARACTER SET utf8; SELECT COLLATION(ÐÅÒÅÍ1) AS c1, @@ -2593,7 +2601,7 @@ ALTER DATABASE `mysqltest2` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;; /*!50003 SET sql_mode = '' */ ;; /*!50003 SET @saved_time_zone = @@time_zone */ ;; /*!50003 SET time_zone = 'SYSTEM' */ ;; -/*!50106 CREATE*/ /*!50117 DEFINER=`root`@`localhost`*/ /*!50106 EVENT `ev4` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN +/*!50106 CREATE*/ /*!50117 DEFINER=`root`@`localhost`*/ /*!50106 EVENT `ev4` ON SCHEDULE AT '1970-01-02 00:00:00' ON COMPLETION PRESERVE DISABLE DO BEGIN DECLARE ÐÅÒÅÍ1 CHAR(10) CHARACTER SET utf8; SELECT COLLATION(ÐÅÒÅÍ1) AS c1, @@ -2635,7 +2643,7 @@ set names koi8r| SHOW CREATE EVENT ev1| Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation -ev1 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `ev1` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN +ev1 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `ev1` ON SCHEDULE AT '1970-01-02 00:00:00' ON COMPLETION PRESERVE DISABLE DO BEGIN DECLARE ÐÅÒÅÍ1 CHAR(10); SELECT COLLATION(ÐÅÒÅÍ1) AS c1, @@ -2648,7 +2656,7 @@ END koi8r koi8r_general_ci utf8_unicode_ci SHOW CREATE EVENT ev2| Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation -ev2 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `ev2` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN +ev2 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `ev2` ON SCHEDULE AT '1970-01-02 00:00:00' ON COMPLETION PRESERVE DISABLE DO BEGIN DECLARE ÐÅÒÅÍ1 CHAR(10) CHARACTER SET utf8; SELECT COLLATION(ÐÅÒÅÍ1) AS c1, @@ -2661,7 +2669,7 @@ END koi8r koi8r_general_ci utf8_unicode_ci SHOW CREATE EVENT mysqltest2.ev3| Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation -ev3 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `ev3` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN +ev3 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `ev3` ON SCHEDULE AT '1970-01-02 00:00:00' ON COMPLETION PRESERVE DISABLE DO BEGIN DECLARE ÐÅÒÅÍ1 CHAR(10) CHARACTER SET utf8; SELECT COLLATION(ÐÅÒÅÍ1) AS c1, @@ -2674,7 +2682,7 @@ END koi8r koi8r_general_ci utf8_unicode_ci SHOW CREATE EVENT mysqltest2.ev3| Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation -ev3 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `ev3` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN +ev3 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `ev3` ON SCHEDULE AT '1970-01-02 00:00:00' ON COMPLETION PRESERVE DISABLE DO BEGIN DECLARE ÐÅÒÅÍ1 CHAR(10) CHARACTER SET utf8; SELECT COLLATION(ÐÅÒÅÍ1) AS c1, @@ -2688,11 +2696,11 @@ END koi8r koi8r_general_ci utf8_unicode_ci SHOW EVENTS LIKE 'ev1'| Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation -mysqltest1 ev1 root@localhost SYSTEM ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED 1 koi8r koi8r_general_ci utf8_unicode_ci +mysqltest1 ev1 root@localhost SYSTEM ONE TIME 1970-01-02 00:00:00 NULL NULL NULL NULL DISABLED 1 koi8r koi8r_general_ci utf8_unicode_ci SHOW EVENTS LIKE 'ev2'| Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation -mysqltest1 ev2 root@localhost SYSTEM ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED 1 koi8r koi8r_general_ci utf8_unicode_ci +mysqltest1 ev2 root@localhost SYSTEM ONE TIME 1970-01-02 00:00:00 NULL NULL NULL NULL DISABLED 1 koi8r koi8r_general_ci utf8_unicode_ci SHOW EVENTS LIKE 'ev3'| Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation @@ -2712,7 +2720,7 @@ COLLATION( ' COLLATION( 'ÔÅËÓÔ') AS c4, @@collation_connection AS c5, @@character_set_client AS c6; -END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 koi8r koi8r_general_ci utf8_unicode_ci +END ONE TIME 1970-01-02 00:00:00 NULL NULL NULL NULL DISABLED PRESERVE CREATED LAST_ALTERED NULL 1 koi8r koi8r_general_ci utf8_unicode_ci SELECT * FROM INFORMATION_SCHEMA.EVENTS WHERE event_name = 'ev2'| EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER TIME_ZONE EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD SQL_MODE STARTS ENDS STATUS ON_COMPLETION CREATED LAST_ALTERED LAST_EXECUTED EVENT_COMMENT ORIGINATOR CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION @@ -2725,7 +2733,7 @@ COLLATION( ' COLLATION( 'ÔÅËÓÔ') AS c4, @@collation_connection AS c5, @@character_set_client AS c6; -END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 koi8r koi8r_general_ci utf8_unicode_ci +END ONE TIME 1970-01-02 00:00:00 NULL NULL NULL NULL DISABLED PRESERVE CREATED LAST_ALTERED NULL 1 koi8r koi8r_general_ci utf8_unicode_ci SELECT * FROM INFORMATION_SCHEMA.EVENTS WHERE event_name = 'ev3'| EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER TIME_ZONE EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD SQL_MODE STARTS ENDS STATUS ON_COMPLETION CREATED LAST_ALTERED LAST_EXECUTED EVENT_COMMENT ORIGINATOR CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION @@ -2738,7 +2746,7 @@ COLLATION( ' COLLATION( 'ÔÅËÓÔ') AS c4, @@collation_connection AS c5, @@character_set_client AS c6; -END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 koi8r koi8r_general_ci utf8_unicode_ci +END ONE TIME 1970-01-02 00:00:00 NULL NULL NULL NULL DISABLED PRESERVE CREATED LAST_ALTERED NULL 1 koi8r koi8r_general_ci utf8_unicode_ci SELECT * FROM INFORMATION_SCHEMA.EVENTS WHERE event_name = 'ev4'| EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER TIME_ZONE EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD SQL_MODE STARTS ENDS STATUS ON_COMPLETION CREATED LAST_ALTERED LAST_EXECUTED EVENT_COMMENT ORIGINATOR CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION @@ -2751,7 +2759,7 @@ COLLATION( ' COLLATION( 'ÔÅËÓÔ') AS c4, @@collation_connection AS c5, @@character_set_client AS c6; -END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 koi8r koi8r_general_ci utf8_unicode_ci +END ONE TIME 1970-01-02 00:00:00 NULL NULL NULL NULL DISABLED PRESERVE CREATED LAST_ALTERED NULL 1 koi8r koi8r_general_ci utf8_unicode_ci ------------------------------------------------------------------- DDL statements within stored routine. diff --git a/mysql-test/r/ddl_i18n_utf8.result b/mysql-test/r/ddl_i18n_utf8.result index 5921a7f53..7f1bb7f04 100644 --- a/mysql-test/r/ddl_i18n_utf8.result +++ b/mysql-test/r/ddl_i18n_utf8.result @@ -2175,7 +2175,7 @@ CREATE DATABASE mysqltest1 DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_unico CREATE DATABASE mysqltest2 DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_unicode_ci| use mysqltest1| -CREATE EVENT ev1 ON SCHEDULE AT '2030-01-01 00:00:00' DO +CREATE EVENT ev1 ON SCHEDULE AT '1970-01-02 00:00:00' ON COMPLETION PRESERVE DISABLE DO BEGIN DECLARE перем1 CHAR(10); SELECT @@ -2186,8 +2186,10 @@ COLLATION(_koi8r ' @@collation_connection AS c5, @@character_set_client AS c6; END| +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. -CREATE EVENT ev2 ON SCHEDULE AT '2030-01-01 00:00:00' DO +CREATE EVENT ev2 ON SCHEDULE AT '1970-01-02 00:00:00' ON COMPLETION PRESERVE DISABLE DO BEGIN DECLARE перем1 CHAR(10) CHARACTER SET utf8; SELECT @@ -2198,8 +2200,10 @@ COLLATION(_koi8r ' @@collation_connection AS c5, @@character_set_client AS c6; END| +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. -CREATE EVENT mysqltest2.ev3 ON SCHEDULE AT '2030-01-01 00:00:00' DO +CREATE EVENT mysqltest2.ev3 ON SCHEDULE AT '1970-01-02 00:00:00' ON COMPLETION PRESERVE DISABLE DO BEGIN DECLARE перем1 CHAR(10) CHARACTER SET utf8; SELECT @@ -2210,8 +2214,10 @@ COLLATION(_koi8r ' @@collation_connection AS c5, @@character_set_client AS c6; END| +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. -CREATE EVENT mysqltest2.ev4 ON SCHEDULE AT '2030-01-01 00:00:00' DO +CREATE EVENT mysqltest2.ev4 ON SCHEDULE AT '1970-01-02 00:00:00' ON COMPLETION PRESERVE DISABLE DO BEGIN DECLARE перем1 CHAR(10) CHARACTER SET utf8; SELECT @@ -2222,12 +2228,14 @@ COLLATION(_koi8r ' @@collation_connection AS c5, @@character_set_client AS c6; END| +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SHOW CREATE EVENT ev1| Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation -ev1 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `ev1` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN +ev1 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `ev1` ON SCHEDULE AT '1970-01-02 00:00:00' ON COMPLETION PRESERVE DISABLE DO BEGIN DECLARE перем1 CHAR(10); SELECT COLLATION(перем1) AS c1, @@ -2240,7 +2248,7 @@ END utf8 utf8_general_ci utf8_unicode_ci SHOW CREATE EVENT ev2| Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation -ev2 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `ev2` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN +ev2 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `ev2` ON SCHEDULE AT '1970-01-02 00:00:00' ON COMPLETION PRESERVE DISABLE DO BEGIN DECLARE перем1 CHAR(10) CHARACTER SET utf8; SELECT COLLATION(перем1) AS c1, @@ -2253,7 +2261,7 @@ END utf8 utf8_general_ci utf8_unicode_ci SHOW CREATE EVENT mysqltest2.ev3| Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation -ev3 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `ev3` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN +ev3 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `ev3` ON SCHEDULE AT '1970-01-02 00:00:00' ON COMPLETION PRESERVE DISABLE DO BEGIN DECLARE перем1 CHAR(10) CHARACTER SET utf8; SELECT COLLATION(перем1) AS c1, @@ -2266,7 +2274,7 @@ END utf8 utf8_general_ci utf8_unicode_ci SHOW CREATE EVENT mysqltest2.ev3| Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation -ev3 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `ev3` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN +ev3 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `ev3` ON SCHEDULE AT '1970-01-02 00:00:00' ON COMPLETION PRESERVE DISABLE DO BEGIN DECLARE перем1 CHAR(10) CHARACTER SET utf8; SELECT COLLATION(перем1) AS c1, @@ -2280,11 +2288,11 @@ END utf8 utf8_general_ci utf8_unicode_ci SHOW EVENTS LIKE 'ev1'| Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation -mysqltest1 ev1 root@localhost SYSTEM ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED 1 utf8 utf8_general_ci utf8_unicode_ci +mysqltest1 ev1 root@localhost SYSTEM ONE TIME 1970-01-02 00:00:00 NULL NULL NULL NULL DISABLED 1 utf8 utf8_general_ci utf8_unicode_ci SHOW EVENTS LIKE 'ev2'| Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation -mysqltest1 ev2 root@localhost SYSTEM ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED 1 utf8 utf8_general_ci utf8_unicode_ci +mysqltest1 ev2 root@localhost SYSTEM ONE TIME 1970-01-02 00:00:00 NULL NULL NULL NULL DISABLED 1 utf8 utf8_general_ci utf8_unicode_ci SHOW EVENTS LIKE 'ev3'| Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation @@ -2304,7 +2312,7 @@ COLLATION( 'текÑÑ‚') AS c3, COLLATION( 'текÑÑ‚') AS c4, @@collation_connection AS c5, @@character_set_client AS c6; -END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 utf8 utf8_general_ci utf8_unicode_ci +END ONE TIME 1970-01-02 00:00:00 NULL NULL NULL NULL DISABLED PRESERVE CREATED LAST_ALTERED NULL 1 utf8 utf8_general_ci utf8_unicode_ci SELECT * FROM INFORMATION_SCHEMA.EVENTS WHERE event_name = 'ev2'| EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER TIME_ZONE EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD SQL_MODE STARTS ENDS STATUS ON_COMPLETION CREATED LAST_ALTERED LAST_EXECUTED EVENT_COMMENT ORIGINATOR CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION @@ -2317,7 +2325,7 @@ COLLATION( 'текÑÑ‚') AS c3, COLLATION( 'текÑÑ‚') AS c4, @@collation_connection AS c5, @@character_set_client AS c6; -END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 utf8 utf8_general_ci utf8_unicode_ci +END ONE TIME 1970-01-02 00:00:00 NULL NULL NULL NULL DISABLED PRESERVE CREATED LAST_ALTERED NULL 1 utf8 utf8_general_ci utf8_unicode_ci SELECT * FROM INFORMATION_SCHEMA.EVENTS WHERE event_name = 'ev3'| EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER TIME_ZONE EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD SQL_MODE STARTS ENDS STATUS ON_COMPLETION CREATED LAST_ALTERED LAST_EXECUTED EVENT_COMMENT ORIGINATOR CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION @@ -2330,7 +2338,7 @@ COLLATION( 'текÑÑ‚') AS c3, COLLATION( 'текÑÑ‚') AS c4, @@collation_connection AS c5, @@character_set_client AS c6; -END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 utf8 utf8_general_ci utf8_unicode_ci +END ONE TIME 1970-01-02 00:00:00 NULL NULL NULL NULL DISABLED PRESERVE CREATED LAST_ALTERED NULL 1 utf8 utf8_general_ci utf8_unicode_ci SELECT * FROM INFORMATION_SCHEMA.EVENTS WHERE event_name = 'ev4'| EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER TIME_ZONE EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD SQL_MODE STARTS ENDS STATUS ON_COMPLETION CREATED LAST_ALTERED LAST_EXECUTED EVENT_COMMENT ORIGINATOR CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION @@ -2343,7 +2351,7 @@ COLLATION( 'текÑÑ‚') AS c3, COLLATION( 'текÑÑ‚') AS c4, @@collation_connection AS c5, @@character_set_client AS c6; -END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 utf8 utf8_general_ci utf8_unicode_ci +END ONE TIME 1970-01-02 00:00:00 NULL NULL NULL NULL DISABLED PRESERVE CREATED LAST_ALTERED NULL 1 utf8 utf8_general_ci utf8_unicode_ci ALTER DATABASE mysqltest1 COLLATE cp866_general_ci| @@ -2362,7 +2370,7 @@ set names utf8| SHOW CREATE EVENT ev1| Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation -ev1 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `ev1` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN +ev1 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `ev1` ON SCHEDULE AT '1970-01-02 00:00:00' ON COMPLETION PRESERVE DISABLE DO BEGIN DECLARE перем1 CHAR(10); SELECT COLLATION(перем1) AS c1, @@ -2375,7 +2383,7 @@ END utf8 utf8_general_ci utf8_unicode_ci SHOW CREATE EVENT ev2| Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation -ev2 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `ev2` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN +ev2 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `ev2` ON SCHEDULE AT '1970-01-02 00:00:00' ON COMPLETION PRESERVE DISABLE DO BEGIN DECLARE перем1 CHAR(10) CHARACTER SET utf8; SELECT COLLATION(перем1) AS c1, @@ -2388,7 +2396,7 @@ END utf8 utf8_general_ci utf8_unicode_ci SHOW CREATE EVENT mysqltest2.ev3| Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation -ev3 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `ev3` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN +ev3 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `ev3` ON SCHEDULE AT '1970-01-02 00:00:00' ON COMPLETION PRESERVE DISABLE DO BEGIN DECLARE перем1 CHAR(10) CHARACTER SET utf8; SELECT COLLATION(перем1) AS c1, @@ -2401,7 +2409,7 @@ END utf8 utf8_general_ci utf8_unicode_ci SHOW CREATE EVENT mysqltest2.ev3| Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation -ev3 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `ev3` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN +ev3 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `ev3` ON SCHEDULE AT '1970-01-02 00:00:00' ON COMPLETION PRESERVE DISABLE DO BEGIN DECLARE перем1 CHAR(10) CHARACTER SET utf8; SELECT COLLATION(перем1) AS c1, @@ -2415,11 +2423,11 @@ END utf8 utf8_general_ci utf8_unicode_ci SHOW EVENTS LIKE 'ev1'| Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation -mysqltest1 ev1 root@localhost SYSTEM ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED 1 utf8 utf8_general_ci utf8_unicode_ci +mysqltest1 ev1 root@localhost SYSTEM ONE TIME 1970-01-02 00:00:00 NULL NULL NULL NULL DISABLED 1 utf8 utf8_general_ci utf8_unicode_ci SHOW EVENTS LIKE 'ev2'| Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation -mysqltest1 ev2 root@localhost SYSTEM ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED 1 utf8 utf8_general_ci utf8_unicode_ci +mysqltest1 ev2 root@localhost SYSTEM ONE TIME 1970-01-02 00:00:00 NULL NULL NULL NULL DISABLED 1 utf8 utf8_general_ci utf8_unicode_ci SHOW EVENTS LIKE 'ev3'| Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation @@ -2439,7 +2447,7 @@ COLLATION( 'текÑÑ‚') AS c3, COLLATION( 'текÑÑ‚') AS c4, @@collation_connection AS c5, @@character_set_client AS c6; -END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 utf8 utf8_general_ci utf8_unicode_ci +END ONE TIME 1970-01-02 00:00:00 NULL NULL NULL NULL DISABLED PRESERVE CREATED LAST_ALTERED NULL 1 utf8 utf8_general_ci utf8_unicode_ci SELECT * FROM INFORMATION_SCHEMA.EVENTS WHERE event_name = 'ev2'| EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER TIME_ZONE EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD SQL_MODE STARTS ENDS STATUS ON_COMPLETION CREATED LAST_ALTERED LAST_EXECUTED EVENT_COMMENT ORIGINATOR CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION @@ -2452,7 +2460,7 @@ COLLATION( 'текÑÑ‚') AS c3, COLLATION( 'текÑÑ‚') AS c4, @@collation_connection AS c5, @@character_set_client AS c6; -END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 utf8 utf8_general_ci utf8_unicode_ci +END ONE TIME 1970-01-02 00:00:00 NULL NULL NULL NULL DISABLED PRESERVE CREATED LAST_ALTERED NULL 1 utf8 utf8_general_ci utf8_unicode_ci SELECT * FROM INFORMATION_SCHEMA.EVENTS WHERE event_name = 'ev3'| EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER TIME_ZONE EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD SQL_MODE STARTS ENDS STATUS ON_COMPLETION CREATED LAST_ALTERED LAST_EXECUTED EVENT_COMMENT ORIGINATOR CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION @@ -2465,7 +2473,7 @@ COLLATION( 'текÑÑ‚') AS c3, COLLATION( 'текÑÑ‚') AS c4, @@collation_connection AS c5, @@character_set_client AS c6; -END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 utf8 utf8_general_ci utf8_unicode_ci +END ONE TIME 1970-01-02 00:00:00 NULL NULL NULL NULL DISABLED PRESERVE CREATED LAST_ALTERED NULL 1 utf8 utf8_general_ci utf8_unicode_ci SELECT * FROM INFORMATION_SCHEMA.EVENTS WHERE event_name = 'ev4'| EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER TIME_ZONE EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD SQL_MODE STARTS ENDS STATUS ON_COMPLETION CREATED LAST_ALTERED LAST_EXECUTED EVENT_COMMENT ORIGINATOR CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION @@ -2478,7 +2486,7 @@ COLLATION( 'текÑÑ‚') AS c3, COLLATION( 'текÑÑ‚') AS c4, @@collation_connection AS c5, @@character_set_client AS c6; -END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 utf8 utf8_general_ci utf8_unicode_ci +END ONE TIME 1970-01-02 00:00:00 NULL NULL NULL NULL DISABLED PRESERVE CREATED LAST_ALTERED NULL 1 utf8 utf8_general_ci utf8_unicode_ci ---> Dump of mysqltest1 @@ -2498,7 +2506,7 @@ ALTER DATABASE `mysqltest1` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;; /*!50003 SET sql_mode = '' */ ;; /*!50003 SET @saved_time_zone = @@time_zone */ ;; /*!50003 SET time_zone = 'SYSTEM' */ ;; -/*!50106 CREATE*/ /*!50117 DEFINER=`root`@`localhost`*/ /*!50106 EVENT `ev1` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN +/*!50106 CREATE*/ /*!50117 DEFINER=`root`@`localhost`*/ /*!50106 EVENT `ev1` ON SCHEDULE AT '1970-01-02 00:00:00' ON COMPLETION PRESERVE DISABLE DO BEGIN DECLARE перем1 CHAR(10); SELECT COLLATION(перем1) AS c1, @@ -2526,7 +2534,7 @@ ALTER DATABASE `mysqltest1` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;; /*!50003 SET sql_mode = '' */ ;; /*!50003 SET @saved_time_zone = @@time_zone */ ;; /*!50003 SET time_zone = 'SYSTEM' */ ;; -/*!50106 CREATE*/ /*!50117 DEFINER=`root`@`localhost`*/ /*!50106 EVENT `ev2` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN +/*!50106 CREATE*/ /*!50117 DEFINER=`root`@`localhost`*/ /*!50106 EVENT `ev2` ON SCHEDULE AT '1970-01-02 00:00:00' ON COMPLETION PRESERVE DISABLE DO BEGIN DECLARE перем1 CHAR(10) CHARACTER SET utf8; SELECT COLLATION(перем1) AS c1, @@ -2565,7 +2573,7 @@ ALTER DATABASE `mysqltest2` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;; /*!50003 SET sql_mode = '' */ ;; /*!50003 SET @saved_time_zone = @@time_zone */ ;; /*!50003 SET time_zone = 'SYSTEM' */ ;; -/*!50106 CREATE*/ /*!50117 DEFINER=`root`@`localhost`*/ /*!50106 EVENT `ev3` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN +/*!50106 CREATE*/ /*!50117 DEFINER=`root`@`localhost`*/ /*!50106 EVENT `ev3` ON SCHEDULE AT '1970-01-02 00:00:00' ON COMPLETION PRESERVE DISABLE DO BEGIN DECLARE перем1 CHAR(10) CHARACTER SET utf8; SELECT COLLATION(перем1) AS c1, @@ -2593,7 +2601,7 @@ ALTER DATABASE `mysqltest2` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;; /*!50003 SET sql_mode = '' */ ;; /*!50003 SET @saved_time_zone = @@time_zone */ ;; /*!50003 SET time_zone = 'SYSTEM' */ ;; -/*!50106 CREATE*/ /*!50117 DEFINER=`root`@`localhost`*/ /*!50106 EVENT `ev4` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN +/*!50106 CREATE*/ /*!50117 DEFINER=`root`@`localhost`*/ /*!50106 EVENT `ev4` ON SCHEDULE AT '1970-01-02 00:00:00' ON COMPLETION PRESERVE DISABLE DO BEGIN DECLARE перем1 CHAR(10) CHARACTER SET utf8; SELECT COLLATION(перем1) AS c1, @@ -2635,7 +2643,7 @@ set names utf8| SHOW CREATE EVENT ev1| Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation -ev1 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `ev1` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN +ev1 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `ev1` ON SCHEDULE AT '1970-01-02 00:00:00' ON COMPLETION PRESERVE DISABLE DO BEGIN DECLARE перем1 CHAR(10); SELECT COLLATION(перем1) AS c1, @@ -2648,7 +2656,7 @@ END utf8 utf8_general_ci utf8_unicode_ci SHOW CREATE EVENT ev2| Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation -ev2 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `ev2` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN +ev2 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `ev2` ON SCHEDULE AT '1970-01-02 00:00:00' ON COMPLETION PRESERVE DISABLE DO BEGIN DECLARE перем1 CHAR(10) CHARACTER SET utf8; SELECT COLLATION(перем1) AS c1, @@ -2661,7 +2669,7 @@ END utf8 utf8_general_ci utf8_unicode_ci SHOW CREATE EVENT mysqltest2.ev3| Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation -ev3 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `ev3` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN +ev3 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `ev3` ON SCHEDULE AT '1970-01-02 00:00:00' ON COMPLETION PRESERVE DISABLE DO BEGIN DECLARE перем1 CHAR(10) CHARACTER SET utf8; SELECT COLLATION(перем1) AS c1, @@ -2674,7 +2682,7 @@ END utf8 utf8_general_ci utf8_unicode_ci SHOW CREATE EVENT mysqltest2.ev3| Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation -ev3 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `ev3` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN +ev3 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `ev3` ON SCHEDULE AT '1970-01-02 00:00:00' ON COMPLETION PRESERVE DISABLE DO BEGIN DECLARE перем1 CHAR(10) CHARACTER SET utf8; SELECT COLLATION(перем1) AS c1, @@ -2688,11 +2696,11 @@ END utf8 utf8_general_ci utf8_unicode_ci SHOW EVENTS LIKE 'ev1'| Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation -mysqltest1 ev1 root@localhost SYSTEM ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED 1 utf8 utf8_general_ci utf8_unicode_ci +mysqltest1 ev1 root@localhost SYSTEM ONE TIME 1970-01-02 00:00:00 NULL NULL NULL NULL DISABLED 1 utf8 utf8_general_ci utf8_unicode_ci SHOW EVENTS LIKE 'ev2'| Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation -mysqltest1 ev2 root@localhost SYSTEM ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED 1 utf8 utf8_general_ci utf8_unicode_ci +mysqltest1 ev2 root@localhost SYSTEM ONE TIME 1970-01-02 00:00:00 NULL NULL NULL NULL DISABLED 1 utf8 utf8_general_ci utf8_unicode_ci SHOW EVENTS LIKE 'ev3'| Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation @@ -2712,7 +2720,7 @@ COLLATION( 'текÑÑ‚') AS c3, COLLATION( 'текÑÑ‚') AS c4, @@collation_connection AS c5, @@character_set_client AS c6; -END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 utf8 utf8_general_ci utf8_unicode_ci +END ONE TIME 1970-01-02 00:00:00 NULL NULL NULL NULL DISABLED PRESERVE CREATED LAST_ALTERED NULL 1 utf8 utf8_general_ci utf8_unicode_ci SELECT * FROM INFORMATION_SCHEMA.EVENTS WHERE event_name = 'ev2'| EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER TIME_ZONE EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD SQL_MODE STARTS ENDS STATUS ON_COMPLETION CREATED LAST_ALTERED LAST_EXECUTED EVENT_COMMENT ORIGINATOR CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION @@ -2725,7 +2733,7 @@ COLLATION( 'текÑÑ‚') AS c3, COLLATION( 'текÑÑ‚') AS c4, @@collation_connection AS c5, @@character_set_client AS c6; -END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 utf8 utf8_general_ci utf8_unicode_ci +END ONE TIME 1970-01-02 00:00:00 NULL NULL NULL NULL DISABLED PRESERVE CREATED LAST_ALTERED NULL 1 utf8 utf8_general_ci utf8_unicode_ci SELECT * FROM INFORMATION_SCHEMA.EVENTS WHERE event_name = 'ev3'| EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER TIME_ZONE EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD SQL_MODE STARTS ENDS STATUS ON_COMPLETION CREATED LAST_ALTERED LAST_EXECUTED EVENT_COMMENT ORIGINATOR CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION @@ -2738,7 +2746,7 @@ COLLATION( 'текÑÑ‚') AS c3, COLLATION( 'текÑÑ‚') AS c4, @@collation_connection AS c5, @@character_set_client AS c6; -END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 utf8 utf8_general_ci utf8_unicode_ci +END ONE TIME 1970-01-02 00:00:00 NULL NULL NULL NULL DISABLED PRESERVE CREATED LAST_ALTERED NULL 1 utf8 utf8_general_ci utf8_unicode_ci SELECT * FROM INFORMATION_SCHEMA.EVENTS WHERE event_name = 'ev4'| EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER TIME_ZONE EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD SQL_MODE STARTS ENDS STATUS ON_COMPLETION CREATED LAST_ALTERED LAST_EXECUTED EVENT_COMMENT ORIGINATOR CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION @@ -2751,7 +2759,7 @@ COLLATION( 'текÑÑ‚') AS c3, COLLATION( 'текÑÑ‚') AS c4, @@collation_connection AS c5, @@character_set_client AS c6; -END ONE TIME 2030-01-01 00:00:00 NULL NULL NULL NULL ENABLED NOT PRESERVE CREATED LAST_ALTERED NULL 1 utf8 utf8_general_ci utf8_unicode_ci +END ONE TIME 1970-01-02 00:00:00 NULL NULL NULL NULL DISABLED PRESERVE CREATED LAST_ALTERED NULL 1 utf8 utf8_general_ci utf8_unicode_ci ------------------------------------------------------------------- DDL statements within stored routine. diff --git a/mysql-test/r/events_1.result b/mysql-test/r/events_1.result index a105dcd21..8ea45fa8f 100644 --- a/mysql-test/r/events_1.result +++ b/mysql-test/r/events_1.result @@ -12,7 +12,11 @@ GRANT EVENT ON db_x.* TO pauline@localhost; USE db_x; CREATE TABLE x_table(a int); CREATE EVENT e_x1 ON SCHEDULE EVERY 1 SECOND DO DROP DATABASE db_x; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. CREATE EVENT e_x2 ON SCHEDULE EVERY 1 SECOND DO DROP TABLE x_table; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SHOW DATABASES LIKE 'db_x'; Database (db_x) db_x @@ -34,6 +38,8 @@ drop event if exists event1; Warnings: Note 1305 Event event1 does not exist create event event1 on schedule every 15 minute starts now() ends date_add(now(), interval 5 hour) DO begin end; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. alter event event1 rename to event2 enable; alter event event2 disable; alter event event2 enable; @@ -42,15 +48,19 @@ alter event event2 on schedule every 1 year on completion preserve rename to eve alter event event3 rename to event2; drop event event2; create event event2 on schedule every 2 second starts now() ends date_add(now(), interval 5 hour) comment "some" DO begin end; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. drop event event2; CREATE EVENT event_starts_test ON SCHEDULE EVERY 10 SECOND COMMENT "" DO SELECT 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SELECT interval_field, interval_value, body FROM mysql.event WHERE db='events_test' AND name='event_starts_test'; interval_field interval_value body SECOND 10 SELECT 1 SELECT execute_at IS NULL, starts IS NULL, ends IS NULL, comment FROM mysql.event WHERE db='events_test' AND name='event_starts_test'; execute_at IS NULL starts IS NULL ends IS NULL comment 1 0 1 -ALTER EVENT event_starts_test ON SCHEDULE AT '2020-02-02 20:00:02'; +ALTER EVENT event_starts_test ON SCHEDULE AT '1970-01-02 00:00:00' ON COMPLETION PRESERVE DISABLE; SELECT execute_at IS NULL, starts IS NULL, ends IS NULL, comment FROM mysql.event WHERE db='events_test' AND name='event_starts_test'; execute_at IS NULL starts IS NULL ends IS NULL comment 0 1 1 @@ -63,7 +73,9 @@ SELECT execute_at IS NULL, starts IS NULL, ends IS NULL, comment FROM mysql.even execute_at IS NULL starts IS NULL ends IS NULL comment 0 1 1 DROP EVENT event_starts_test; -CREATE EVENT event_starts_test ON SCHEDULE EVERY 20 SECOND STARTS '2020-02-02 20:00:02' ENDS '2022-02-02 20:00:02' DO SELECT 2; +CREATE EVENT event_starts_test ON SCHEDULE EVERY 20 SECOND STARTS '1970-01-02 00:00:00' ENDS '1970-01-03 00:00:00' ON COMPLETION PRESERVE DISABLE DO SELECT 2; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SELECT execute_at IS NULL, starts IS NULL, ends IS NULL, comment FROM mysql.event WHERE db='events_test' AND name='event_starts_test'; execute_at IS NULL starts IS NULL ends IS NULL comment 1 0 0 @@ -78,6 +90,8 @@ execute_at IS NULL starts IS NULL ends IS NULL comment DROP EVENT event_starts_test; create table test_nested(a int); create event e_43 on schedule every 1 second do set @a = 5; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. alter event e_43 do alter event e_43 do set @a = 4; ERROR HY000: Recursion of EVENT DDL statements is forbidden when body is present alter event e_43 do @@ -106,6 +120,8 @@ alter event non_existant rename to non_existant_too; ERROR HY000: Unknown event 'non_existant' set global event_scheduler = off; create event existant on schedule at now() + interval 1 year do select 12; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. alter event non_existant rename to existant; ERROR HY000: Event 'existant' already exists alter event existant rename to events_test.existant; @@ -116,6 +132,8 @@ drop event if exists event3; Warnings: Note 1305 Event event3 does not exist create event event3 on schedule every 50 + 10 minute starts date_add(curdate(), interval 5 minute) ends date_add(curdate(), interval 5 day) comment "portokala_comment" DO insert into t_event3 values (unix_timestamp(), rand()); +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. select count(*) from t_event3; count(*) 0 @@ -123,79 +141,117 @@ drop event event3; drop table t_event3; set names utf8; CREATE EVENT root6 ON SCHEDULE EVERY '10:20' MINUTE_SECOND ON COMPLETION PRESERVE ENABLE COMMENT 'some comment' DO select 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SHOW CREATE EVENT root6; Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation root6 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `root6` ON SCHEDULE EVERY '10:20' MINUTE_SECOND STARTS '#' ON COMPLETION PRESERVE ENABLE COMMENT 'some comment' DO select 1 utf8 utf8_general_ci latin1_swedish_ci create event root7 on schedule every 2 year do select 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SHOW CREATE EVENT root7; Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation root7 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `root7` ON SCHEDULE EVERY 2 YEAR STARTS '#' ON COMPLETION NOT PRESERVE ENABLE DO select 1 utf8 utf8_general_ci latin1_swedish_ci create event root8 on schedule every '2:5' year_month do select 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SHOW CREATE EVENT root8; Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation root8 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `root8` ON SCHEDULE EVERY '2-5' YEAR_MONTH STARTS '#' ON COMPLETION NOT PRESERVE ENABLE DO select 1 utf8 utf8_general_ci latin1_swedish_ci create event root8_1 on schedule every '2:15' year_month do select 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SHOW CREATE EVENT root8_1; Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation root8_1 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `root8_1` ON SCHEDULE EVERY '3-3' YEAR_MONTH STARTS '#' ON COMPLETION NOT PRESERVE ENABLE DO select 1 utf8 utf8_general_ci latin1_swedish_ci create event root9 on schedule every 2 week ON COMPLETION PRESERVE DISABLE COMMENT 'коментар на кирилица' do select 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SHOW CREATE EVENT root9; Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation root9 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `root9` ON SCHEDULE EVERY 2 WEEK STARTS '#' ON COMPLETION PRESERVE DISABLE COMMENT 'коментар на кирилица' DO select 1 utf8 utf8_general_ci latin1_swedish_ci create event root10 on schedule every '20:5' day_hour do select 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SHOW CREATE EVENT root10; Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation root10 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `root10` ON SCHEDULE EVERY '20 5' DAY_HOUR STARTS '#' ON COMPLETION NOT PRESERVE ENABLE DO select 1 utf8 utf8_general_ci latin1_swedish_ci create event root11 on schedule every '20:25' day_hour do select 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SHOW CREATE EVENT root11; Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation root11 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `root11` ON SCHEDULE EVERY '21 1' DAY_HOUR STARTS '#' ON COMPLETION NOT PRESERVE ENABLE DO select 1 utf8 utf8_general_ci latin1_swedish_ci create event root12 on schedule every '20:25' hour_minute do select 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SHOW CREATE EVENT root12; Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation root12 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `root12` ON SCHEDULE EVERY '20:25' HOUR_MINUTE STARTS '#' ON COMPLETION NOT PRESERVE ENABLE DO select 1 utf8 utf8_general_ci latin1_swedish_ci create event root13 on schedule every '25:25' hour_minute do select 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SHOW CREATE EVENT root13; Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation root13 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `root13` ON SCHEDULE EVERY '25:25' HOUR_MINUTE STARTS '#' ON COMPLETION NOT PRESERVE ENABLE DO select 1 utf8 utf8_general_ci latin1_swedish_ci create event root13_1 on schedule every '11:65' hour_minute do select 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SHOW CREATE EVENT root13_1; Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation root13_1 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `root13_1` ON SCHEDULE EVERY '12:5' HOUR_MINUTE STARTS '#' ON COMPLETION NOT PRESERVE ENABLE DO select 1 utf8 utf8_general_ci latin1_swedish_ci create event root14 on schedule every '35:35' minute_second do select 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SHOW CREATE EVENT root14; Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation root14 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `root14` ON SCHEDULE EVERY '35:35' MINUTE_SECOND STARTS '#' ON COMPLETION NOT PRESERVE ENABLE DO select 1 utf8 utf8_general_ci latin1_swedish_ci create event root15 on schedule every '35:66' minute_second do select 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SHOW CREATE EVENT root15; Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation root15 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `root15` ON SCHEDULE EVERY '36:6' MINUTE_SECOND STARTS '#' ON COMPLETION NOT PRESERVE ENABLE DO select 1 utf8 utf8_general_ci latin1_swedish_ci create event root16 on schedule every '35:56' day_minute do select 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SHOW CREATE EVENT root16; Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation root16 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `root16` ON SCHEDULE EVERY '1 11:56' DAY_MINUTE STARTS '#' ON COMPLETION NOT PRESERVE ENABLE DO select 1 utf8 utf8_general_ci latin1_swedish_ci create event root17 on schedule every '35:12:45' day_minute do select 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SHOW CREATE EVENT root17; Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation root17 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `root17` ON SCHEDULE EVERY '35 12:45' DAY_MINUTE STARTS '#' ON COMPLETION NOT PRESERVE ENABLE DO select 1 utf8 utf8_general_ci latin1_swedish_ci create event root17_1 on schedule every '35:25:65' day_minute do select 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SHOW CREATE EVENT root17_1; Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation root17_1 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `root17_1` ON SCHEDULE EVERY '36 2:5' DAY_MINUTE STARTS '#' ON COMPLETION NOT PRESERVE ENABLE DO select 1 utf8 utf8_general_ci latin1_swedish_ci create event root18 on schedule every '35:12:45' hour_second do select 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SHOW CREATE EVENT root18; Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation root18 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `root18` ON SCHEDULE EVERY '35:12:45' HOUR_SECOND STARTS '#' ON COMPLETION NOT PRESERVE ENABLE DO select 1 utf8 utf8_general_ci latin1_swedish_ci create event root19 on schedule every '15:59:85' hour_second do select 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SHOW CREATE EVENT root19; Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation root19 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `root19` ON SCHEDULE EVERY '16:0:25' HOUR_SECOND STARTS '#' ON COMPLETION NOT PRESERVE ENABLE DO select 1 utf8 utf8_general_ci latin1_swedish_ci create event root20 on schedule every '50:20:12:45' day_second do select 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SHOW CREATE EVENT root20; Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation root20 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `root20` ON SCHEDULE EVERY '50 20:12:45' DAY_SECOND STARTS '#' ON COMPLETION NOT PRESERVE ENABLE DO select 1 utf8 utf8_general_ci latin1_swedish_ci set names cp1251; create event ðóóò21 on schedule every '50:23:59:95' day_second COMMENT 'òîâà å 1251 êîìåíòàð' do select 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SHOW CREATE EVENT ðóóò21; Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation ðóóò21 SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `руут21` ON SCHEDULE EVERY '51 0:0:35' DAY_SECOND STARTS '#' ON COMPLETION NOT PRESERVE ENABLE COMMENT 'това е 1251 коментар' DO select 1 cp1251 cp1251_general_ci latin1_swedish_ci @@ -255,6 +311,8 @@ set names latin1; Create a test event. Only event metadata is relevant, the actual schedule and body are not. CREATE EVENT intact_check ON SCHEDULE EVERY 10 HOUR DO SELECT "nothing"; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SHOW EVENTS; Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation events_test intact_check root@localhost SYSTEM RECURRING NULL 10 # # NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci @@ -301,6 +359,8 @@ SET GLOBAL event_scheduler=OFF; ALTER TABLE mysql.event DROP dummy; DROP EVENT intact_check; CREATE EVENT intact_check ON SCHEDULE EVERY 10 HOUR DO SELECT "nothing"; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. Now let's add a column to the first position: the server expects to see event schema name there @@ -344,6 +404,8 @@ Clean up ALTER TABLE mysql.event DROP dummy; DELETE FROM mysql.event; CREATE EVENT intact_check ON SCHEDULE EVERY 10 HOUR DO SELECT "nothing"; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. Back up the table, further changes are not reversible CREATE TABLE event_like LIKE mysql.event; INSERT INTO event_like SELECT * FROM mysql.event; @@ -442,6 +504,8 @@ Db Name Definer Time zone Type Execute at Interval value Interval field Starts E # CREATE EVENT ev1 ON SCHEDULE EVERY 5 HOUR DO SELECT 5; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. ALTER EVENT ev1 ON SCHEDULE EVERY 8 HOUR DO SELECT 8; CREATE TABLE event_original LIKE mysql.event; @@ -475,6 +539,8 @@ Db Name Definer Time zone Type Execute at Interval value Interval field Starts E # CREATE TABLE t1 (a INT); CREATE EVENT ev1 ON SCHEDULE EVERY 5 SECOND DO DELETE FROM t1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SHOW EVENTS; Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation events_test ev1 root@localhost SYSTEM RECURRING NULL 5 # # NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci @@ -484,6 +550,8 @@ Db Name Definer Time zone Type Execute at Interval value Interval field Starts E events_test ev1 root@localhost SYSTEM RECURRING NULL 5 # # NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci DROP EVENT ev1; CREATE EVENT ev1 ON SCHEDULE EVERY 5 SECOND DO DELETE FROM t1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SHOW EVENTS; Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation events_test ev1 root@localhost SYSTEM RECURRING NULL 5 # # NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci diff --git a/mysql-test/r/events_2.result b/mysql-test/r/events_2.result index 1589fbddf..280ca6c8d 100644 --- a/mysql-test/r/events_2.result +++ b/mysql-test/r/events_2.result @@ -3,6 +3,8 @@ drop database if exists events_test; create database events_test; use events_test; create event e_26 on schedule at '2037-01-01 00:00:00' disable do set @a = 5; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. select db, name, body, definer, convert_tz(execute_at, 'UTC', 'SYSTEM'), on_completion from mysql.event; db name body definer convert_tz(execute_at, 'UTC', 'SYSTEM') on_completion events_test e_26 set @a = 5 root@localhost 2037-01-01 00:00:00 DROP @@ -13,6 +15,8 @@ create event e_26 on schedule at 'definitely not a datetime' disable do set @a = ERROR HY000: Incorrect AT value: 'definitely not a datetime' set names utf8; create event задачка on schedule every 123 minute starts now() ends now() + interval 1 month do select 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. drop event задачка; "DISABLE the scheduler. Testing that it does not work when the variable is 0" set global event_scheduler=off; @@ -22,6 +26,8 @@ select get_lock("test_lock1", 20); get_lock("test_lock1", 20) 1 create event закачка on schedule every 10 hour do select get_lock("test_lock1", 20); +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. "Should return 1 row" select definer, name, db from mysql.event; definer name db @@ -94,22 +100,30 @@ on schedule every 10 hour disable do select 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. select event_schema, event_name, definer, event_definition from information_schema.events where event_name='white_space'; event_schema event_name definer event_definition events_test white_space root@localhost select 1 drop event white_space; create event white_space on schedule every 10 hour disable do select 2; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. select event_schema, event_name, definer, event_definition from information_schema.events where event_name='white_space'; event_schema event_name definer event_definition events_test white_space root@localhost select 2 drop event white_space; create event white_space on schedule every 10 hour disable do select 3; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. select event_schema, event_name, definer, event_definition from information_schema.events where event_name='white_space'; event_schema event_name definer event_definition events_test white_space root@localhost select 3 drop event white_space; create event e1 on schedule every 1 year do set @a = 5; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. create table t1 (s1 int); create trigger t1_ai after insert on t1 for each row show create event e1; ERROR 0A000: Not allowed to return a result set from a trigger @@ -126,6 +140,8 @@ LOCK TABLES mode. create table t1 (a int); create event e1 on schedule every 10 hour do select 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. lock table t1 read; show create event e1; Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation @@ -229,6 +245,8 @@ Events in sub-statements, events and prelocking create event e1 on schedule every 10 hour do select 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. create function f1() returns int begin show create event e1; @@ -321,6 +339,8 @@ drop table t1| drop event e1| set names utf8; create event имÑ_ÑобытиÑ_в_кодировке_утф8_длиной_больше_чем_48 on schedule every 2 year do select 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. select EVENT_NAME from information_schema.events where event_schema='test'; EVENT_NAME @@ -333,6 +353,8 @@ create event event_35981 on schedule every 6 month on completion preserve disable do select 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. The following SELECTs should all give 1 select count(*) from information_schema.events where event_schema = database() and event_name = 'event_35981' and @@ -367,6 +389,8 @@ drop event event_35981; create event event_35981 on schedule every 6 month disable do select 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. select count(*) from information_schema.events where event_schema = database() and event_name = 'event_35981' and on_completion = 'NOT PRESERVE'; @@ -377,6 +401,8 @@ create event event_35981 on schedule every 1 hour starts current_timestamp on completion not preserve do select 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. alter event event_35981 on schedule every 1 hour starts '1999-01-01 00:00:00' ends '1999-01-02 00:00:00'; ERROR HY000: Event execution time is in the past and ON COMPLETION NOT PRESERVE is set. The event was not changed. Specify a time in the future. @@ -385,6 +411,8 @@ create event event_35981 on schedule every 1 hour starts current_timestamp on completion not preserve do select 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. alter event event_35981 on schedule every 1 hour starts '1999-01-01 00:00:00' ends '1999-01-02 00:00:00' on completion preserve; Warnings: @@ -394,6 +422,8 @@ create event event_35981 on schedule every 1 hour starts current_timestamp on completion preserve do select 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. alter event event_35981 on schedule every 1 hour starts '1999-01-01 00:00:00' ends '1999-01-02 00:00:00'; Warnings: diff --git a/mysql-test/r/events_bugs.result b/mysql-test/r/events_bugs.result index bde4f1c78..a873a28fa 100644 --- a/mysql-test/r/events_bugs.result +++ b/mysql-test/r/events_bugs.result @@ -11,16 +11,22 @@ VARIABLE_NAME VARIABLE_VALUE EVENT_SCHEDULER ON SET GLOBAL event_scheduler = 'OFF'; CREATE EVENT lower_case ON SCHEDULE EVERY 1 MINUTE DO SELECT 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. CREATE EVENT Lower_case ON SCHEDULE EVERY 2 MINUTE DO SELECT 2; ERROR HY000: Event 'Lower_case' already exists DROP EVENT Lower_case; SET NAMES cp1251; CREATE EVENT äîëåí_ðåãèñòúð_1251 ON SCHEDULE EVERY 1 YEAR DO SELECT 100; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. CREATE EVENT ÄîËåÍ_ðåãèñòúð_1251 ON SCHEDULE EVERY 2 YEAR DO SELECT 200; ERROR HY000: Event 'ÄîËåÍ_ðåãèñòúð_1251' already exists DROP EVENT ÄîËåÍ_ðåãèñòúð_1251; SET NAMES utf8; CREATE EVENT долен_региÑтър_утф8 ON SCHEDULE EVERY 3 YEAR DO SELECT 300; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. CREATE EVENT ДОЛЕÐ_региÑтър_утф8 ON SCHEDULE EVERY 4 YEAR DO SELECT 400; ERROR HY000: Event 'ДОЛЕÐ_региÑтър_утф8' already exists DROP EVENT ДОЛЕÐ_региÑтър_утф8; @@ -204,6 +210,8 @@ create user mysqltest_user1@localhost; create database mysqltest_db1; grant event on events_test.* to mysqltest_user1@localhost; create event mysqltest_user1 on schedule every 10 second do select 42; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. alter event mysqltest_user1 rename to mysqltest_db1.mysqltest_user1; ERROR 42000: Access denied for user 'mysqltest_user1'@'localhost' to database 'mysqltest_db1' "Let's test now rename when there is no select DB" @@ -229,6 +237,8 @@ ERROR 42000: CREATE/ALTER EVENT does not support subqueries or stored functions. drop event if exists e_16; drop procedure if exists p_16; create event e_16 on schedule every 1 second do set @a=5; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. create procedure p_16 () alter event e_16 on schedule every @a second; set @a = null; call p_16(); @@ -342,11 +352,15 @@ DROP USER mysqltest_u1@localhost; CREATE USER mysqltest_u1@localhost; GRANT EVENT ON events_test.* TO mysqltest_u1@localhost; CREATE EVENT e1 ON SCHEDULE EVERY 1 DAY DO SELECT 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SELECT event_name, definer FROM INFORMATION_SCHEMA.EVENTS; event_name definer e1 root@localhost DROP EVENT e1; CREATE DEFINER=CURRENT_USER EVENT e1 ON SCHEDULE EVERY 1 DAY DO SELECT 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SELECT event_name, definer FROM INFORMATION_SCHEMA.EVENTS; event_name definer e1 root@localhost @@ -356,22 +370,30 @@ event_name definer e1 mysqltest_u1@localhost DROP EVENT e1; CREATE DEFINER=CURRENT_USER() EVENT e1 ON SCHEDULE EVERY 1 DAY DO SELECT 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SELECT event_name, definer FROM INFORMATION_SCHEMA.EVENTS; event_name definer e1 root@localhost DROP EVENT e1; CREATE DEFINER=mysqltest_u1@localhost EVENT e1 ON SCHEDULE EVERY 1 DAY DO SELECT 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SELECT event_name, definer FROM INFORMATION_SCHEMA.EVENTS; event_name definer e1 mysqltest_u1@localhost DROP EVENT e1; CREATE EVENT e1 ON SCHEDULE EVERY 1 DAY DO SELECT 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SELECT event_name, definer FROM INFORMATION_SCHEMA.EVENTS; event_name definer e1 mysqltest_u1@localhost DROP EVENT e1; CREATE DEFINER=CURRENT_USER EVENT e1 ON SCHEDULE EVERY 1 DAY DO SELECT 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SELECT event_name, definer FROM INFORMATION_SCHEMA.EVENTS; event_name definer e1 mysqltest_u1@localhost @@ -382,6 +404,8 @@ event_name definer e1 mysqltest_u1@localhost DROP EVENT e1; CREATE DEFINER=CURRENT_USER() EVENT e1 ON SCHEDULE EVERY 1 DAY DO SELECT 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SELECT event_name, definer FROM INFORMATION_SCHEMA.EVENTS; event_name definer e1 mysqltest_u1@localhost @@ -396,6 +420,8 @@ SET @save_time_zone= @@TIME_ZONE; SET TIME_ZONE= '+00:00'; SET TIMESTAMP= UNIX_TIMESTAMP('2005-12-31 23:58:59'); CREATE EVENT e1 ON SCHEDULE EVERY 1 DAY DO SELECT 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SHOW EVENTS; Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation events_test e1 root@localhost +00:00 RECURRING NULL 1 DAY 2005-12-31 23:58:59 NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci @@ -425,14 +451,20 @@ DROP EVENT e1; SET TIME_ZONE='+05:00'; CREATE EVENT e1 ON SCHEDULE EVERY 1 DAY STARTS '2006-01-01 00:00:00' DO SELECT 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SET TIMESTAMP= @@TIMESTAMP + 1; SET TIME_ZONE='-05:00'; CREATE EVENT e2 ON SCHEDULE EVERY 1 DAY STARTS '2006-01-01 00:00:00' DO SELECT 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SET TIMESTAMP= @@TIMESTAMP + 1; SET TIME_ZONE='+00:00'; CREATE EVENT e3 ON SCHEDULE EVERY 1 DAY STARTS '2006-01-01 00:00:00' DO SELECT 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SELECT * FROM INFORMATION_SCHEMA.EVENTS ORDER BY event_name; EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER TIME_ZONE EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD SQL_MODE STARTS ENDS STATUS ON_COMPLETION CREATED LAST_ALTERED LAST_EXECUTED EVENT_COMMENT ORIGINATOR CHARACTER_SET_CLIENT COLLATION_CONNECTION DATABASE_COLLATION def events_test e1 root@localhost +05:00 SQL SELECT 1 RECURRING NULL 1 DAY 2006-01-01 00:00:00 NULL ENABLED NOT PRESERVE 2005-12-31 23:58:59 2005-12-31 23:58:59 NULL 1 latin1 latin1_swedish_ci latin1_swedish_ci @@ -497,26 +529,34 @@ DO SELECT 1; Warnings: Note 1544 Event execution time is in the past. Event has been disabled +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. CREATE EVENT e5 ON SCHEDULE AT '1999-01-01 00:00:00' ON COMPLETION PRESERVE DO SELECT 1; Warnings: Note 1544 Event execution time is in the past. Event has been disabled +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. The following should succeed without warnings. ALTER EVENT e2 ON SCHEDULE EVERY 1 HOUR STARTS '1999-01-01 00:00:00'; ALTER EVENT e3 ON SCHEDULE EVERY 1 HOUR STARTS '1999-01-01 00:00:00' ENDS '1999-01-02 00:00:00' ON COMPLETION PRESERVE DISABLE; CREATE EVENT e6 ON SCHEDULE EVERY 1 HOUR STARTS '1999-01-01 00:00:00' DO SELECT 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. CREATE EVENT e7 ON SCHEDULE EVERY 1 HOUR STARTS '1999-01-01 00:00:00' ENDS '1999-01-02 00:00:00' ON COMPLETION PRESERVE DISABLE DO SELECT 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. CREATE EVENT e8 ON SCHEDULE AT '1999-01-01 00:00:00' ON COMPLETION PRESERVE DISABLE DO SELECT 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SHOW EVENTS; Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation events_test e1 root@localhost +00:00 RECURRING NULL 1 HOUR 1999-01-01 00:00:00 1999-01-02 00:00:00 DISABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci @@ -658,6 +698,8 @@ ERROR HY000: The MariaDB server is running with the --read-only option so it can # CREATE EVENT e1 ON SCHEDULE AT '2020-01-01 00:00:00' DO SET @a = 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. ALTER EVENT e1 COMMENT 'comment'; @@ -670,7 +712,11 @@ SET GLOBAL READ_ONLY = 0; # CREATE EVENT e1 ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 1 SECOND DO SET @a = 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. CREATE EVENT e2 ON SCHEDULE EVERY 1 SECOND DO SET @a = 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SELECT event_name, @@ -730,6 +776,8 @@ drop procedure if exists p; set @old_mode= @@sql_mode; set @@sql_mode= cast(pow(2,32)-1 as unsigned integer); create event e1 on schedule every 1 day do select 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. select @@sql_mode into @full_mode; set @@sql_mode= @old_mode; select replace(@full_mode, 'ALLOW_INVALID_DATES', 'INVALID_DATES') into @full_mode; @@ -743,6 +791,8 @@ SELECT @@GLOBAL.server_id; @@GLOBAL.server_id 4294967295 CREATE EVENT ev1 ON SCHEDULE EVERY 1 DAY DO SELECT 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SELECT event_name, originator FROM INFORMATION_SCHEMA.EVENTS; event_name originator ev1 4294967295 @@ -751,6 +801,8 @@ SET GLOBAL server_id = @old_server_id; CREATE DATABASE event_test12; USE event_test12; CREATE EVENT ev1 ON SCHEDULE EVERY 1 DAY DO SELECT 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. CREATE DATABASE event_test1; USE event_test1; SHOW EVENTS; @@ -800,6 +852,8 @@ DROP DATABASE IF EXISTS event_test11764334; CREATE DATABASE event_test11764334; USE event_test11764334; CREATE EVENT ev1 ON SCHEDULE EVERY 3 SECOND DISABLE DO SELECT 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SHOW EVENTS IN event_test11764334 WHERE NAME='ev1'; Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation event_test11764334 ev1 root@localhost SYSTEM RECURRING NULL 3 SECOND # # DISABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci diff --git a/mysql-test/r/events_grant.result b/mysql-test/r/events_grant.result index 0fb589dfb..446ede09b 100644 --- a/mysql-test/r/events_grant.result +++ b/mysql-test/r/events_grant.result @@ -1,6 +1,8 @@ CREATE DATABASE IF NOT EXISTS events_test; use events_test; CREATE EVENT one_event ON SCHEDULE EVERY 10 SECOND DO SELECT 123; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SHOW EVENTS; Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation events_test one_event root@localhost SYSTEM RECURRING NULL 10 # # NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci @@ -37,7 +39,11 @@ Let's create some new events from the name of ev_test@localhost CREATE EVENT one_event ON SCHEDULE EVERY 20 SECOND DO SELECT 123; ERROR HY000: Event 'one_event' already exists CREATE EVENT two_event ON SCHEDULE EVERY 20 SECOND ON COMPLETION NOT PRESERVE COMMENT "two event" DO SELECT 123; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. CREATE EVENT three_event ON SCHEDULE EVERY 20 SECOND ON COMPLETION PRESERVE COMMENT "three event" DO SELECT 123; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. "Now we should see 3 events:"; SHOW EVENTS; Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation @@ -55,6 +61,8 @@ Db Name Definer Time zone Type Execute at Interval value Interval field Starts E GRANT EVENT ON events_test2.* TO ev_test@localhost; USE events_test2; CREATE EVENT four_event ON SCHEDULE EVERY 20 SECOND DO SELECT 42; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. USE events_test; "We should see 4 events : one_event, two_event, three_event & four_event" SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS ORDER BY EVENT_SCHEMA, EVENT_NAME; @@ -73,6 +81,8 @@ def events_test two_event ev_test@localhost SQL SELECT 123 RECURRING NULL 20 SEC CREATE DATABASE events_test2; USE events_test2; CREATE EVENT five_event ON SCHEDULE EVERY 20 SECOND DO SELECT 42; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. "Should see 4 events - one, two, three & five" SELECT EVENT_CATALOG, EVENT_SCHEMA, EVENT_NAME, DEFINER, EVENT_BODY, EVENT_DEFINITION, EVENT_TYPE, EXECUTE_AT, INTERVAL_VALUE, INTERVAL_FIELD, STATUS,ON_COMPLETION, EVENT_COMMENT FROM INFORMATION_SCHEMA.EVENTS ORDER BY EVENT_SCHEMA, EVENT_NAME; EVENT_CATALOG EVENT_SCHEMA EVENT_NAME DEFINER EVENT_BODY EVENT_DEFINITION EVENT_TYPE EXECUTE_AT INTERVAL_VALUE INTERVAL_FIELD STATUS ON_COMPLETION EVENT_COMMENT diff --git a/mysql-test/r/events_restart.result b/mysql-test/r/events_restart.result index 0caac907f..e22cfa011 100644 --- a/mysql-test/r/events_restart.result +++ b/mysql-test/r/events_restart.result @@ -6,10 +6,16 @@ use events_test; create table execution_log(name char(10)); create event abc1 on schedule every 1 second do insert into execution_log value('abc1'); +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. create event abc2 on schedule every 1 second do insert into execution_log value('abc2'); +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. create event abc3 on schedule every 1 second do insert into execution_log value('abc3'); +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. create table event_like like mysql.event; insert into event_like select * from mysql.event; alter table mysql.event @@ -20,25 +26,25 @@ select @@event_scheduler; @@event_scheduler OFF show events; -ERROR HY000: Cannot proceed because system tables used by Event Scheduler were found damaged at server start +ERROR HY000: Cannot proceed, because event scheduler is disabled select event_name from information_schema.events; -ERROR HY000: Cannot proceed because system tables used by Event Scheduler were found damaged at server start +ERROR HY000: Cannot proceed, because event scheduler is disabled show create event intact_check; -ERROR HY000: Cannot proceed because system tables used by Event Scheduler were found damaged at server start +ERROR HY000: Cannot proceed, because event scheduler is disabled drop event no_such_event; -ERROR HY000: Cannot proceed because system tables used by Event Scheduler were found damaged at server start +ERROR HY000: Cannot proceed, because event scheduler is disabled create event intact_check_1 on schedule every 5 hour do select 5; -ERROR HY000: Cannot proceed because system tables used by Event Scheduler were found damaged at server start +ERROR HY000: Cannot proceed, because event scheduler is disabled alter event intact_check_1 on schedule every 8 hour do select 8; -ERROR HY000: Cannot proceed because system tables used by Event Scheduler were found damaged at server start +ERROR HY000: Cannot proceed, because event scheduler is disabled alter event intact_check_1 rename to intact_check_2; -ERROR HY000: Cannot proceed because system tables used by Event Scheduler were found damaged at server start +ERROR HY000: Cannot proceed, because event scheduler is disabled drop event intact_check_1; -ERROR HY000: Cannot proceed because system tables used by Event Scheduler were found damaged at server start +ERROR HY000: Cannot proceed, because event scheduler is disabled drop event intact_check_2; -ERROR HY000: Cannot proceed because system tables used by Event Scheduler were found damaged at server start +ERROR HY000: Cannot proceed, because event scheduler is disabled drop event intact_check; -ERROR HY000: Cannot proceed because system tables used by Event Scheduler were found damaged at server start +ERROR HY000: Cannot proceed, because event scheduler is disabled set global event_scheduler=on; ERROR HY000: Event Scheduler: An error occurred when initializing system tables. Disabling the Event Scheduler. set global event_scheduler=off; diff --git a/mysql-test/r/events_trans.result b/mysql-test/r/events_trans.result index 873f04410..a7b268fe2 100644 --- a/mysql-test/r/events_trans.result +++ b/mysql-test/r/events_trans.result @@ -15,6 +15,8 @@ create table t1 (a varchar(255)) engine=innodb; begin work; insert into t1 (a) values ("OK: create event"); create event e1 on schedule every 1 day do select 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. rollback work; select * from t1; a @@ -60,11 +62,14 @@ OK: drop event if exists delete from t1; commit work; create event e1 on schedule every 1 day do select 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. begin work; insert into t1 (a) values ("OK: create event if not exists"); create event if not exists e1 on schedule every 2 day do select 2; Warnings: Note 1537 Event 'e1' already exists +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. rollback work; select * from t1; a @@ -96,6 +101,8 @@ OK: alter event rename: rename to same name delete from t1; commit work; create event e2 on schedule every 3 day do select 3; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. begin work; insert into t1 (a) values ("OK: alter event rename: destination exists"); alter event e2 rename to e1; @@ -126,6 +133,8 @@ DROP EVENT IF EXISTS e1; CREATE TABLE t1 (a INT) ENGINE=InnoDB; CREATE TABLE t2 (a INT); CREATE EVENT e1 ON SCHEDULE EVERY 1 DAY DO SELECT 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. START TRANSACTION; INSERT INTO t1 VALUES (1); SAVEPOINT A; diff --git a/mysql-test/r/flush_read_lock.result b/mysql-test/r/flush_read_lock.result index 260edf8e5..da53d2f6d 100644 --- a/mysql-test/r/flush_read_lock.result +++ b/mysql-test/r/flush_read_lock.result @@ -85,6 +85,8 @@ insert into t1_temp values (1); return 0; end| create event e1 on schedule every 1 minute do begin end; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. # # Test compatibility of FLUSH TABLES WITH READ LOCK # with various statements. diff --git a/mysql-test/r/func_gconcat.result b/mysql-test/r/func_gconcat.result index 9014450be..2147040dd 100644 --- a/mysql-test/r/func_gconcat.result +++ b/mysql-test/r/func_gconcat.result @@ -1,4 +1,3 @@ -drop table if exists t1, t2; create table t1 (grp int, a bigint unsigned, c char(10) not null, d char(10) not null); insert into t1 values (1,1,"a","a"); insert into t1 values (2,2,"b","a"); @@ -1200,3 +1199,30 @@ Warning 1260 Row 3 was cut by GROUP_CONCAT() Warning 1260 Row 5 was cut by GROUP_CONCAT() DROP TABLE t1; SET group_concat_max_len= DEFAULT; +set max_session_mem_used=16*1024*1024; +SELECT GROUP_CONCAT(concat(seq/1.1), concat(seq/1.1), concat(seq/1.1), concat(seq/1.1), concat(seq/1.1), concat(seq/1.1), concat(seq/1.1), concat(seq/1.1) ORDER BY 2,1,3,4,6,5,8,7) AS c +FROM seq_1_to_200000; +c +0.90910.90910.90910.90910.90910.90910.90910.9091,1.81821.81821.81821.81821.81821.81821.81821.8182,10.000010.000010.000010.000010.000010.000010.000010.0000,10.909110.909110.909110.909110.909110.909110.909110.9091,100.0000100.0000100.0000100.0000100.0000100.0000100.0000100.0000,100.9091100.9091100.9091100.9091100.9091100.9091100.9091100.9091,1000.00001000.00001000.00001000.00001000.00001000.00001000.00001000.0000,1000.90911000.90911000.90911000.90911000.90911000.90911000.90911000.9091,10000.000010000.000010000.000010000.000010000.000010000.000010000.000010000.0000,10000.909110000.909110000.909110000.909110000.909110000.909110000.909110000.9091,100000.0000100000.0000100000.0000100000.0000100000.0000100000.0000100000.0000100000.0000,100000.9091100000.9091100000.9091100000.9091100000.9091100000.9091100000.9091100000.9091,100001.8182100001.8182100001.8182100001.8182100001.8182100001.8182100001.8182100001.8182,100002.7273100002.7273100002.7273100002.7273100002.7273100002.7273100002.7273100002.7273,100003.6364100003. +Warnings: +Warning 1260 Row 15 was cut by GROUP_CONCAT() +set max_session_mem_used=default; +SET group_concat_max_len= 8; +CREATE TABLE t1 (a INT); +INSERT t1 VALUES (1),(2); +CREATE TABLE t2 (b DATE, c INT); +INSERT t2 VALUES ('2019-12-04',1),('2020-03-28',2); +CREATE TABLE t3 (d INT); +INSERT t3 VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10),(11),(12),(13),(14); +CREATE TABLE t4 (e INT); +INSERT t4 VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10),(11),(12),(13),(14),(15); +SELECT (SELECT MAX(a) FROM t1 WHERE t2_sq.c > 0) AS f, +GROUP_CONCAT(t2_sq.b ORDER BY 1) AS gc +FROM (SELECT t2_a.* FROM t2 AS t2_a, t2 AS t2_b) AS t2_sq, t3, t4 +GROUP BY f; +f gc +2 2019-12- +Warnings: +Warning 1260 Row 1 was cut by GROUP_CONCAT() +DROP TABLE t1, t2, t3, t4; +SET group_concat_max_len= default; diff --git a/mysql-test/r/func_group.result b/mysql-test/r/func_group.result index e0e870d15..b9875faac 100644 --- a/mysql-test/r/func_group.result +++ b/mysql-test/r/func_group.result @@ -1979,8 +1979,8 @@ FROM t2); MIN(t2.pk) NULL Warnings: -Warning 1292 Truncated incorrect INTEGER value: 'j' -Warning 1292 Truncated incorrect INTEGER value: 'j' +Warning 1292 Truncated incorrect DOUBLE value: 'j' +Warning 1292 Truncated incorrect DOUBLE value: 'j' EXPLAIN SELECT MIN(t2.pk) @@ -1993,8 +1993,8 @@ id select_type table type possible_keys key key_len ref rows Extra 1 PRIMARY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE 2 MATERIALIZED t2 ALL NULL NULL NULL NULL 2 Warnings: -Warning 1292 Truncated incorrect INTEGER value: 'j' -Warning 1292 Truncated incorrect INTEGER value: 'j' +Warning 1292 Truncated incorrect DOUBLE value: 'j' +Warning 1292 Truncated incorrect DOUBLE value: 'j' # # 2) Test that subquery materialization is setup for query with diff --git a/mysql-test/r/func_hybrid_type.result b/mysql-test/r/func_hybrid_type.result index eeaa79e7d..dfec8b321 100644 --- a/mysql-test/r/func_hybrid_type.result +++ b/mysql-test/r/func_hybrid_type.result @@ -2179,10 +2179,10 @@ def if_______a_b 12 19 19 Y 128 0 63 def if_______b_a 12 19 19 Y 128 0 63 def ifnull___a_b 12 19 19 Y 128 0 63 def ifnull___b_a 12 19 19 Y 128 0 63 -def least____a_b 12 10 19 Y 128 0 63 -def least____b_a 12 10 19 Y 128 0 63 -def greatest_a_b 12 10 19 Y 128 0 63 -def greatest_b_a 12 10 19 Y 128 0 63 +def least____a_b 12 19 19 Y 128 0 63 +def least____b_a 12 19 19 Y 128 0 63 +def greatest_a_b 12 19 19 Y 128 0 63 +def greatest_b_a 12 19 19 Y 128 0 63 case_____a_b 2010-01-01 00:00:00 case_____b_a 2001-01-01 10:20:30 coalesce_a_b 2010-01-01 00:00:00 @@ -3034,7 +3034,7 @@ DROP TABLE t1; SET timestamp=UNIX_TIMESTAMP('2010-01-01 01:02:03'); SELECT GREATEST(CURRENT_TIME, CURRENT_DATE), COALESCE(CURRENT_TIME, CURRENT_DATE); Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr -def GREATEST(CURRENT_TIME, CURRENT_DATE) 12 10 19 N 129 0 63 +def GREATEST(CURRENT_TIME, CURRENT_DATE) 12 19 19 N 129 0 63 def COALESCE(CURRENT_TIME, CURRENT_DATE) 12 19 19 N 129 0 63 GREATEST(CURRENT_TIME, CURRENT_DATE) COALESCE(CURRENT_TIME, CURRENT_DATE) 2010-01-01 01:02:03 2010-01-01 01:02:03 @@ -3427,5 +3427,35 @@ t1 CREATE TABLE `t1` ( ) ENGINE=MyISAM DEFAULT CHARSET=latin1 DROP TABLE t1; # +# MDEV-11015 Assertion failed: precision > 0 in decimal_bin_size upon SELECT with DISTINCT, CAST and other functions +# +CREATE TABLE t1 (b LONGBLOB); +INSERT IGNORE INTO t1 VALUES ('foo'),('bar'); +SELECT DISTINCT - GREATEST( b, CAST( NULL AS DATETIME ) ) AS f FROM t1; +f +NULL +Warnings: +Warning 1292 Incorrect datetime value: 'foo' +Warning 1292 Incorrect datetime value: 'bar' +DROP TABLE t1; +CREATE TABLE t1 (b LONGBLOB); +INSERT IGNORE INTO t1 VALUES ('foo'),('bar'); +SELECT DISTINCT - GREATEST( b, CAST( NULL AS TIME) ) AS f FROM t1; +f +NULL +Warnings: +Warning 1292 Truncated incorrect time value: 'foo' +Warning 1292 Truncated incorrect time value: 'bar' +DROP TABLE t1; +CREATE TABLE t1 (b LONGBLOB); +INSERT IGNORE INTO t1 VALUES ('foo'),('bar'); +SELECT DISTINCT - GREATEST( b, CAST( NULL AS DATE) ) AS f FROM t1; +f +NULL +Warnings: +Warning 1292 Incorrect datetime value: 'foo' +Warning 1292 Incorrect datetime value: 'bar' +DROP TABLE t1; +# # End of 10.1 tests # diff --git a/mysql-test/r/func_math.result b/mysql-test/r/func_math.result index f694d25cb..4215a82e3 100644 --- a/mysql-test/r/func_math.result +++ b/mysql-test/r/func_math.result @@ -807,3 +807,46 @@ STDDEV_POP(ROUND(0,@A:=2009)) # # End of 10.0 tests # +# +# Start of 10.1 tests +# +# +# MDEV-17643 Assertion `nr >= 0.0' failed in Item_sum_std::val_real() +# +CREATE TABLE t1 ( pk int NOT NULL, i1 int NOT NULL, d1 date NOT NULL, t1 time); +INSERT INTO t1 VALUES (7,9,'2007-08-15','03:55:02'),(8,7,'1993-06-05','04:17:51'),(9,7,'2034-07-01','17:31:12'),(10,0,'1998-08-24','08:09:27'); +SELECT DISTINCT STDDEV_SAMP(EXPORT_SET(t1, -1379790335835635712, (i1 + 'o'), (MD5(d1)))) FROM t1; +STDDEV_SAMP(EXPORT_SET(t1, -1379790335835635712, (i1 + 'o'), (MD5(d1)))) +NULL +Warnings: +Warning 1292 Truncated incorrect DOUBLE value: 'o' +Warning 1292 Truncated incorrect DOUBLE value: '98e466c7ff40fe6b95cde24200f376303-13797903358356357128e466c7ff40fe6b95cde24200f376303-13797903358356357128e466c7ff40fe6b95cde242' +Warning 1292 Truncated incorrect DOUBLE value: 'o' +Warning 1292 Truncated incorrect DOUBLE value: '-1379790335835635712e315457d879863c6ccf2ddee5562fc24-1379790335835635712e315457d879863c6ccf2ddee5562fc24-1379790335835635712e315' +Warning 1292 Truncated incorrect DOUBLE value: 'o' +Warning 1292 Truncated incorrect DOUBLE value: '7b4dd517b633f1f6304b773523b5279747b4dd517b633f1f6304b773523b5279747b4dd517b633f1f6304b773523b527974-1379790335835635712b4dd517b6' +Warning 1292 Truncated incorrect DOUBLE value: 'o' +Warning 1292 Truncated incorrect DOUBLE value: '-1379790335835635712b0e107767ea830fd3318893e40412a43-1379790335835635712b0e107767ea830fd3318893e40412a43-1379790335835635712b0e1' +DROP TABLE t1; +CREATE TABLE t1 (a VARCHAR(128)); +INSERT INTO t1 VALUES ('1e310'); +INSERT INTO t1 VALUES ('-1e310'); +INSERT INTO t1 VALUES ('0'); +SELECT STDDEV_SAMP(a) FROM t1; +STDDEV_SAMP(a) +NULL +Warnings: +Warning 1292 Truncated incorrect DOUBLE value: '1e310' +Warning 1292 Truncated incorrect DOUBLE value: '-1e310' +DROP TABLE t1; +CREATE OR REPLACE TABLE t1 (a DOUBLE); +INSERT INTO t1 VALUES (1.7e+308); +INSERT INTO t1 VALUES (-1.7e+308); +INSERT INTO t1 VALUES (0); +SELECT STDDEV_SAMP(a) FROM t1; +STDDEV_SAMP(a) +NULL +DROP TABLE t1; +# +# End of 10.1 tests +# diff --git a/mysql-test/r/func_str.result b/mysql-test/r/func_str.result index 3d9c9bc15..fe74336f9 100644 --- a/mysql-test/r/func_str.result +++ b/mysql-test/r/func_str.result @@ -2980,6 +2980,49 @@ select md5(_filename "a"), sha(_filename "a"); md5(_filename "a") sha(_filename "a") 0cc175b9c0f1b6a831c399e269772661 86f7e437faa5a7fce15d1ddcb9eaeaea377667b8 # +# MDEV-18881 Assertion `0' failed in make_sortkey upon SELECT with GROUP BY after LOAD DATA +# +CREATE TABLE t1 (a BIT(22), b CHAR(8) NOT NULL, c CHAR(8)); +INSERT INTO t1 VALUES (0xA4B,'foo','qux'); +INSERT INTO t1 VALUES (0x8F5,'bar','foobar'); +INSERT INTO t1 VALUES (0x0, '', NULL); +INSERT INTO t1 VALUES (0x4B, 'foo','qux'); +INSERT INTO t1 VALUES (0x8F5, 'bar', 'foobar'); +SET SESSION SQL_MODE= ''; +SELECT GROUP_CONCAT(c) AS f FROM t1 GROUP BY LPAD('foo', 20, b); +f +NULL +foobar,foobar +qux,qux +DROP TABLE t1; +SET SESSION SQL_MODE=DEFAULT; +CREATE TABLE t1 AS SELECT +LPAD('a',10,' '), +RPAD('a',10,' '), +LPAD('a',10,' '), +RPAD('a',10,' '), +LPAD('a',10,NULL), +RPAD('a',10,NULL), +LPAD('a',10,''), +RPAD('a',10,''), +LPAD('a',10,RAND()), +RPAD('a',10,RAND()); +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `LPAD('a',10,' ')` varchar(10) NOT NULL, + `RPAD('a',10,' ')` varchar(10) NOT NULL, + `LPAD('a',10,' ')` varchar(10) NOT NULL, + `RPAD('a',10,' ')` varchar(10) NOT NULL, + `LPAD('a',10,NULL)` varchar(10) DEFAULT NULL, + `RPAD('a',10,NULL)` varchar(10) DEFAULT NULL, + `LPAD('a',10,'')` varchar(10) DEFAULT NULL, + `RPAD('a',10,'')` varchar(10) DEFAULT NULL, + `LPAD('a',10,RAND())` varchar(10) DEFAULT NULL, + `RPAD('a',10,RAND())` varchar(10) DEFAULT NULL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +DROP TABLE t1; +# # End of 5.5 tests # # @@ -4714,5 +4757,43 @@ YQ== 61 Yq== 62 DROP TABLE t1; # +# MDEV-18738 ASAN heap-use-after-free in copy_if_not_alloced / copy_fields +# +CREATE TABLE t1 (a INT); +INSERT INTO t1 VALUES (1),(2); +SELECT REPLACE( CAST( CURDATE() AS BINARY ), CURDATE(), REPEAT('a',32) ) AS f FROM t1 GROUP BY f; +f +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +DROP TABLE t1; +CREATE TABLE t1 (a INT); +INSERT INTO t1 VALUES (1),(2); +SELECT REPLACE( LEFT( CURDATE(), 4), LEFT(CURDATE(),4), REPEAT('a',32) ) AS f FROM t1 GROUP BY f; +f +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +DROP TABLE t1; +CREATE TABLE t1 (a INT); +INSERT INTO t1 VALUES (1),(2); +SELECT REPLACE(RIGHT(CURDATE(), 4), RIGHT(CURDATE(),4), REPEAT('a',32)) AS f FROM t1 GROUP BY f; +f +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +DROP TABLE t1; +CREATE TABLE t1 (a INT); +INSERT INTO t1 VALUES (1),(2); +SELECT REPLACE(SUBSTR(CURDATE(),2,3), SUBSTR(CURDATE(),2,3), REPEAT('a',32)) AS f FROM t1 GROUP BY f; +f +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +DROP TABLE t1; +# +# MDEV-19359 ASAN heap-use-after-free in copy_if_not_alloced / make_sortkey +# +CREATE TABLE t1 (a INT, b TIME, c TIME); +INSERT INTO t1 VALUES (NULL,'22:56:45','22:56:45'),(4,'12:51:42','12:51:42'); +SELECT REPLACE( BINARY c, a, b ) f FROM t1 GROUP BY f WITH ROLLUP; +f +NULL +12:51:12:51:422 +NULL +DROP TABLE t1; +# # End of 10.1 tests # diff --git a/mysql-test/r/func_time.result b/mysql-test/r/func_time.result index f0652236a..25f3484b7 100644 --- a/mysql-test/r/func_time.result +++ b/mysql-test/r/func_time.result @@ -3420,5 +3420,35 @@ t2 CREATE TABLE `t2` ( ) ENGINE=MyISAM DEFAULT CHARSET=latin1 DROP TABLE t1,t2; # +# MDEV-14926 AddressSanitizer: heap-use-after-free in make_date_time on weird combination of functions +# +DO INET_ATON( FROM_UNIXTIME( @@timestamp, ( TRIM( UNHEX(HEX('%m.%d.%Y') ) ) ) ) ); +CREATE TABLE t1 (d DATE); +INSERT INTO t1 VALUES ('1989-03-10'); +SELECT TIME_FORMAT('23:59:43', BINARY d) AS f FROM t1 GROUP BY 'foo'; +f +1989-03-10 +DROP TABLE t1; +CREATE TABLE t1 (d DATE) ENGINE=MyISAM; +INSERT INTO t1 VALUES ('1900-01-01'); +SELECT LENGTH( DATE_FORMAT( d, BINARY DATABASE() ) ) AS f FROM t1 GROUP BY d; +f +4 +DROP TABLE t1; +# +# MDEV-18667 ASAN heap-use-after-free in make_date_time / Arg_comparator::compare_string / Item_func_nullif::compare +# +SELECT NULLIF('foo', FROM_UNIXTIME('2012-12-12 12:12:12', TRIM(0))); +NULLIF('foo', FROM_UNIXTIME('2012-12-12 12:12:12', TRIM(0))) +foo +Warnings: +Warning 1292 Truncated incorrect DECIMAL value: '2012-12-12 12:12:12' +# +# MDEV-18626 ASAN stack-buffer-overflow in int10_to_str / make_date_time upon DATE_FORMAT +# +SELECT DATE_FORMAT(100000000000, '%j'); +DATE_FORMAT(100000000000, '%j') +NULL +# # End of 10.1 tests # diff --git a/mysql-test/r/gis-precise.result b/mysql-test/r/gis-precise.result index 89e5c2374..76f72bb81 100644 --- a/mysql-test/r/gis-precise.result +++ b/mysql-test/r/gis-precise.result @@ -505,6 +505,10 @@ GEOMETRYFROMTEXT('POINT(4599 60359)'), ) as relate_res; relate_res 0 +prepare s from 'do st_convexhull(st_aswkb(multipoint(point(-11702,15179),point(-5031,27960),point(-30557,11158),point(-27804,30314))))'; +execute s; +execute s; +deallocate prepare s; DROP TABLE IF EXISTS p1; CREATE PROCEDURE p1(dist DOUBLE, geom TEXT) BEGIN diff --git a/mysql-test/r/gis.result b/mysql-test/r/gis.result index f89cceb36..76524311f 100644 --- a/mysql-test/r/gis.result +++ b/mysql-test/r/gis.result @@ -1877,3 +1877,17 @@ t2 CREATE TABLE `t2` ( `w2` int(1) DEFAULT NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1 DROP TABLE t1,t2; +CREATE TABLE t1 ( +id INT UNSIGNED NOT NULL AUTO_INCREMENT, +point_data POINT NOT NULL, +PRIMARY KEY (id), +KEY idx_point_data(point_data) +) ENGINE=MyISAM; +INSERT t1 (point_data) VALUES +(GeomFromText('Point(37.0248492 23.8512726)')), +(GeomFromText('Point(38.0248492 23.8512726)')); +SELECT id FROM t1 +WHERE ST_Contains(point_data, GeomFromText('Point(38.0248492 23.8512726)')); +id +2 +DROP TABLE t1; diff --git a/mysql-test/r/gis2.result b/mysql-test/r/gis2.result deleted file mode 100644 index 214431e1d..000000000 --- a/mysql-test/r/gis2.result +++ /dev/null @@ -1,14 +0,0 @@ -CREATE TABLE t1 ( -id INT UNSIGNED NOT NULL AUTO_INCREMENT, -point_data POINT NOT NULL, -PRIMARY KEY (id), -KEY idx_point_data(point_data) -) ENGINE=MyISAM; -INSERT t1 (point_data) VALUES -(GeomFromText('Point(37.0248492 23.8512726)')), -(GeomFromText('Point(38.0248492 23.8512726)')); -SELECT id FROM t1 -WHERE ST_Contains(point_data, GeomFromText('Point(38.0248492 23.8512726)')); -id -2 -DROP TABLE t1; diff --git a/mysql-test/r/gis_notembedded.result b/mysql-test/r/gis_notembedded.result new file mode 100644 index 000000000..eb1e2b989 --- /dev/null +++ b/mysql-test/r/gis_notembedded.result @@ -0,0 +1,42 @@ +show create procedure mysql.AddGeometryColumn; +Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation +AddGeometryColumn CREATE DEFINER=`root`@`localhost` PROCEDURE `AddGeometryColumn`(catalog varchar(64), t_schema varchar(64), + t_name varchar(64), geometry_column varchar(64), t_srid int) + SQL SECURITY INVOKER +begin + set @qwe= concat('ALTER TABLE ', t_schema, '.', t_name, ' ADD ', geometry_column,' GEOMETRY REF_SYSTEM_ID=', t_srid); PREPARE ls from @qwe; execute ls; deallocate prepare ls; end latin1 latin1_swedish_ci latin1_swedish_ci +show create procedure mysql.DropGeometryColumn; +Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation +DropGeometryColumn CREATE DEFINER=`root`@`localhost` PROCEDURE `DropGeometryColumn`(catalog varchar(64), t_schema varchar(64), + t_name varchar(64), geometry_column varchar(64)) + SQL SECURITY INVOKER +begin + set @qwe= concat('ALTER TABLE ', t_schema, '.', t_name, ' DROP ', geometry_column); PREPARE ls from @qwe; execute ls; deallocate prepare ls; end latin1 latin1_swedish_ci latin1_swedish_ci +create table t1 (a int, b int); +call mysql.AddGeometryColumn('', 'test', 't1', 'c', 10); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) DEFAULT NULL, + `c` geometry DEFAULT NULL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +call mysql.DropGeometryColumn('', 'test', 't1', 'c'); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL, + `b` int(11) DEFAULT NULL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +call mysql.DropGeometryColumn('', 'test', 't1', 'b'); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `a` int(11) DEFAULT NULL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +drop table t1; +create user foo@localhost; +grant execute on mysql.* to foo@localhost; +call mysql.AddGeometryColumn('', 'mysql', 'proc', 'c', 10); +ERROR 42000: ALTER command denied to user 'foo'@'localhost' for table 'proc' +drop user foo@localhost; diff --git a/mysql-test/r/grant4.result b/mysql-test/r/grant4.result index 5a0032cd3..88fad6edf 100644 --- a/mysql-test/r/grant4.result +++ b/mysql-test/r/grant4.result @@ -123,6 +123,26 @@ View Create View character_set_client collation_connection v3 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v3` AS select `t_select_priv`.`a` AS `a`,`t_select_priv`.`b` AS `b` from `t_select_priv` latin1 latin1_swedish_ci drop database mysqltest_db1; drop user mysqltest_u1@localhost; +call mtr.add_suppression("Table 'mysql.user' doesn't exist"); +call mtr.add_suppression("'mysql.user' is not TABLE"); +rename table mysql.user to mysql.user1; +create view mysql.user as select * from mysql.user1; +flush privileges; +ERROR HY000: 'mysql.user' is not TABLE +drop view mysql.user; +create temporary table mysql.user select * from mysql.user1 limit 0; +flush privileges; +ERROR 42S02: Table 'mysql.user' doesn't exist +drop temporary table mysql.user; +rename table mysql.user1 to mysql.user; +call mtr.add_suppression('mysql.user table is damaged'); +rename table mysql.user to mysql.user1; +create table mysql.user (Host char(100), User char(100)); +flush privileges; +ERROR HY000: Unknown error +drop table mysql.user; +rename table mysql.user1 to mysql.user; +End of 5.5 tests # # Additional coverage for refactoring which is made as part # of fix for bug #27480 "Extend CREATE TEMPORARY TABLES privilege @@ -215,3 +235,4 @@ ERROR HY000: Password hash should be a 16-digit hexadecimal number create user foo4 identified via mysql_old_password using '11111111111111111111111111111111111111111'; ERROR HY000: Password hash should be a 16-digit hexadecimal number set GLOBAL sql_mode=default; +End of 10.1 tests diff --git a/mysql-test/r/index_merge_innodb.result b/mysql-test/r/index_merge_innodb.result index b30074083..7e2a13128 100644 --- a/mysql-test/r/index_merge_innodb.result +++ b/mysql-test/r/index_merge_innodb.result @@ -294,6 +294,7 @@ key3 int not null default 0 ); insert into t1(key1) values (1),(2),(3),(4),(5),(6),(7),(8); set @d=8; +begin; insert into t1 (key1) select key1+@d from t1; set @d=@d*2; insert into t1 (key1) select key1+@d from t1; @@ -308,9 +309,11 @@ insert into t1 (key1) select key1+@d from t1; set @d=@d*2; insert into t1 (key1) select key1+@d from t1; set @d=@d*2; +commit; alter table t1 add index i2(key2); alter table t1 add index i3(key3); update t1 set key2=key1,key3=key1; +insert into t1 select 10000+key1, 10000+key2,10000+key3 from t1; analyze table t1; Table Op Msg_type Msg_text test.t1 analyze status OK @@ -672,6 +675,7 @@ a int, b int, INDEX idx(a)) ENGINE=INNODB; +begin; INSERT INTO t1(a,b) VALUES (11, 1100), (2, 200), (1, 100), (14, 1400), (5, 500), (3, 300), (17, 1700), (4, 400), (12, 1200), (8, 800), @@ -691,6 +695,7 @@ INSERT INTO t1(a,b) SELECT a,b FROM t1; INSERT INTO t1(a,b) SELECT a,b FROM t1; INSERT INTO t1(a,b) SELECT a,b FROM t1; INSERT INTO t1 VALUES (1000000, 0, 0); +commit; SET SESSION sort_buffer_size = 1024*36; set @tmp_optimizer_switch=@@optimizer_switch; set optimizer_switch='derived_merge=off,derived_with_keys=off'; diff --git a/mysql-test/r/index_merge_myisam.result b/mysql-test/r/index_merge_myisam.result index fb795c694..c0823d41b 100644 --- a/mysql-test/r/index_merge_myisam.result +++ b/mysql-test/r/index_merge_myisam.result @@ -1129,6 +1129,7 @@ key3 int not null default 0 ); insert into t1(key1) values (1),(2),(3),(4),(5),(6),(7),(8); set @d=8; +begin; insert into t1 (key1) select key1+@d from t1; set @d=@d*2; insert into t1 (key1) select key1+@d from t1; @@ -1143,9 +1144,11 @@ insert into t1 (key1) select key1+@d from t1; set @d=@d*2; insert into t1 (key1) select key1+@d from t1; set @d=@d*2; +commit; alter table t1 add index i2(key2); alter table t1 add index i3(key3); update t1 set key2=key1,key3=key1; +insert into t1 select 10000+key1, 10000+key2,10000+key3 from t1; analyze table t1; Table Op Msg_type Msg_text test.t1 analyze status OK diff --git a/mysql-test/r/information_schema_prepare.result b/mysql-test/r/information_schema_prepare.result new file mode 100644 index 000000000..3b5ee16b1 --- /dev/null +++ b/mysql-test/r/information_schema_prepare.result @@ -0,0 +1,4 @@ +PREPARE stmt2 FROM "CREATE VIEW v AS SELECT * FROM INFORMATION_SCHEMA.TABLES"; +FLUSH PRIVILEGES; +EXECUTE stmt2; +DROP VIEW v; diff --git a/mysql-test/r/loaddata.result b/mysql-test/r/loaddata.result index 42f919d0c..5238f2e0a 100644 --- a/mysql-test/r/loaddata.result +++ b/mysql-test/r/loaddata.result @@ -574,3 +574,53 @@ SELECT HEX(a) FROM t1; HEX(a) C3A4 DROP TABLE t1; +# +# MDEV-15744: Assertion `derived->table' failed in mysql_derived_merge_for_insert +# +create table t1 (a int, b int); +CREATE OR REPLACE VIEW t2 AS SELECT * FROM t1; +CREATE VIEW v2 AS SELECT * FROM t2; +LOAD DATA INFILE '../../std_data/loaddata7.dat' INTO TABLE v2 +FIELDS TERMINATED BY ',' LINES TERMINATED BY '\r\n'; +select * from v2; +a b +2 2 +3 3 +4 4 +5 5 +6 6 +select * from t2; +a b +2 2 +3 3 +4 4 +5 5 +6 6 +DROP VIEW IF EXISTS v2,t2; +DROP TABLE IF EXISTS t1; +# +# MDEV-15950: LOAD DATA INTO compex_view crashed +# +create table t1 (a int, b int); +create table t0 (x int, y int); +CREATE OR REPLACE VIEW v1 AS SELECT * FROM t1,t0; +CREATE VIEW v2 AS SELECT * FROM v1; +LOAD DATA INFILE '../../std_data/loaddata7.dat' INTO TABLE v1 +FIELDS TERMINATED BY ',' LINES TERMINATED BY '\r\n'; +ERROR HY000: Incorrect usage of Multi-table VIEW and LOAD +LOAD DATA INFILE '../../std_data/loaddata7.dat' INTO TABLE v2 +FIELDS TERMINATED BY ',' LINES TERMINATED BY '\r\n'; +ERROR HY000: Incorrect usage of Multi-table VIEW and LOAD +DROP VIEW IF EXISTS v2,v1; +DROP TABLE IF EXISTS t1,t0; +CREATE TABLE t1 (a INT, b INT, PRIMARY KEY (a), UNIQUE(b)); +INSERT INTO t1 VALUES (1,1); +CREATE TABLE t2 (c INT); +CREATE VIEW v AS SELECT t1.* FROM t1 JOIN t2; +SELECT a, b FROM t1 INTO OUTFILE '15645.data'; +LOAD DATA INFILE '15645.data' IGNORE INTO TABLE v (a,b); +ERROR HY000: Incorrect usage of Multi-table VIEW and LOAD +LOAD DATA INFILE '15645.data' REPLACE INTO TABLE v (a,b); +ERROR HY000: Incorrect usage of Multi-table VIEW and LOAD +drop table t1,t2; +drop view v; diff --git a/mysql-test/r/lock_sync.result b/mysql-test/r/lock_sync.result index 8143f3fde..f8f511b3e 100644 --- a/mysql-test/r/lock_sync.result +++ b/mysql-test/r/lock_sync.result @@ -725,7 +725,11 @@ DROP TABLE t1, t2; # Bug#51391 Deadlock involving events during rqg_info_schema test # CREATE EVENT e1 ON SCHEDULE EVERY 5 HOUR DO SELECT 1; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. CREATE EVENT e2 ON SCHEDULE EVERY 5 HOUR DO SELECT 2; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. # Connection con1 SET DEBUG_SYNC="before_lock_tables_takes_lock SIGNAL drop WAIT_FOR query"; # Sending: diff --git a/mysql-test/r/log_slow.result b/mysql-test/r/log_slow.result index 02e04cfbb..c50130a7b 100644 --- a/mysql-test/r/log_slow.result +++ b/mysql-test/r/log_slow.result @@ -76,3 +76,40 @@ set @@log_slow_filter=default; set @@log_slow_verbosity=default; set global log_output= default; truncate mysql.slow_log; +# +# MDEV-18333 Slow_queries count doesn't increase when slow_query_log is turned off +# +SET SESSION slow_query_log=OFF; +SET GLOBAL slow_query_log=OFF; +SET long_query_time=0.1; +# Although this query is disallowed by slow_query_log, it should still increment Slow_queries +SELECT VARIABLE_VALUE INTO @global_slow_queries +FROM INFORMATION_SCHEMA.GLOBAL_STATUS +WHERE VARIABLE_NAME='SLOW_QUERIES'; +SELECT sleep(0.2) INTO @tmp FROM DUAL; +SELECT +CAST(VARIABLE_VALUE AS UNSIGNED)-@global_slow_queries AS Slow_queries_increment +FROM +INFORMATION_SCHEMA.GLOBAL_STATUS +WHERE +VARIABLE_NAME='SLOW_QUERIES'; +Slow_queries_increment +1 +# Although this query is disallowed by log_slow_filter, it should still increment Slow_queries +SET log_slow_filter=filesort; +SELECT sleep(0.2) INTO @tmp FROM DUAL; +SELECT VARIABLE_VALUE INTO @global_slow_queries +FROM INFORMATION_SCHEMA.GLOBAL_STATUS +WHERE VARIABLE_NAME='SLOW_QUERIES'; +SELECT sleep(0.2) INTO @tmp FROM DUAL; +SELECT +CAST(VARIABLE_VALUE AS UNSIGNED)-@global_slow_queries AS Slow_queries_increment +FROM +INFORMATION_SCHEMA.GLOBAL_STATUS +WHERE +VARIABLE_NAME='SLOW_QUERIES'; +Slow_queries_increment +1 +SET log_slow_filter=DEFAULT; +SET @@long_query_time=default; +SET GLOBAL slow_query_log= @org_slow_query_log; diff --git a/mysql-test/r/log_slow_debug.result b/mysql-test/r/log_slow_debug.result new file mode 100644 index 000000000..a823f4c2b --- /dev/null +++ b/mysql-test/r/log_slow_debug.result @@ -0,0 +1,137 @@ +SET @org_slow_query_log= @@global.slow_query_log; +SET @org_log_output= @@global.log_output; +SET @org_log_slow_admin_statements= @@global.log_slow_admin_statements; +SET @@GLOBAL.slow_query_log=OFF; +SET @@GLOBAL.log_output='TABLE'; +FLUSH SLOW LOGS; +SET @@GLOBAL.slow_query_log=ON; +SET @@GLOBAL.log_slow_admin_statements=ON; +SET SESSION debug_dbug="+d,simulate_slow_query"; +CREATE PROCEDURE show_slow_log() +BEGIN +SELECT CONCAT('[slow] ', sql_text) AS sql_text +FROM mysql.slow_log +WHERE sql_text NOT LIKE '%debug_dbug%'; +END +$$ +# +# Expect all admin statements in the slow log (ON,DEFAULT) +# +SET @@GLOBAL.log_slow_admin_statements=ON; +SET log_slow_filter=DEFAULT; +TRUNCATE TABLE mysql.slow_log; +CREATE TABLE t1 (a INT); +CREATE INDEX t1a ON t1 (a); +DROP INDEX t1a ON t1; +DROP TABLE t1; +CREATE TABLE t2 (a INT); +ALTER TABLE t2 RENAME t2; +RENAME TABLE t2 TO t3; +DROP TABLE t3; +CREATE TABLE t4 (a INT); +PREPARE stmt FROM 'ALTER TABLE t4 MODIFY a INT DEFAULT 1'; +EXECUTE stmt; +DEALLOCATE PREPARE stmt; +DROP TABLE t4; +CALL show_slow_log(); +sql_text +[slow] TRUNCATE TABLE mysql.slow_log +[slow] CREATE TABLE t1 (a INT) +[slow] CREATE INDEX t1a ON t1 (a) +[slow] DROP INDEX t1a ON t1 +[slow] DROP TABLE t1 +[slow] CREATE TABLE t2 (a INT) +[slow] ALTER TABLE t2 RENAME t2 +[slow] RENAME TABLE t2 TO t3 +[slow] DROP TABLE t3 +[slow] CREATE TABLE t4 (a INT) +[slow] PREPARE stmt FROM 'ALTER TABLE t4 MODIFY a INT DEFAULT 1' +[slow] ALTER TABLE t4 MODIFY a INT DEFAULT 1 +[slow] DEALLOCATE PREPARE stmt +[slow] DROP TABLE t4 +# +# Expect all admin statements in the slow log (ON,admin) +# +SET @@GLOBAL.log_slow_admin_statements=ON; +SET log_slow_filter=admin; +TRUNCATE TABLE mysql.slow_log; +CREATE TABLE t1 (a INT); +CREATE INDEX t1a ON t1 (a); +DROP INDEX t1a ON t1; +DROP TABLE t1; +CREATE TABLE t2 (a INT); +ALTER TABLE t2 RENAME t2; +RENAME TABLE t2 TO t3; +DROP TABLE t3; +CREATE TABLE t4 (a INT); +PREPARE stmt FROM 'ALTER TABLE t4 MODIFY a INT DEFAULT 1'; +EXECUTE stmt; +DEALLOCATE PREPARE stmt; +DROP TABLE t4; +CALL show_slow_log(); +sql_text +[slow] CREATE INDEX t1a ON t1 (a) +[slow] DROP INDEX t1a ON t1 +[slow] ALTER TABLE t2 RENAME t2 +[slow] RENAME TABLE t2 TO t3 +[slow] ALTER TABLE t4 MODIFY a INT DEFAULT 1 +# +# Expect none of admin DDL statements in the slow log (ON,filesort) +# +SET @@GLOBAL.log_slow_admin_statements=ON; +SET log_slow_filter=filesort; +TRUNCATE TABLE mysql.slow_log; +CREATE TABLE t1 (a INT); +CREATE INDEX t1a ON t1 (a); +DROP INDEX t1a ON t1; +DROP TABLE t1; +CREATE TABLE t2 (a INT); +ALTER TABLE t2 RENAME t2; +RENAME TABLE t2 TO t3; +DROP TABLE t3; +CREATE TABLE t4 (a INT); +PREPARE stmt FROM 'ALTER TABLE t4 MODIFY a INT DEFAULT 1'; +EXECUTE stmt; +DEALLOCATE PREPARE stmt; +DROP TABLE t4; +CALL show_slow_log(); +sql_text +# +# Expect none of admin statements in the slow log (OFF,DEFAULT) +# +SET @@GLOBAL.log_slow_admin_statements=OFF; +SET log_slow_filter=DEFAULT; +TRUNCATE TABLE mysql.slow_log; +CREATE TABLE t1 (a INT); +CREATE INDEX t1a ON t1 (a); +DROP INDEX t1a ON t1; +DROP TABLE t1; +CREATE TABLE t2 (a INT); +ALTER TABLE t2 RENAME t2; +RENAME TABLE t2 TO t3; +DROP TABLE t3; +CREATE TABLE t4 (a INT); +PREPARE stmt FROM 'ALTER TABLE t4 MODIFY a INT DEFAULT 1'; +EXECUTE stmt; +DEALLOCATE PREPARE stmt; +DROP TABLE t4; +CALL show_slow_log(); +sql_text +[slow] TRUNCATE TABLE mysql.slow_log +[slow] CREATE TABLE t1 (a INT) +[slow] DROP TABLE t1 +[slow] CREATE TABLE t2 (a INT) +[slow] DROP TABLE t3 +[slow] CREATE TABLE t4 (a INT) +[slow] PREPARE stmt FROM 'ALTER TABLE t4 MODIFY a INT DEFAULT 1' +[slow] DEALLOCATE PREPARE stmt +[slow] DROP TABLE t4 +# +# Clean up +# +SET SESSION debug_dbug="-d,simulate_slow_query"; +TRUNCATE mysql.slow_log; +SET @@global.slow_query_log= @org_slow_query_log; +SET @@global.log_output= @org_log_output; +SET @@global.log_slow_admin_statements= @org_log_slow_admin_statements; +DROP PROCEDURE show_slow_log; diff --git a/mysql-test/r/mdev_19276.result b/mysql-test/r/mdev_19276.result new file mode 100644 index 000000000..09d515614 --- /dev/null +++ b/mysql-test/r/mdev_19276.result @@ -0,0 +1,9 @@ +CREATE DATABASE db1; +CREATE USER u@localhost IDENTIFIED BY 'pw'; +set global log_warnings=2; +connect(localhost,u,pw,db1,MASTER_PORT,MASTER_SOCKET); +ERROR 42000: Access denied for user 'u'@'localhost' to database 'db1' +FOUND /Access denied for user 'u'@'localhost' to database 'db1'/ in mysqld.1.err +set global log_warnings=@@log_warnings; +DROP DATABASE db1; +DROP USER u@localhost; diff --git a/mysql-test/r/multi_update.result b/mysql-test/r/multi_update.result index 5991a5fd2..f614ea1e4 100644 --- a/mysql-test/r/multi_update.result +++ b/mysql-test/r/multi_update.result @@ -1018,6 +1018,27 @@ execute stmt1; deallocate prepare stmt1; drop view v3,v2,v1; drop table t1,t2,t3; +create table t1 (id int not null, v1 varchar(10) not null); +insert into t1 values (1,1),(2,2); +create table t2 (log varchar(10) not null); +create trigger t1_after_update after update on t1 +for each row insert into t2 values ('triggered'); +create user foo; +grant select, insert, update, delete, create, drop, reload, index, alter, show databases, create temporary tables, lock tables, execute, create view, show view, create routine, alter routine, trigger on *.* to 'foo'@'%'; +set global read_only=1; +create temporary table temp_t1 (id int not null, update_me varchar(10)); +insert into temp_t1 values (1,1),(2,2),(3,3); +update temp_t1 left join t1 on temp_t1.id = t1.id set temp_t1.update_me = 'hello'; +set global read_only = 0; +create table t3 (id int not null); +insert t3 values (2); +update t1 left join t3 on t1.id = t3.id set t1.v1 = 'hello'; +select * from t2; +log +triggered +triggered +drop table t1,t2, t3; +drop user foo; end of 5.5 tests # Bug mdev-5970 diff --git a/mysql-test/r/multi_update2.result b/mysql-test/r/multi_update_big.result similarity index 100% rename from mysql-test/r/multi_update2.result rename to mysql-test/r/multi_update_big.result diff --git a/mysql-test/r/mysql.result b/mysql-test/r/mysql.result index 07f49d32b..b9ffd25ec 100644 --- a/mysql-test/r/mysql.result +++ b/mysql-test/r/mysql.result @@ -626,3 +626,7 @@ count(*) 0 truncate table t1; drop table t1; +# +# MDEV-15538 '-N' Produce html output wrong +# +
1
\ No newline at end of file diff --git a/mysql-test/r/mysqld--help,win.rdiff b/mysql-test/r/mysqld--help,win.rdiff index 6e18d16fe..128155870 100644 --- a/mysql-test/r/mysqld--help,win.rdiff +++ b/mysql-test/r/mysqld--help,win.rdiff @@ -133,6 +133,6 @@ -thread-pool-oversubscribe 3 -thread-pool-stall-limit 500 +thread-pool-min-threads 1 - thread-stack 295936 + thread-stack 299008 time-format %H:%i:%s timed-mutexes FALSE diff --git a/mysql-test/r/mysqld--help.result b/mysql-test/r/mysqld--help.result index fdb4d8c28..4ff44dcd2 100644 --- a/mysql-test/r/mysqld--help.result +++ b/mysql-test/r/mysqld--help.result @@ -1449,7 +1449,7 @@ thread-pool-idle-timeout 60 thread-pool-max-threads 1000 thread-pool-oversubscribe 3 thread-pool-stall-limit 500 -thread-stack 295936 +thread-stack 299008 time-format %H:%i:%s timed-mutexes FALSE tmp-table-size 16777216 diff --git a/mysql-test/r/mysqldump-compat.result b/mysql-test/r/mysqldump-compat.result index f15cc7a1d..9a24ef2a3 100644 --- a/mysql-test/r/mysqldump-compat.result +++ b/mysql-test/r/mysqldump-compat.result @@ -2,3 +2,7 @@ CREATE DATABASE mysqldump_30126; USE mysqldump_30126; CREATE TABLE t1 (c1 int); DROP DATABASE mysqldump_30126; +use test; +create table t1 (a int); +create trigger tr after insert on t1 for each row set @a=1; +drop table t1; diff --git a/mysql-test/r/mysqldump.result b/mysql-test/r/mysqldump.result index 28dfc697f..25c1931d0 100644 --- a/mysql-test/r/mysqldump.result +++ b/mysql-test/r/mysqldump.result @@ -4302,6 +4302,8 @@ create database first; use first; set time_zone = 'UTC'; create event ee1 on schedule at '2035-12-31 20:01:23' do set @a=5; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. show events; Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation first ee1 root@localhost UTC ONE TIME 2035-12-31 20:01:23 NULL NULL NULL NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci @@ -4318,7 +4320,11 @@ show create event ee1; Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation ee1 UTC CREATE DEFINER=`root`@`localhost` EVENT `ee1` ON SCHEDULE AT '2035-12-31 20:01:23' ON COMPLETION NOT PRESERVE ENABLE DO set @a=5 latin1 latin1_swedish_ci latin1_swedish_ci create event ee2 on schedule at '2030-12-31 21:01:22' do set @a=5; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. create event ee3 on schedule at '2030-12-31 22:01:23' do set @a=5; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. show events; Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation second ee1 root@localhost UTC ONE TIME 2035-12-31 20:01:23 NULL NULL NULL NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci @@ -4455,6 +4461,8 @@ DROP DATABASE mysqldump_test_db; TRUNCATE mysql.event; USE test; CREATE event e29938 ON SCHEDULE AT '2035-12-31 20:01:23' DO SET @bug29938=29938; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SHOW EVENTS; Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation test e29938 root@localhost SYSTEM ONE TIME 2035-12-31 20:01:23 NULL NULL NULL NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci @@ -4541,6 +4549,8 @@ CREATE TABLE t1 (f1 INT); CREATE TRIGGER tr1 BEFORE UPDATE ON t1 FOR EACH ROW SET @f1 = 1; CREATE PROCEDURE pr1 () SELECT "Meow"; CREATE EVENT ev1 ON SCHEDULE AT '2030-01-01 00:00:00' DO SELECT "Meow"; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SHOW TRIGGERS; Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database Collation @@ -4731,7 +4741,11 @@ SELECT COUNT(*) INTO param1 FROM t2; END// # Events. CREATE EVENT e1 ON SCHEDULE EVERY 1 SECOND DO DROP DATABASE BUG52792; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. CREATE EVENT e2 ON SCHEDULE EVERY 1 SECOND DO DROP DATABASE BUG52792; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. # Functions. CREATE FUNCTION `hello1` (s CHAR(20)) RETURNS CHAR(50) DETERMINISTIC @@ -5332,6 +5346,8 @@ one` BEFORE INSERT ON `tab one` FOR EACH ROW SET NEW.a = 1; CREATE EVENT `event one` ON SCHEDULE AT '2030-01-01 00:00:00' DO SET @a=5; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SHOW TABLES FROM bug25717383; Tables_in_bug25717383 tab diff --git a/mysql-test/r/olap.result b/mysql-test/r/olap.result index 24140583d..df2d64166 100644 --- a/mysql-test/r/olap.result +++ b/mysql-test/r/olap.result @@ -786,5 +786,59 @@ t COUNT(*) 12:12:13 1 DROP TABLE t1; # +# MDEV-17830 Server crashes in Item_null_result::field_type upon SELECT with CHARSET(date) and ROLLUP +# +# Note, returning "latin1" in the first row vs "binary" in the second row is wrong here. +# Both lines should return equal values. +# The point in this test is to make sure it does not crash. +# Bad result will be fixed in a later version. +CREATE TABLE t (d DATE) ENGINE=MyISAM; +INSERT INTO t VALUES ('2018-12-12'); +SELECT CHARSET(d) AS f FROM t GROUP BY d WITH ROLLUP; +f +latin1 +binary +DROP TABLE t; +# +# MDEV-14041 Server crashes in String::length on queries with functions and ROLLUP +# +CREATE TABLE t1 (i INT); +INSERT INTO t1 VALUES (1),(2); +SELECT GET_LOCK( 'foo', 0 ); +GET_LOCK( 'foo', 0 ) +1 +SELECT HEX( RELEASE_LOCK( 'foo' ) ) AS f FROM t1 GROUP BY f WITH ROLLUP; +f +NULL +1 +NULL +DROP TABLE t1; +CREATE TABLE t1 (i INT); +INSERT INTO t1 VALUES (1),(2); +SELECT i FROM t1 GROUP BY i WITH ROLLUP +UNION ALL +SELECT ELT( FOUND_ROWS(), 1 ) f FROM t1 GROUP BY f WITH ROLLUP; +i +1 +2 +NULL +NULL +NULL +DROP TABLE t1; +CREATE TABLE t1 (a INT); +INSERT INTO t1 VALUES (1),(2); +SELECT a FROM t1 GROUP BY NULLIF( CONVERT('', DATE), '2015-10-15' ) WITH ROLLUP; +a +1 +1 +Warnings: +Warning 1292 Incorrect datetime value: '' +Warning 1292 Incorrect datetime value: '' +Warning 1292 Incorrect datetime value: '' +Warning 1292 Incorrect datetime value: '' +Warning 1292 Incorrect datetime value: '' +Warning 1292 Incorrect datetime value: '' +DROP TABLE t1; +# # End of 10.1 tests # diff --git a/mysql-test/r/partition.result b/mysql-test/r/partition.result index d2b3d06b2..6cea712e4 100644 --- a/mysql-test/r/partition.result +++ b/mysql-test/r/partition.result @@ -1318,7 +1318,7 @@ partition p2 values in (1)); end// call p()// drop procedure p// -drop table t1; +drop table t1// create procedure p () begin create table t1 (a int not null,b int not null,c int not null,primary key (a,b)) diff --git a/mysql-test/r/partition_innodb.result b/mysql-test/r/partition_innodb.result index c00a75fed..5deab4d84 100644 --- a/mysql-test/r/partition_innodb.result +++ b/mysql-test/r/partition_innodb.result @@ -918,3 +918,45 @@ ERROR HY000: CHECK OPTION failed 'test.v' SET GLOBAL innodb_stats_persistent= @save_isp; DROP view v; DROP TABLE t; +# +# Bug#28573894 ALTER PARTITIONED TABLE ADD AUTO_INCREMENT DIFF RESULT +# +CREATE TABLE t (a VARCHAR(10) NOT NULL,b INT,PRIMARY KEY (b)) ENGINE=INNODB +PARTITION BY RANGE (b) +(PARTITION pa VALUES LESS THAN (2), +PARTITION pb VALUES LESS THAN (20), +PARTITION pc VALUES LESS THAN (30), +PARTITION pd VALUES LESS THAN (40)); +INSERT INTO t +VALUES('A',0),('B',1),('C',2),('D',3),('E',4),('F',5),('G',25),('H',35); +CREATE TABLE t_copy LIKE t; +INSERT INTO t_copy SELECT * FROM t; +ALTER TABLE t ADD COLUMN r INT UNSIGNED NOT NULL AUTO_INCREMENT, +ADD UNIQUE KEY (r,b); +affected rows: 0 +info: Records: 0 Duplicates: 0 Warnings: 0 +ALTER TABLE t_copy ADD COLUMN r INT UNSIGNED NOT NULL AUTO_INCREMENT, +ADD UNIQUE KEY (r,b), ALGORITHM=COPY; +affected rows: 8 +info: Records: 8 Duplicates: 0 Warnings: 0 +SELECT * FROM t; +a b r +A 0 1 +B 1 2 +C 2 3 +D 3 4 +E 4 5 +F 5 6 +G 25 7 +H 35 8 +SELECT * FROM t_copy; +a b r +A 0 1 +B 1 2 +C 2 3 +D 3 4 +E 4 5 +F 5 6 +G 25 7 +H 35 8 +DROP TABLE t,t_copy; diff --git a/mysql-test/r/ps.result b/mysql-test/r/ps.result index 1b40a7342..0d305b37b 100644 --- a/mysql-test/r/ps.result +++ b/mysql-test/r/ps.result @@ -2706,9 +2706,13 @@ create procedure proc_1() alter event xyz comment 'xyz'; call proc_1(); drop event xyz; create event xyz on schedule every 5 minute disable do select 123; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. call proc_1(); drop event xyz; create event xyz on schedule every 5 minute disable do select 123; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. call proc_1(); drop event xyz; drop procedure proc_1; @@ -2723,6 +2727,8 @@ create event xyz on schedule every 5 minute disable do select 123; create procedure proc_1() drop event xyz; call proc_1(); create event xyz on schedule every 5 minute disable do select 123; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. call proc_1(); call proc_1(); ERROR HY000: Unknown event 'xyz' @@ -4391,5 +4397,22 @@ END; 1 1 # +# MDEV-14572: Assertion `! is_set()' failed in +# Diagnostics_area::set_eof_status upon EXPLAIN UPDATE in PS +# +CREATE TABLE t1 (a INT); +CREATE TABLE t2 (b INT); +PREPARE stmt FROM 'EXPLAIN UPDATE t1, t2 SET a = 1'; +EXECUTE stmt; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t1 system NULL NULL NULL NULL 0 const row not found +1 SIMPLE t2 system NULL NULL NULL NULL 0 const row not found +EXECUTE stmt; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t1 system NULL NULL NULL NULL 0 const row not found +1 SIMPLE t2 system NULL NULL NULL NULL 0 const row not found +deallocate prepare stmt; +DROP TABLE t1, t2; +# # End of 10.1 tests # diff --git a/mysql-test/r/show_check.result b/mysql-test/r/show_check.result index 585ab3054..1f5fddce6 100644 --- a/mysql-test/r/show_check.result +++ b/mysql-test/r/show_check.result @@ -797,6 +797,8 @@ create event e1 on schedule every 1 year starts now() ends date_add(now(), interval 5 hour) do begin end; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. flush status; show databases; show tables; @@ -1429,7 +1431,9 @@ CREATE TABLE t1(c1 CHAR(10)); CREATE TRIGGER t1_bi BEFORE INSERT ON t1 FOR EACH ROW SET NEW.c1 = 'ÔÅÓÔ'; -CREATE EVENT ev1 ON SCHEDULE AT '2030-01-01 00:00:00' DO SELECT 'ÔÅÓÔ' AS test; +CREATE EVENT ev1 ON SCHEDULE AT '1970-01-02 00:00:00' ON COMPLETION PRESERVE DISABLE DO SELECT 'ÔÅÓÔ' AS test; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. set names utf8; SHOW CREATE VIEW v1; View Create View character_set_client collation_connection @@ -1449,7 +1453,7 @@ FOR EACH ROW SET NEW.c1 = 'теÑÑ‚' koi8r koi8r_general_ci latin1_swedish_ci SHOW CREATE EVENT ev1; Event sql_mode time_zone Create Event character_set_client collation_connection Database Collation -ev1 NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `ev1` ON SCHEDULE AT '2030-01-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO SELECT 'теÑÑ‚' AS test koi8r koi8r_general_ci latin1_swedish_ci +ev1 NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION SYSTEM CREATE DEFINER=`root`@`localhost` EVENT `ev1` ON SCHEDULE AT '1970-01-02 00:00:00' ON COMPLETION PRESERVE DISABLE DO SELECT 'теÑÑ‚' AS test koi8r koi8r_general_ci latin1_swedish_ci DROP VIEW v1; DROP PROCEDURE p1; DROP FUNCTION f1; diff --git a/mysql-test/r/sp-ucs2.result b/mysql-test/r/sp-ucs2.result index 3c444ad97..483818193 100644 --- a/mysql-test/r/sp-ucs2.result +++ b/mysql-test/r/sp-ucs2.result @@ -32,61 +32,55 @@ RETURNS VARCHAR(64) UNICODE BINARY BEGIN RETURN ''; END| -SHOW CREATE FUNCTION f; -DROP FUNCTION f; +SHOW CREATE FUNCTION f| +Function sql_mode Create Function character_set_client collation_connection Database Collation +f NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION CREATE DEFINER=`root`@`localhost` FUNCTION `f`() RETURNS varchar(64) CHARSET ucs2 COLLATE ucs2_bin +BEGIN +RETURN ''; +END latin1 latin1_swedish_ci latin1_swedish_ci +DROP FUNCTION f| CREATE FUNCTION f() RETURNS VARCHAR(64) BINARY UNICODE BEGIN RETURN ''; END| +SHOW CREATE FUNCTION f| Function sql_mode Create Function character_set_client collation_connection Database Collation f NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION CREATE DEFINER=`root`@`localhost` FUNCTION `f`() RETURNS varchar(64) CHARSET ucs2 COLLATE ucs2_bin BEGIN RETURN ''; END latin1 latin1_swedish_ci latin1_swedish_ci -SHOW CREATE FUNCTION f; -DROP FUNCTION f; -# -# Testing keywords ASCII + BINARY -# +DROP FUNCTION f| CREATE FUNCTION f() RETURNS VARCHAR(64) ASCII BINARY BEGIN RETURN ''; END| +SHOW CREATE FUNCTION f| Function sql_mode Create Function character_set_client collation_connection Database Collation -f NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION CREATE DEFINER=`root`@`localhost` FUNCTION `f`() RETURNS varchar(64) CHARSET ucs2 COLLATE ucs2_bin +f NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION CREATE DEFINER=`root`@`localhost` FUNCTION `f`() RETURNS varchar(64) CHARSET latin1 COLLATE latin1_bin BEGIN RETURN ''; END latin1 latin1_swedish_ci latin1_swedish_ci -SHOW CREATE FUNCTION f; -DROP FUNCTION f; +DROP FUNCTION f| CREATE FUNCTION f() RETURNS VARCHAR(64) BINARY ASCII BEGIN RETURN ''; END| +SHOW CREATE FUNCTION f| Function sql_mode Create Function character_set_client collation_connection Database Collation f NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION CREATE DEFINER=`root`@`localhost` FUNCTION `f`() RETURNS varchar(64) CHARSET latin1 COLLATE latin1_bin BEGIN RETURN ''; END latin1 latin1_swedish_ci latin1_swedish_ci -SHOW CREATE FUNCTION f; -DROP FUNCTION f; -# -# Testing COLLATE in OUT parameter -# +DROP FUNCTION f| CREATE PROCEDURE p1(IN f1 VARCHAR(64) CHARACTER SET ucs2 COLLATE ucs2_czech_ci, OUT f2 VARCHAR(64) CHARACTER SET ucs2 COLLATE ucs2_polish_ci) BEGIN SET f2= f1; SET f2= concat(collation(f1), ' ', collation(f2)); END| -Function sql_mode Create Function character_set_client collation_connection Database Collation -f NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION CREATE DEFINER=`root`@`localhost` FUNCTION `f`() RETURNS varchar(64) CHARSET latin1 COLLATE latin1_bin -BEGIN -RETURN ''; -END latin1 latin1_swedish_ci latin1_swedish_ci CREATE FUNCTION f1() RETURNS VARCHAR(64) CHARACTER SET ucs2 BEGIN diff --git a/mysql-test/r/sp.result b/mysql-test/r/sp.result index 044d43022..e39754159 100644 --- a/mysql-test/r/sp.result +++ b/mysql-test/r/sp.result @@ -6790,7 +6790,7 @@ ERROR 42S02: Table 'test.t1' doesn't exist create table t1 (a integer)$ call p1$ a -alter table t1 add b integer; +alter table t1 add b integer$ call p1$ a drop table t1; @@ -7635,6 +7635,22 @@ c1 c2 count(c3) 2012-03-01 02:00:00 3 1 DROP PROCEDURE p1; # End of 5.5 test +CREATE PROCEDURE sp() ALTER TABLE non_existing_table OPTIMIZE PARTITION p0; +CALL sp; +Table Op Msg_type Msg_text +test.non_existing_table optimize Error Table 'test.non_existing_table' doesn't exist +test.non_existing_table optimize status Operation failed +SELECT 1; +1 +1 +DROP PROCEDURE sp; +CREATE PROCEDURE sp() SHOW USER_STATISTICS; +CALL sp; +User Total_connections Concurrent_connections Connected_time Busy_time Cpu_time Bytes_received Bytes_sent Binlog_bytes_written Rows_read Rows_sent Rows_deleted Rows_inserted Rows_updated Select_commands Update_commands Other_commands Commit_transactions Rollback_transactions Denied_connections Lost_connections Access_denied Empty_queries Total_ssl_connections Max_statement_time_exceeded +SELECT 1; +1 +1 +DROP PROCEDURE sp; # # Bug#12663165 SP DEAD CODE REMOVAL DOESN'T UNDERSTAND CONTINUE HANDLERS # @@ -7918,6 +7934,39 @@ CALL sp; c a b a b DROP PROCEDURE sp; DROP TABLE t1; +# +# MDEV-17055: Server crashes in find_order_in_list upon +# 2nd (3rd) execution of SP with UPDATE +# +CREATE TABLE t1 (a INT); +CREATE VIEW v1 AS SELECT * FROM t1; +CREATE TABLE t2 (c INT); +CREATE PROCEDURE sp() UPDATE v1 SET a = 1 ORDER BY a, b LIMIT 1; +LOCK TABLE t2 READ; +CALL sp; +ERROR HY000: Table 'v1' was not locked with LOCK TABLES +UNLOCK TABLES; +CALL sp; +ERROR 42S22: Unknown column 'b' in 'order clause' +CALL sp; +ERROR 42S22: Unknown column 'b' in 'order clause' +CALL sp; +ERROR 42S22: Unknown column 'b' in 'order clause' +DROP PROCEDURE sp; +CREATE PROCEDURE sp() UPDATE v1 SET a = 1 WHERE a=1 and b=2; +LOCK TABLE t2 READ; +CALL sp; +ERROR HY000: Table 'v1' was not locked with LOCK TABLES +UNLOCK TABLES; +CALL sp; +ERROR 42S22: Unknown column 'b' in 'where clause' +CALL sp; +ERROR 42S22: Unknown column 'b' in 'where clause' +CALL sp; +ERROR 42S22: Unknown column 'b' in 'where clause' +DROP PROCEDURE sp; +DROP VIEW v1; +DROP TABLE t1, t2; # End of 5.5 test # # MDEV-7040: Crash in field_conv, memcpy_field_possible, part#2 diff --git a/mysql-test/r/sp_notembedded.result b/mysql-test/r/sp_notembedded.result index 712f29901..1fea050bb 100644 --- a/mysql-test/r/sp_notembedded.result +++ b/mysql-test/r/sp_notembedded.result @@ -72,7 +72,7 @@ select res; end| create table t3 (a int)| insert into t3 values (0)| -create view v1 as select a from t3; +create view v1 as select a from t3| create procedure bug10100pt(level int, lim int) begin if level < lim then @@ -268,6 +268,8 @@ USE test; SET @@SQL_MODE = ''; CREATE EVENT teste_bug11763507 ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 1 HOUR DO SELECT 1 $ +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SHOW EVENTS LIKE 'teste_bug11763507'; Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation test teste_bug11763507 root@localhost SYSTEM ONE TIME # # # # NULL ENABLED 1 latin1 latin1_swedish_ci latin1_swedish_ci diff --git a/mysql-test/r/sp_trans.result b/mysql-test/r/sp_trans.result index c76615d64..87339816b 100644 --- a/mysql-test/r/sp_trans.result +++ b/mysql-test/r/sp_trans.result @@ -640,7 +640,7 @@ TRUNCATE TABLE t1; END| LOCK TABLES t1 WRITE| CALL p1()| -FLUSH TABLES; +FLUSH TABLES| UNLOCK TABLES| CALL p1()| DROP PROCEDURE p1| diff --git a/mysql-test/r/ssl.result b/mysql-test/r/ssl.result index 05ba75197..f45202b13 100644 --- a/mysql-test/r/ssl.result +++ b/mysql-test/r/ssl.result @@ -3,10 +3,10 @@ have_ssl 1 SHOW STATUS LIKE 'Ssl_server_not_before'; Variable_name Value -Ssl_server_not_before Apr 25 20:52:21 2017 GMT +Ssl_server_not_before Apr 24 14:29:39 2019 GMT SHOW STATUS LIKE 'Ssl_server_not_after'; Variable_name Value -Ssl_server_not_after Apr 20 20:52:21 2037 GMT +Ssl_server_not_after Apr 19 14:29:39 2039 GMT drop table if exists t1,t2,t3,t4; CREATE TABLE t1 ( Period smallint(4) unsigned zerofill DEFAULT '0000' NOT NULL, diff --git a/mysql-test/r/ssl_verify_ip.result b/mysql-test/r/ssl_verify_ip.result new file mode 100644 index 000000000..98fb6a686 --- /dev/null +++ b/mysql-test/r/ssl_verify_ip.result @@ -0,0 +1,4 @@ +1 +1 +1 +1 diff --git a/mysql-test/r/stat_tables.result b/mysql-test/r/stat_tables.result index 3ebc3b478..bd3e9ed7a 100644 --- a/mysql-test/r/stat_tables.result +++ b/mysql-test/r/stat_tables.result @@ -625,3 +625,72 @@ MAX(pk) NULL DROP TABLE t1; set use_stat_tables=@save_use_stat_tables; +# +# MDEV-17605: SHOW INDEXES with use_stat_tables='preferably' +# +set use_stat_tables='preferably'; +CREATE DATABASE dbt3_s001; +use dbt3_s001; +set @save_optimizer_switch=@@optimizer_switch; +set optimizer_switch='extended_keys=off'; +select * from mysql.table_stats; +db_name table_name cardinality +dbt3_s001 lineitem 6005 +select * from mysql.index_stats; +db_name table_name index_name prefix_arity avg_frequency +dbt3_s001 lineitem PRIMARY 1 4.0033 +dbt3_s001 lineitem PRIMARY 2 1.0000 +dbt3_s001 lineitem i_l_shipdate 1 2.6500 +dbt3_s001 lineitem i_l_suppkey_partkey 1 30.0250 +dbt3_s001 lineitem i_l_suppkey_partkey 2 8.5786 +dbt3_s001 lineitem i_l_partkey 1 30.0250 +dbt3_s001 lineitem i_l_suppkey 1 600.5000 +dbt3_s001 lineitem i_l_receiptdate 1 2.6477 +dbt3_s001 lineitem i_l_orderkey 1 4.0033 +dbt3_s001 lineitem i_l_orderkey_quantity 1 4.0033 +dbt3_s001 lineitem i_l_orderkey_quantity 2 1.0404 +dbt3_s001 lineitem i_l_commitdate 1 2.7160 +SHOW INDEXES FROM lineitem; +Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment +lineitem 0 PRIMARY 1 l_orderkey A 1500 NULL NULL BTREE +lineitem 0 PRIMARY 2 l_linenumber A 6005 NULL NULL BTREE +lineitem 1 i_l_shipdate 1 l_shipDATE A 2266 NULL NULL YES BTREE +lineitem 1 i_l_suppkey_partkey 1 l_partkey A 200 NULL NULL YES BTREE +lineitem 1 i_l_suppkey_partkey 2 l_suppkey A 699 NULL NULL YES BTREE +lineitem 1 i_l_partkey 1 l_partkey A 200 NULL NULL YES BTREE +lineitem 1 i_l_suppkey 1 l_suppkey A 10 NULL NULL YES BTREE +lineitem 1 i_l_receiptdate 1 l_receiptDATE A 2268 NULL NULL YES BTREE +lineitem 1 i_l_orderkey 1 l_orderkey A 1500 NULL NULL BTREE +lineitem 1 i_l_orderkey_quantity 1 l_orderkey A 1500 NULL NULL BTREE +lineitem 1 i_l_orderkey_quantity 2 l_quantity A 5771 NULL NULL YES BTREE +lineitem 1 i_l_commitdate 1 l_commitDATE A 2210 NULL NULL YES BTREE +SELECT * FROM INFORMATION_SCHEMA.STATISTICS WHERE table_name='lineitem'; +TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT INDEX_COMMENT +def dbt3_s001 lineitem 0 dbt3_s001 PRIMARY 1 l_orderkey A 1500 NULL NULL BTREE +def dbt3_s001 lineitem 0 dbt3_s001 PRIMARY 2 l_linenumber A 6005 NULL NULL BTREE +def dbt3_s001 lineitem 1 dbt3_s001 i_l_shipdate 1 l_shipDATE A 2266 NULL NULL YES BTREE +def dbt3_s001 lineitem 1 dbt3_s001 i_l_suppkey_partkey 1 l_partkey A 200 NULL NULL YES BTREE +def dbt3_s001 lineitem 1 dbt3_s001 i_l_suppkey_partkey 2 l_suppkey A 699 NULL NULL YES BTREE +def dbt3_s001 lineitem 1 dbt3_s001 i_l_partkey 1 l_partkey A 200 NULL NULL YES BTREE +def dbt3_s001 lineitem 1 dbt3_s001 i_l_suppkey 1 l_suppkey A 10 NULL NULL YES BTREE +def dbt3_s001 lineitem 1 dbt3_s001 i_l_receiptdate 1 l_receiptDATE A 2268 NULL NULL YES BTREE +def dbt3_s001 lineitem 1 dbt3_s001 i_l_orderkey 1 l_orderkey A 1500 NULL NULL BTREE +def dbt3_s001 lineitem 1 dbt3_s001 i_l_orderkey_quantity 1 l_orderkey A 1500 NULL NULL BTREE +def dbt3_s001 lineitem 1 dbt3_s001 i_l_orderkey_quantity 2 l_quantity A 5771 NULL NULL YES BTREE +def dbt3_s001 lineitem 1 dbt3_s001 i_l_commitdate 1 l_commitDATE A 2210 NULL NULL YES BTREE +SELECT +COUNT(DISTINCT l_orderkey), COUNT(DISTINCT l_orderkey,l_linenumber), +COUNT(DISTINCT l_shipDATE), +COUNT(DISTINCT l_partkey), COUNT(DISTINCT l_partkey,l_suppkey), +COUNT(DISTINCT l_suppkey), COUNT(DISTINCT l_receiptDATE), +COUNT(DISTINCT l_orderkey, l_quantity), COUNT(DISTINCT l_commitDATE) +FROM lineitem; +COUNT(DISTINCT l_orderkey) COUNT(DISTINCT l_orderkey,l_linenumber) COUNT(DISTINCT l_shipDATE) COUNT(DISTINCT l_partkey) COUNT(DISTINCT l_partkey,l_suppkey) COUNT(DISTINCT l_suppkey) COUNT(DISTINCT l_receiptDATE) COUNT(DISTINCT l_orderkey, l_quantity) COUNT(DISTINCT l_commitDATE) +1500 6005 2266 200 700 10 2268 5772 2211 +set optimizer_switch=@save_optimizer_switch; +DROP DATABASE dbt3_s001; +delete from mysql.table_stats; +delete from mysql.column_stats; +delete from mysql.index_stats; +set @save_optimizer_switch=@@optimizer_switch; +set use_stat_tables=@save_use_stat_tables; diff --git a/mysql-test/r/stat_tables_innodb.result b/mysql-test/r/stat_tables_innodb.result index b0f794c6c..579d19462 100644 --- a/mysql-test/r/stat_tables_innodb.result +++ b/mysql-test/r/stat_tables_innodb.result @@ -652,5 +652,74 @@ MAX(pk) NULL DROP TABLE t1; set use_stat_tables=@save_use_stat_tables; +# +# MDEV-17605: SHOW INDEXES with use_stat_tables='preferably' +# +set use_stat_tables='preferably'; +CREATE DATABASE dbt3_s001; +use dbt3_s001; +set @save_optimizer_switch=@@optimizer_switch; +set optimizer_switch='extended_keys=off'; +select * from mysql.table_stats; +db_name table_name cardinality +dbt3_s001 lineitem 6005 +select * from mysql.index_stats; +db_name table_name index_name prefix_arity avg_frequency +dbt3_s001 lineitem PRIMARY 1 4.0033 +dbt3_s001 lineitem PRIMARY 2 1.0000 +dbt3_s001 lineitem i_l_shipdate 1 2.6500 +dbt3_s001 lineitem i_l_suppkey_partkey 1 30.0250 +dbt3_s001 lineitem i_l_suppkey_partkey 2 8.5786 +dbt3_s001 lineitem i_l_partkey 1 30.0250 +dbt3_s001 lineitem i_l_suppkey 1 600.5000 +dbt3_s001 lineitem i_l_receiptdate 1 2.6477 +dbt3_s001 lineitem i_l_orderkey 1 4.0033 +dbt3_s001 lineitem i_l_orderkey_quantity 1 4.0033 +dbt3_s001 lineitem i_l_orderkey_quantity 2 1.0404 +dbt3_s001 lineitem i_l_commitdate 1 2.7160 +SHOW INDEXES FROM lineitem; +Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment +lineitem 0 PRIMARY 1 l_orderkey A 1500 NULL NULL BTREE +lineitem 0 PRIMARY 2 l_linenumber A 6005 NULL NULL BTREE +lineitem 1 i_l_shipdate 1 l_shipDATE A 2266 NULL NULL YES BTREE +lineitem 1 i_l_suppkey_partkey 1 l_partkey A 200 NULL NULL YES BTREE +lineitem 1 i_l_suppkey_partkey 2 l_suppkey A 699 NULL NULL YES BTREE +lineitem 1 i_l_partkey 1 l_partkey A 200 NULL NULL YES BTREE +lineitem 1 i_l_suppkey 1 l_suppkey A 10 NULL NULL YES BTREE +lineitem 1 i_l_receiptdate 1 l_receiptDATE A 2268 NULL NULL YES BTREE +lineitem 1 i_l_orderkey 1 l_orderkey A 1500 NULL NULL BTREE +lineitem 1 i_l_orderkey_quantity 1 l_orderkey A 1500 NULL NULL BTREE +lineitem 1 i_l_orderkey_quantity 2 l_quantity A 5771 NULL NULL YES BTREE +lineitem 1 i_l_commitdate 1 l_commitDATE A 2210 NULL NULL YES BTREE +SELECT * FROM INFORMATION_SCHEMA.STATISTICS WHERE table_name='lineitem'; +TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT INDEX_COMMENT +def dbt3_s001 lineitem 0 dbt3_s001 PRIMARY 1 l_orderkey A 1500 NULL NULL BTREE +def dbt3_s001 lineitem 0 dbt3_s001 PRIMARY 2 l_linenumber A 6005 NULL NULL BTREE +def dbt3_s001 lineitem 1 dbt3_s001 i_l_shipdate 1 l_shipDATE A 2266 NULL NULL YES BTREE +def dbt3_s001 lineitem 1 dbt3_s001 i_l_suppkey_partkey 1 l_partkey A 200 NULL NULL YES BTREE +def dbt3_s001 lineitem 1 dbt3_s001 i_l_suppkey_partkey 2 l_suppkey A 699 NULL NULL YES BTREE +def dbt3_s001 lineitem 1 dbt3_s001 i_l_partkey 1 l_partkey A 200 NULL NULL YES BTREE +def dbt3_s001 lineitem 1 dbt3_s001 i_l_suppkey 1 l_suppkey A 10 NULL NULL YES BTREE +def dbt3_s001 lineitem 1 dbt3_s001 i_l_receiptdate 1 l_receiptDATE A 2268 NULL NULL YES BTREE +def dbt3_s001 lineitem 1 dbt3_s001 i_l_orderkey 1 l_orderkey A 1500 NULL NULL BTREE +def dbt3_s001 lineitem 1 dbt3_s001 i_l_orderkey_quantity 1 l_orderkey A 1500 NULL NULL BTREE +def dbt3_s001 lineitem 1 dbt3_s001 i_l_orderkey_quantity 2 l_quantity A 5771 NULL NULL YES BTREE +def dbt3_s001 lineitem 1 dbt3_s001 i_l_commitdate 1 l_commitDATE A 2210 NULL NULL YES BTREE +SELECT +COUNT(DISTINCT l_orderkey), COUNT(DISTINCT l_orderkey,l_linenumber), +COUNT(DISTINCT l_shipDATE), +COUNT(DISTINCT l_partkey), COUNT(DISTINCT l_partkey,l_suppkey), +COUNT(DISTINCT l_suppkey), COUNT(DISTINCT l_receiptDATE), +COUNT(DISTINCT l_orderkey, l_quantity), COUNT(DISTINCT l_commitDATE) +FROM lineitem; +COUNT(DISTINCT l_orderkey) COUNT(DISTINCT l_orderkey,l_linenumber) COUNT(DISTINCT l_shipDATE) COUNT(DISTINCT l_partkey) COUNT(DISTINCT l_partkey,l_suppkey) COUNT(DISTINCT l_suppkey) COUNT(DISTINCT l_receiptDATE) COUNT(DISTINCT l_orderkey, l_quantity) COUNT(DISTINCT l_commitDATE) +1500 6005 2266 200 700 10 2268 5772 2211 +set optimizer_switch=@save_optimizer_switch; +DROP DATABASE dbt3_s001; +delete from mysql.table_stats; +delete from mysql.column_stats; +delete from mysql.index_stats; +set @save_optimizer_switch=@@optimizer_switch; +set use_stat_tables=@save_use_stat_tables; set optimizer_switch=@save_optimizer_switch_for_stat_tables_test; SET SESSION STORAGE_ENGINE=DEFAULT; diff --git a/mysql-test/r/statistics.result b/mysql-test/r/statistics.result index 295a9b34e..135a0806b 100644 --- a/mysql-test/r/statistics.result +++ b/mysql-test/r/statistics.result @@ -1735,4 +1735,18 @@ rename table t1 to t2, t3 to t4; ERROR 42S02: Table 'test.t3' doesn't exist drop table t1, mysql.table_stats; rename table test.table_stats to mysql.table_stats; +# +# MDEV-19334: bool is_eits_usable(Field*): Assertion `field->table->stats_is_read' failed. +# +create temporary table t1(a int); +insert into t1 values (1),(2),(3); +set use_stat_tables=preferably; +set @optimizer_use_condition_selectivity= @@optimizer_use_condition_selectivity; +set optimizer_use_condition_selectivity=4; +select * from t1 where a >= 2; +a +2 +3 +drop table t1; +set @@optimizer_use_condition_selectivity= @save_optimizer_use_condition_selectivity; set use_stat_tables=@save_use_stat_tables; diff --git a/mysql-test/r/status2.result b/mysql-test/r/status2.result index 146fb2adb..ce4da5e4c 100644 --- a/mysql-test/r/status2.result +++ b/mysql-test/r/status2.result @@ -15,10 +15,10 @@ BEGIN SELECT 1; END $$ DROP TABLE IF EXISTS t1,t2; -CREATE TABLE t1 (c1 INT); -CREATE TABLE t2 (c1 INT); CREATE EVENT ev1 ON SCHEDULE EVERY 1 SECOND DO INSERT INTO t1 VALUES(1); +CREATE TABLE t1 (c1 INT); +CREATE TABLE t2 (c1 INT); Assert Questions == 7 SHOW STATUS LIKE 'Questions'; Variable_name Value diff --git a/mysql-test/r/subselect_sj.result b/mysql-test/r/subselect_sj.result index 77dea34e2..6d36950ea 100644 --- a/mysql-test/r/subselect_sj.result +++ b/mysql-test/r/subselect_sj.result @@ -3186,5 +3186,12 @@ EXECUTE stmt; a drop view v3; drop table t1,t2,t3; +# +# MDEV-18896: IN subquery in WHERE of a table-less query used for INSERT +# +create table t1 (a1 varchar(25)); +create table t2 (a2 varchar(25)) ; +insert into t1 select 'xxx' from dual where 'xxx' in (select a2 from t2); +drop table t1,t2; # End of 5.5 test set optimizer_switch=@subselect_sj_tmp; diff --git a/mysql-test/r/subselect_sj_jcl6.result b/mysql-test/r/subselect_sj_jcl6.result index 0741eb236..a9c849370 100644 --- a/mysql-test/r/subselect_sj_jcl6.result +++ b/mysql-test/r/subselect_sj_jcl6.result @@ -3200,6 +3200,13 @@ EXECUTE stmt; a drop view v3; drop table t1,t2,t3; +# +# MDEV-18896: IN subquery in WHERE of a table-less query used for INSERT +# +create table t1 (a1 varchar(25)); +create table t2 (a2 varchar(25)) ; +insert into t1 select 'xxx' from dual where 'xxx' in (select a2 from t2); +drop table t1,t2; # End of 5.5 test set optimizer_switch=@subselect_sj_tmp; # diff --git a/mysql-test/r/timezone2.result b/mysql-test/r/timezone2.result index 096e996bf..c4d13f6c6 100644 --- a/mysql-test/r/timezone2.result +++ b/mysql-test/r/timezone2.result @@ -332,3 +332,36 @@ NULL # # End of 5.3 tests # +# +# Start of 10.1 tests +# +# +# MDEV-11895 NO_ZERO_DATE affects timestamp values without any warnings +# +SET sql_mode = ''; +CREATE TABLE t1 (a TIMESTAMP NULL) ENGINE = MyISAM; +CREATE TABLE t2 (a TIMESTAMP NULL) ENGINE = MyISAM; +CREATE TABLE t3 (a TIMESTAMP NULL) ENGINE = MyISAM; +SET @@session.time_zone = 'UTC'; +INSERT INTO t1 VALUES ('2011-10-29 23:00:00'); +INSERT INTO t1 VALUES ('2011-10-29 23:00:01'); +INSERT INTO t1 VALUES ('2011-10-29 23:59:59'); +SET @@session.time_zone = 'Europe/Moscow'; +SET sql_mode='NO_ZERO_DATE'; +INSERT INTO t2 SELECT * FROM t1; +SET sql_mode=''; +INSERT INTO t3 SELECT * FROM t1; +SELECT UNIX_TIMESTAMP(a), a FROM t2; +UNIX_TIMESTAMP(a) a +1319929200 2011-10-30 02:00:00 +1319929201 2011-10-30 02:00:01 +1319932799 2011-10-30 02:59:59 +SELECT UNIX_TIMESTAMP(a), a FROM t3; +UNIX_TIMESTAMP(a) a +1319929200 2011-10-30 02:00:00 +1319929201 2011-10-30 02:00:01 +1319932799 2011-10-30 02:59:59 +DROP TABLE t1, t2, t3; +# +# End of 10.1 tests +# diff --git a/mysql-test/r/type_bit.result b/mysql-test/r/type_bit.result index 4136eb4df..f460d05e2 100644 --- a/mysql-test/r/type_bit.result +++ b/mysql-test/r/type_bit.result @@ -830,3 +830,10 @@ def COALESCE(val, 1) 246 2 1 Y 32896 0 63 COALESCE(val, 1) 0 DROP TABLE t1; +# +# MDEV-18452 ASAN unknown-crash in Field::set_default upon SET bit_column = DEFAULT +# +CREATE TABLE t1 (b BIT(20)) ENGINE=MyISAM; +INSERT INTO t1 VALUES (0); +UPDATE t1 SET b = DEFAULT; +DROP TABLE t1; diff --git a/mysql-test/r/type_date.result b/mysql-test/r/type_date.result index 661dcabbc..e2c3b7f3b 100644 --- a/mysql-test/r/type_date.result +++ b/mysql-test/r/type_date.result @@ -854,5 +854,30 @@ d COUNT(*) NULL 2 DROP TABLE t1; # +# MDEV-17299 Assertion `maybe_null' failed in make_sortkey +# +CREATE TABLE t1 (pk int NOT NULL, d1 date, d2 date NOT NULL); +INSERT INTO t1 values (1,'2018-06-22','2018-06-22'),(2,'2018-07-11','2018-07-11'); +CREATE VIEW v1 AS SELECT * FROM t1; +SELECT group_concat(d1/(CASE 'b' WHEN 'j' THEN 'c' END)) +FROM v1 GROUP BY greatest(pk, 0, d2); +group_concat(d1/(CASE 'b' WHEN 'j' THEN 'c' END)) +NULL +Warnings: +Warning 1292 Incorrect datetime value: '1' for column 'pk' at row 1 +Warning 1292 Incorrect datetime value: '2' for column 'pk' at row 1 +Warning 1292 Incorrect datetime value: '1' for column 'pk' at row 1 +Warning 1292 Incorrect datetime value: '1' for column 'pk' at row 1 +Warning 1292 Incorrect datetime value: '2' for column 'pk' at row 2 +CREATE TABLE t2 AS SELECT greatest(pk, 0, d2) AS c1 FROM t1 LIMIT 0; +SHOW CREATE TABLE t2; +Table Create Table +t2 CREATE TABLE `t2` ( + `c1` date DEFAULT NULL +) ENGINE=MyISAM DEFAULT CHARSET=latin1 +DROP TABLE t2; +DROP VIEW v1; +DROP TABLE t1; +# # End of 10.1 tests # diff --git a/mysql-test/r/type_decimal.result b/mysql-test/r/type_decimal.result index e515326e8..c9adf6a4f 100644 --- a/mysql-test/r/type_decimal.result +++ b/mysql-test/r/type_decimal.result @@ -1019,3 +1019,23 @@ cast('-0.0' as decimal(5,1)) < 0 # # End of 5.5 tests # +# +# Start of 10.1 tests +# +# +# MDEV-18968 Both (WHERE 0.1) and (WHERE NOT 0.1) return empty set +# +CREATE TABLE t1 (a INT); +INSERT INTO t1 VALUES (10); +SELECT CASE WHEN 0.1 THEN 'TRUE' ELSE 'FALSE' END FROM t1; +CASE WHEN 0.1 THEN 'TRUE' ELSE 'FALSE' END +TRUE +SELECT * FROM t1 WHERE 0.1; +a +10 +SELECT * FROM t1 WHERE NOT 0.1; +a +DROP TABLE t1; +# +# End of 10.1 tests +# diff --git a/mysql-test/r/type_year.result b/mysql-test/r/type_year.result index c3498eabd..459b90a90 100644 --- a/mysql-test/r/type_year.result +++ b/mysql-test/r/type_year.result @@ -444,5 +444,14 @@ Warnings: Note 1003 select `test`.`t1`.`a` AS `a` from `test`.`t1` where (`test`.`t1`.`a` = 2010) DROP TABLE t1; # +# MDEV-16958 Assertion `field_length < 5' failed in Field_year::val_str or data corruption upon SELECT with UNION and aggregate functions +# +CREATE TABLE t1 (f YEAR); +INSERT IGNORE INTO t1 VALUES (1971),(1972); +SELECT MAX( NULLIF( f, '1900' ) ) AS f FROM t1 UNION SELECT MAX( NULLIF( f, '1900' ) ) AS f FROM t1; +f +1972 +DROP TABLE t1; +# # End of 10.1 tests # diff --git a/mysql-test/r/update_innodb.result b/mysql-test/r/update_innodb.result index 0a85c6dab..695561122 100644 --- a/mysql-test/r/update_innodb.result +++ b/mysql-test/r/update_innodb.result @@ -65,3 +65,27 @@ SELECT * FROM t1; a_id b_id c_id 1 NULL NULL drop table t1,t2; +# +# MDEV-18300: ASAN error in Field_blob::get_key_image upon UPDATE with subquery +# +set @save_optimizer_use_condition_selectivity= @@optimizer_use_condition_selectivity; +set @save_use_stat_tables= @@use_stat_tables; +set use_stat_tables=preferably; +set optimizer_use_condition_selectivity=4; +CREATE TABLE t1 (a INT, b CHAR(8)) ENGINE=InnoDB; +insert into t1 values (1,'foo'),(2, 'abc'); +CREATE TABLE t2 (c CHAR(8), d BLOB) ENGINE=InnoDB; +insert into t2 values ('abc', 'foo'),('edf', 'food'); +ANALYZE TABLE t1,t2; +UPDATE t1 SET a = 1 WHERE b = ( SELECT c FROM t2 WHERE d = 'foo' ); +SELECT * FROM t1; +a b +1 foo +1 abc +DROP TABLE t1, t2; +create table t1 (a int not null, b int, c int) engine=InnoDB; +create table t2 (d int, e int) engine=InnoDB; +update t1, t2 set a=NULL, b=2, c=NULL where b=d and e=200; +drop table t1,t2; +set @@optimizer_use_condition_selectivity= @save_optimizer_use_condition_selectivity; +set @@use_stat_tables= @save_use_stat_tables; diff --git a/mysql-test/r/userstat.result b/mysql-test/r/userstat.result index 66bb4516c..f6f7e0fdc 100644 --- a/mysql-test/r/userstat.result +++ b/mysql-test/r/userstat.result @@ -142,7 +142,7 @@ show table_statistics; Table_schema Table_name Rows_read Rows_changed Rows_changed_x_#indexes show index_statistics; Table_schema Table_name Index_name Rows_read -select TOTAL_CONNECTIONS, TOTAL_SSL_CONNECTIONS, CONCURRENT_CONNECTIONS, ROWS_READ, ROWS_SENT, ROWS_DELETED, ROWS_INSERTED, ROWS_UPDATED, SELECT_COMMANDS, UPDATE_COMMANDS, OTHER_COMMANDS, COMMIT_TRANSACTIONS, ROLLBACK_TRANSACTIONS, DENIED_CONNECTIONS, LOST_CONNECTIONS, ACCESS_DENIED, EMPTY_QUERIES from information_schema.client_statistics;; +select TOTAL_CONNECTIONS, TOTAL_SSL_CONNECTIONS, CONCURRENT_CONNECTIONS, ROWS_READ, ROWS_SENT, ROWS_DELETED, ROWS_INSERTED, ROWS_UPDATED, SELECT_COMMANDS, UPDATE_COMMANDS, COMMIT_TRANSACTIONS, ROLLBACK_TRANSACTIONS, DENIED_CONNECTIONS, LOST_CONNECTIONS, ACCESS_DENIED, EMPTY_QUERIES from information_schema.client_statistics;; TOTAL_CONNECTIONS 2 TOTAL_SSL_CONNECTIONS 1 CONCURRENT_CONNECTIONS 0 @@ -153,14 +153,13 @@ ROWS_INSERTED 7 ROWS_UPDATED 5 SELECT_COMMANDS 4 UPDATE_COMMANDS 11 -OTHER_COMMANDS 7 COMMIT_TRANSACTIONS 19 ROLLBACK_TRANSACTIONS 2 DENIED_CONNECTIONS 0 LOST_CONNECTIONS 0 ACCESS_DENIED 0 EMPTY_QUERIES 1 -select TOTAL_CONNECTIONS, TOTAL_SSL_CONNECTIONS, CONCURRENT_CONNECTIONS, ROWS_READ, ROWS_SENT, ROWS_DELETED, ROWS_INSERTED, ROWS_UPDATED, SELECT_COMMANDS, UPDATE_COMMANDS, OTHER_COMMANDS, COMMIT_TRANSACTIONS, ROLLBACK_TRANSACTIONS, DENIED_CONNECTIONS, LOST_CONNECTIONS, ACCESS_DENIED, EMPTY_QUERIES from information_schema.user_statistics;; +select TOTAL_CONNECTIONS, TOTAL_SSL_CONNECTIONS, CONCURRENT_CONNECTIONS, ROWS_READ, ROWS_SENT, ROWS_DELETED, ROWS_INSERTED, ROWS_UPDATED, SELECT_COMMANDS, UPDATE_COMMANDS, COMMIT_TRANSACTIONS, ROLLBACK_TRANSACTIONS, DENIED_CONNECTIONS, LOST_CONNECTIONS, ACCESS_DENIED, EMPTY_QUERIES from information_schema.user_statistics;; TOTAL_CONNECTIONS 2 TOTAL_SSL_CONNECTIONS 1 CONCURRENT_CONNECTIONS 0 @@ -171,13 +170,18 @@ ROWS_INSERTED 7 ROWS_UPDATED 5 SELECT_COMMANDS 4 UPDATE_COMMANDS 11 -OTHER_COMMANDS 7 COMMIT_TRANSACTIONS 19 ROLLBACK_TRANSACTIONS 2 DENIED_CONNECTIONS 0 LOST_CONNECTIONS 0 ACCESS_DENIED 0 EMPTY_QUERIES 1 +select OTHER_COMMANDS IN (7,8) from information_schema.client_statistics; +OTHER_COMMANDS IN (7,8) +1 +select OTHER_COMMANDS IN (7,8) from information_schema.user_statistics; +OTHER_COMMANDS IN (7,8) +1 flush table_statistics; flush index_statistics; select * from information_schema.index_statistics; diff --git a/mysql-test/r/view_grant.result b/mysql-test/r/view_grant.result index 525f9fbb5..a1eb6e8bd 100644 --- a/mysql-test/r/view_grant.result +++ b/mysql-test/r/view_grant.result @@ -177,12 +177,15 @@ create table mysqltest.t1 (a int, b int, primary key(a)); insert into mysqltest.t1 values (10,2), (20,3), (30,4), (40,5), (50,10); create table mysqltest.t2 (x int); insert into mysqltest.t2 values (3), (4), (5), (6); +create table mysqltest.t3 (x int); +insert into mysqltest.t3 values (3), (4), (5), (6); create view mysqltest.v1 (a,c) as select a, b+1 from mysqltest.t1; create view mysqltest.v2 (a,c) as select a, b from mysqltest.t1; create view mysqltest.v3 (a,c) as select a, b+1 from mysqltest.t1; create user mysqltest_1@localhost; grant update (a) on mysqltest.v2 to mysqltest_1@localhost; grant update on mysqltest.v1 to mysqltest_1@localhost; +grant update on mysqltest.t3 to mysqltest_1@localhost; grant select on mysqltest.* to mysqltest_1@localhost; use mysqltest; update t2,v1 set v1.a=v1.a+v1.c where t2.x=v1.c; @@ -217,6 +220,7 @@ a b 48 4 62 5 71 10 +update t3,v3 set t3.x=t3.x+v3.c where t3.x=v3.c; update t2,v2 set v2.c=v2.a+v2.c where t2.x=v2.c; ERROR 42000: UPDATE command denied to user 'mysqltest_1'@'localhost' for column 'c' in table 'v2' update v2 set c=a+c; diff --git a/mysql-test/std_data/cacert.pem b/mysql-test/std_data/cacert.pem index cc5d9100e..a8fc32424 100644 --- a/mysql-test/std_data/cacert.pem +++ b/mysql-test/std_data/cacert.pem @@ -2,78 +2,78 @@ Certificate: Data: Version: 3 (0x2) Serial Number: - e5:b1:e3:71:e9:6f:a9:e1 + c8:ae:a5:b8:5b:90:50:49 Signature Algorithm: sha256WithRSAEncryption - Issuer: CN=cacert, C=FI, ST=Helsinki, L=Helsinki, O=MariaDB + Issuer: CN = cacert, C = FI, ST = Helsinki, L = Helsinki, O = MariaDB Validity - Not Before: Apr 25 20:52:21 2017 GMT - Not After : Apr 20 20:52:21 2037 GMT - Subject: CN=cacert, C=FI, ST=Helsinki, L=Helsinki, O=MariaDB + Not Before: Apr 24 14:29:39 2019 GMT + Not After : Apr 19 14:29:39 2039 GMT + Subject: CN = cacert, C = FI, ST = Helsinki, L = Helsinki, O = MariaDB Subject Public Key Info: Public Key Algorithm: rsaEncryption Public-Key: (2048 bit) Modulus: - 00:a0:ad:d5:b1:ec:45:6f:d6:33:fc:5a:03:29:14: - f1:8e:78:d5:27:53:79:e0:92:7c:10:3b:79:a0:d7: - b6:9d:a8:5c:4d:fa:68:11:b3:03:9e:ee:5e:20:79: - 23:d8:9c:49:34:9c:1d:c4:6e:53:1f:9a:92:1f:08: - c1:15:e2:ad:cf:59:cd:1e:55:84:79:f9:09:ca:36: - 8a:50:83:c6:38:48:c6:d3:fa:f6:f2:2a:4f:bd:5d: - 60:9d:eb:21:c4:8c:f2:dd:2d:49:10:63:46:47:de: - 2d:59:a0:4a:e0:58:e6:c0:ae:d8:d4:5e:9a:f8:f5: - 68:1d:ea:80:8a:d6:01:b0:d5:5f:30:4d:88:5a:c5: - 1f:81:92:c1:40:54:c8:bb:a6:a1:43:de:81:3c:4b: - 79:95:82:bb:52:da:a3:a4:a0:69:ff:7e:00:8c:86: - 85:ec:af:03:68:a8:83:48:a0:e4:1d:31:a9:5c:47: - 99:9d:3a:3f:b5:3e:12:7c:4d:47:15:72:f1:11:5c: - 4a:ef:08:1c:7b:8f:e6:03:06:07:4f:94:21:b0:5e: - 27:fa:93:8c:b4:cc:56:34:3b:6d:c4:4a:14:57:b2: - 21:1a:3e:2f:c5:9e:47:1a:59:05:22:0e:56:b1:a7: - e8:80:9b:82:c3:54:57:12:05:94:79:a2:03:d9:64: - 3c:63 + 00:d6:d4:5c:62:a3:d7:9a:8e:f3:60:a5:f2:07:64: + bd:f8:2e:16:73:44:1e:4c:5a:96:07:08:88:84:d0: + 4d:15:83:0c:af:65:4c:55:42:96:14:82:f8:00:66: + 5b:2c:b5:7b:e7:44:a5:aa:4e:63:e1:d9:88:05:2a: + 80:c2:f2:4d:70:eb:63:24:7f:f9:d9:70:13:53:cb: + 45:12:0c:3c:1e:d2:ce:08:f9:b9:e0:bf:8d:6b:0c: + b9:29:99:31:96:f9:b6:b0:fd:e5:14:d9:e7:3b:77: + 26:5c:c1:e3:54:c7:63:e0:a3:30:de:86:06:19:0f: + 7e:04:d2:d2:d3:f0:78:23:21:79:3c:9a:42:41:6e: + 53:36:de:dc:0f:c7:98:8a:85:79:0a:d4:ef:90:02: + 1b:12:3a:60:32:6c:54:c5:8a:7f:74:24:0e:d3:08: + 5b:d2:e6:ae:de:17:47:8f:4d:ae:13:00:67:45:e6: + bc:0e:ee:1b:0d:44:b2:0c:25:6d:b8:38:5c:87:c1: + d3:98:27:a1:56:21:5c:42:15:b3:f4:b7:ec:ae:bd: + ae:af:e4:50:0d:34:7c:3c:e1:b1:64:f6:e4:07:53: + 9d:96:44:8a:41:e0:3c:df:f2:fc:6d:de:f7:5d:8c: + 04:ca:e1:4f:cc:a5:c5:0c:ce:a8:f7:49:b5:63:6b: + 02:53 Exponent: 65537 (0x10001) X509v3 extensions: X509v3 Subject Key Identifier: - 1C:C7:2B:AA:1B:B1:BB:2E:9A:F4:0F:B1:86:60:57:38:C2:41:05:12 + F3:1D:A0:5F:69:33:8A:A4:B4:76:97:A2:6E:AB:FD:A0:BF:F3:2C:CE X509v3 Authority Key Identifier: - keyid:1C:C7:2B:AA:1B:B1:BB:2E:9A:F4:0F:B1:86:60:57:38:C2:41:05:12 + keyid:F3:1D:A0:5F:69:33:8A:A4:B4:76:97:A2:6E:AB:FD:A0:BF:F3:2C:CE - X509v3 Basic Constraints: + X509v3 Basic Constraints: critical CA:TRUE Signature Algorithm: sha256WithRSAEncryption - 0d:4b:21:52:fa:49:34:56:14:db:83:ae:1c:3d:a7:4d:3e:ea: - 55:7e:1a:37:7a:65:89:ee:19:05:94:9d:3a:ad:59:c4:38:16: - b2:bd:02:ee:5a:a6:7e:e2:b1:21:a3:ad:af:8c:ae:c3:30:71: - ad:d7:d2:24:0f:c4:d9:47:80:c5:95:05:1d:7c:8a:49:0a:7d: - 8b:61:ca:b5:68:3d:3e:4e:f1:c7:45:62:c8:cc:a9:2f:f3:12: - f1:3f:92:34:7f:07:ab:d3:ac:ab:af:2d:c9:69:63:8a:b2:e5: - 35:ea:7d:b8:17:38:72:82:5f:96:3d:dc:8d:e5:11:bb:ae:f3: - 02:2d:20:77:5c:64:59:18:a6:e7:fa:c7:89:e8:30:12:14:04: - 40:5b:e9:b1:8f:86:81:b9:0d:6c:b6:fc:98:f9:b7:52:ab:8f: - 7e:53:c8:a0:05:e4:cd:0d:6b:d2:74:9f:17:7a:a1:c3:76:5e: - f3:29:1c:c6:be:56:ab:02:f7:5d:e1:c9:21:27:6d:66:7a:41: - 29:49:a3:f8:f5:2a:e7:03:2a:7c:52:4b:f5:46:58:45:be:a4: - 4c:a0:65:37:1d:d8:ac:f8:1f:81:ca:9c:79:f0:ff:22:8c:1d: - ce:2b:d0:1e:ce:99:f2:db:fa:66:84:e6:86:6f:19:3b:10:f1: - 92:ac:57:b2 + 0c:1b:af:48:e0:29:ff:d5:23:27:4f:0b:f6:4d:d3:c6:73:13: + ee:fa:ba:84:9e:22:c6:c4:35:11:d3:aa:42:11:a5:4f:97:39: + 72:d5:eb:6e:3e:d1:75:dc:51:bc:bc:ab:2a:0d:28:aa:3a:2e: + f1:7f:ae:a0:16:27:07:2e:a3:f1:06:ed:33:9b:8f:b5:3a:ca: + 8c:a7:e8:fe:b9:a4:b3:4e:c1:27:7d:7b:23:33:10:fe:27:4b: + a2:b1:6a:32:09:30:84:24:d2:1d:02:9d:41:3b:ba:4e:51:ff: + ce:98:c3:c9:9a:22:b8:ac:21:5b:c3:89:28:8e:3b:6a:9c:d3: + 5f:ef:99:6d:ac:f5:56:81:09:97:22:31:96:49:b8:75:1d:71: + 5c:76:7d:64:87:77:18:30:4e:43:f7:c3:1a:f9:d5:cf:97:29: + 28:cf:40:84:da:35:29:bc:f6:9a:9e:e9:ce:f8:cc:57:02:41: + 13:d1:60:18:41:60:b7:17:c6:b6:6d:71:d8:20:50:56:13:3c: + 6c:23:0e:91:1b:2f:8d:31:e8:82:da:71:5f:6c:1c:3f:f6:7f: + 2c:30:47:eb:89:c6:28:9b:61:62:43:e2:3a:91:48:0b:1e:2a: + c0:d9:a0:59:69:4f:13:58:cc:4a:8a:37:2e:c6:c1:a1:7b:03: + 4a:e5:cb:98 -----BEGIN CERTIFICATE----- -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 -----END CERTIFICATE----- diff --git a/mysql-test/std_data/cakey.pem b/mysql-test/std_data/cakey.pem index 88e251f00..56c25057f 100644 --- a/mysql-test/std_data/cakey.pem +++ b/mysql-test/std_data/cakey.pem @@ -1,28 +1,28 @@ -----BEGIN PRIVATE KEY----- -MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCgrdWx7EVv1jP8 -WgMpFPGOeNUnU3ngknwQO3mg17adqFxN+mgRswOe7l4geSPYnEk0nB3EblMfmpIf -CMEV4q3PWc0eVYR5+QnKNopQg8Y4SMbT+vbyKk+9XWCd6yHEjPLdLUkQY0ZH3i1Z -oErgWObArtjUXpr49Wgd6oCK1gGw1V8wTYhaxR+BksFAVMi7pqFD3oE8S3mVgrtS -2qOkoGn/fgCMhoXsrwNoqINIoOQdMalcR5mdOj+1PhJ8TUcVcvERXErvCBx7j+YD -BgdPlCGwXif6k4y0zFY0O23EShRXsiEaPi/FnkcaWQUiDlaxp+iAm4LDVFcSBZR5 -ogPZZDxjAgMBAAECggEAWmy6AGFpSmEP7IpzkOEaeAWEX5dY1YtaioAOGPiM6vje -yXuMqblG5mBbVIcYJ0T85cCd9/fmi7ifVxvEHh7tle2Bw/p4jXQbkFNVT655FR/P -1Wg9JVeufHFaeETlQgnYe6SKo9BaswNUHkZZHRyq7/D2Ub3UFRt2tq9MG9YIKY1m -rP9s7E+EDuH9UhYmaWdQfNm8muIXWK8WjicI5+PX0CQ1NtUy6vS7qBzcBzvT0chC -Jtja29S6Nvg12A96nHsRmQyUaQjRlqosSwiagpc5mZmNeCEUoY+3deIdYIUMSQnf -judZOKVPq0GOW5Y1U068LGODWaifPkinGBj+04VH0QKBgQDOp/jVCOUdEeqFJ/8m -wEsfsRIrXvtGJHgbDXcVJ69FwlX+yaKGEuC+4f21uyxPn6GoFw+NKAyTmGKH7VAX -OFQLrMQ/DMlNbZrCAAFcXMqrnLaVwqMeIIoVNfKAa8u15K40qc+B0it61Nlay5wq -wvXoSZrdqXSgsI29pav20+8pTQKBgQDHC3l1+gMZ1rCar+5KdVBN1Wq4Xh7cwZw6 -FxEvyrDCJePEU2L7FpH1pFuB4WpXdBu3CPo70ZgwfqBXn4qLOOI3gTtDHActyiUm -+WRG62O+5Ye7aLB4xy0MfnKNA2g/yHj1ozwM8kA5JRptAzDnzWfVE0k47/pVAVzt -E2bZuSykbwKBgQCL6SkMgjMr1T9j20phn/q8gBN/DZUtTe+K0Tj4N5/wqLuz/its -fkdutG4ipZBAcCDwPnym4qBxJNBAmqiIr/gm11ceILgBFd2azoodUC1etoDfL6Fj -+j/CUH3X+CM5CJPwz67Pg80wIf7t+7/FK611ELAqtllhmWa9KPcd6yqWWQKBgHh5 -Xnvk5kmWY3BNOgrBNOjXWu/asA1n9lpGqfVmVlQ8wL6MxiU5xQCMCYL0X/ws37WK -boMUWmxHyF8gxqd7t5hm1OrKpSG274PGgUZXpRjfLqdlNyLzUzXztvvY6xloCqaK -tYcUfYDZD0SaINi8v7L9KF2ZCsi2uXsZOjBf30BrAoGAXPPotkw/CkcPQBS13cha -ZWeeH5NDKBADWXfLfcRUs108c9xw4BYr5yGilSPscN2ZP0/iWONKp/c6/STS54t5 -lkOKKUbkAFbQu8UKa1J7zrnHZv+Mr4I/iBBy6VkN8Spp2vBI3Ng6jhPIJg3Gum9p -943wWtAnIhe/UqCRT3a/GZg= +MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDW1Fxio9eajvNg +pfIHZL34LhZzRB5MWpYHCIiE0E0VgwyvZUxVQpYUgvgAZlsstXvnRKWqTmPh2YgF +KoDC8k1w62Mkf/nZcBNTy0USDDwe0s4I+bngv41rDLkpmTGW+baw/eUU2ec7dyZc +weNUx2PgozDehgYZD34E0tLT8HgjIXk8mkJBblM23twPx5iKhXkK1O+QAhsSOmAy +bFTFin90JA7TCFvS5q7eF0ePTa4TAGdF5rwO7hsNRLIMJW24OFyHwdOYJ6FWIVxC +FbP0t+yuva6v5FANNHw84bFk9uQHU52WRIpB4Dzf8vxt3vddjATK4U/MpcUMzqj3 +SbVjawJTAgMBAAECggEAZFozBcjvcD2SpvUdyCJhM0ukJRgO5y/xoTt1OkVrnL7o +8A3ryHAgV1iOrPEjahEk3fWNRa70rY3GIlOmbmptjnAGkghOGCpofN4ZV8LrWqKy +qDKvh7MzRmxdGnd7WMExfCA+IK1hfL+95dqUbQfvOgJBU9Fbi91Wyr4IygQsuouP +Nog3FLz4jejr578qx310Nm0ppNWDa9vWWoiu4bW9u7mqYXhrOiLBxPp/EP2sg5+S +yocjtHSfcrMDBOdiluFWlNyX69uKXWDyge/F9H5whuW5H4JRHv3i3sUcaXK/PF8D +RwJCDiX4E7M7JVG1EgCz4kC0GyTNGihwSTB66DJxcQKBgQDyM+M71wiMQxseCCZa +sBbRfNm100agUNRUBWGrmOLXj6eThkwNknndAZh4nUpuGOYO0CZrnfO4rUBAjpTx +7++0OGJEf7CEX26da5Ge+ywkgxpOaVbhliuDeFZ3Lqy/1UcUVPvxPy27Sc6i6SYt +gKaej3KpyJW0nUi2Fmca1mHp7QKBgQDjEUhYrMJrXLbmR6AELp7sbTTw1fFp2jUC +iiM3lEYfuiUprOCXe6m2yWkd0mF2YyGZt7Z2LMX4jIRe06h4c7WSMuHAbb9Tvro9 +Kp7Xgq6+edKSdIQG8mb/UXauEuhqRyt2Y8Xr18yPlmpViI+xiAWT9x/9otpkxMVu +RiUVEWoVPwKBgQDb2AtXgr0Ii9TucplV0eY0aq4247qExDmmtmfMWW72GTgTqWAZ +Ja6l08/xE1y/CKyyH2/wWSQjqmba8lDyNkcO/+r6oCi6TuFZ1I0OkJCl57aWG/m3 +tBZ1NGLPtbcqPU5Sfz1c4msBSGJe72AvB0q2PCDpSd/RXL7mQPl/m76ulQKBgALx +7HBJ/VOLJkwiTa8AM8t5NyCQhcsLq3hW9lH4OFic/3Jk7ZzJW9AlGJnsapswefUW +buVle0PX/reEI0E8rvQweMEYK00Ywi2c6eZ9qWqLBfIkVLoKVs+k7NchI6aNOcEV +VjHS4LJUDxkA5mw1CW173QxbGl4IN09Q1ZZKXYfdAoGATv50WfkAxn+wA3R8edUk +ZIqqxoeh3isSN7XSQCypFIKGP0Cmo4cjcvgyXVGYX3b9a2LiNRags/q4S2ZGLz9C +Ksv9uiyKA8THhcdx4RVUQuWEjyGzivwkk9UHTZhwOM+ED0HyE5/gnMs2RJVMMd7W +0tocCTiUvCxfBB3W77Nm48g= -----END PRIVATE KEY----- diff --git a/mysql-test/std_data/client-cert.pem b/mysql-test/std_data/client-cert.pem index 9f6f0cfde..432784a54 100644 --- a/mysql-test/std_data/client-cert.pem +++ b/mysql-test/std_data/client-cert.pem @@ -5,22 +5,22 @@ Certificate: Signature Algorithm: sha256WithRSAEncryption Issuer: CN=cacert, C=FI, ST=Helsinki, L=Helsinki, O=MariaDB Validity - Not Before: Apr 25 20:52:33 2017 GMT - Not After : Apr 20 20:52:33 2037 GMT + Not Before: Apr 24 14:29:50 2019 GMT + Not After : Apr 19 14:29:50 2039 GMT Subject: C=FI, ST=Helsinki, L=Helsinki, O=MariaDB, CN=client Subject Public Key Info: Public Key Algorithm: rsaEncryption Public-Key: (1024 bit) Modulus: - 00:a1:10:ea:cc:8e:2c:73:6b:33:1a:5e:26:19:b6: - 4b:4c:bc:04:b8:c2:e2:33:eb:67:a2:7a:27:af:3f: - f7:ef:49:5f:c1:d2:b9:d9:71:fe:17:a0:93:da:dc: - f1:47:de:fa:1f:c3:c1:d1:a5:2a:06:cb:b3:e8:9a: - c1:bd:78:77:68:45:c1:55:cd:b1:c1:d3:df:8c:12: - 4f:c2:3a:0d:b7:58:dc:ca:13:08:b9:fb:12:24:90: - aa:b7:4e:04:eb:43:0d:45:be:1c:17:d6:a8:b1:af: - 10:3c:39:d6:08:45:ed:a9:7e:3a:69:ae:70:22:86: - 7e:71:1f:f1:0e:d0:0d:32:c3 + 00:ab:9b:08:e8:ee:c3:21:9e:b5:dc:3e:03:b2:4e: + d5:45:58:7f:dd:95:a1:d9:b1:86:c5:1b:c5:d6:66: + 52:73:2c:d4:eb:53:80:0c:02:1d:8b:40:43:b1:e9: + db:a1:87:d7:61:f2:35:b0:4f:bf:1b:20:87:60:6f: + 4f:0a:df:8e:1b:32:fb:69:d3:be:24:20:77:be:cf: + f6:4f:23:fc:2c:f4:12:a1:b9:54:7e:74:e2:21:7f: + 03:e5:03:a3:17:a6:eb:c5:1b:38:3f:35:9d:b9:67: + 73:d3:80:c5:61:f4:8d:48:2e:cf:f0:aa:59:36:7c: + 4f:f6:37:f4:b7:7d:fe:1d:87 Exponent: 65537 (0x10001) X509v3 extensions: X509v3 Basic Constraints: @@ -28,42 +28,42 @@ Certificate: Netscape Comment: OpenSSL Generated Certificate X509v3 Subject Key Identifier: - 0C:20:76:A1:80:9C:2F:30:3D:F7:AB:8D:31:19:AD:E2:F7:E2:8D:12 + 53:3C:D1:92:1E:19:3C:32:DA:BF:5E:2E:11:E8:17:A8:1C:77:27:DE X509v3 Authority Key Identifier: - keyid:1C:C7:2B:AA:1B:B1:BB:2E:9A:F4:0F:B1:86:60:57:38:C2:41:05:12 + keyid:F3:1D:A0:5F:69:33:8A:A4:B4:76:97:A2:6E:AB:FD:A0:BF:F3:2C:CE Signature Algorithm: sha256WithRSAEncryption - 39:c0:90:13:19:85:47:9d:c6:ab:8c:c6:c9:0f:33:11:19:f7: - 01:2c:1b:08:f6:81:98:11:ab:48:05:d9:b2:29:56:32:9c:ba: - e5:40:df:85:5e:6d:fd:6e:36:9a:14:eb:90:50:57:de:2f:ed: - 2d:89:a6:8a:40:1c:41:84:9b:da:e1:6d:e6:7c:46:b2:e0:90: - 93:02:1c:52:2e:af:b4:d4:a1:d8:9d:19:cf:0a:67:bf:c3:3e: - 2e:02:f4:3e:bc:2e:59:57:30:85:8a:32:ab:22:88:72:37:6e: - ee:ed:f8:53:72:c9:28:87:50:47:81:1b:80:4c:f8:80:ce:2f: - 47:ca:78:ce:38:51:70:ec:df:ee:fc:ea:5a:40:1e:4d:1c:fd: - 4e:f6:74:d0:22:a4:7e:57:df:16:1a:a0:8d:be:fe:ee:f2:07: - 2e:39:a1:97:40:19:f9:3b:b8:e7:c4:98:6e:1d:1a:27:d3:19: - 4c:5c:c9:c3:31:98:c1:3c:27:0e:6a:de:cf:88:72:cf:e4:65: - c9:0d:33:32:f1:ea:f7:dd:5b:9d:42:6d:ee:c7:a8:b7:85:d2: - 41:e0:84:38:ce:86:81:ba:6e:7d:d5:ad:7a:00:58:d7:c5:83: - 9e:5c:1d:38:32:72:49:f5:42:4b:e7:c6:5c:12:6d:e1:5d:51: - 2c:f5:52:f0 + 8d:f9:38:ab:6e:7b:b5:91:80:f0:51:8f:0c:67:b9:39:64:c1: + 5e:e6:da:2b:f6:7c:8d:37:13:d4:47:a3:2f:be:04:53:da:b0: + dc:d1:35:88:ee:3f:52:be:17:ea:ae:ec:2b:cd:e3:cd:6b:8f: + 09:e5:c2:aa:9b:50:aa:ea:63:ea:74:97:b5:ab:c9:27:6c:1d: + 8a:80:a0:49:7b:0f:6e:77:92:6c:db:0c:a8:c0:5d:c3:6a:54: + 24:52:6d:87:22:49:67:68:89:16:35:bc:eb:94:59:f7:2a:55: + dd:50:ca:ee:c8:72:4d:03:92:e3:10:46:d5:20:80:09:cd:db: + fd:c8:b2:de:4f:1f:c9:96:8f:d1:cf:81:99:d2:ab:b9:c5:27: + e0:40:e8:76:e9:a4:4d:c9:03:0b:be:d5:f1:f4:42:ce:2c:83: + 6e:3e:80:bd:cb:59:36:4d:34:47:08:91:a8:e1:23:f5:e0:af: + 89:ae:1a:74:3e:ea:82:19:07:ef:3c:d6:3f:cf:5c:75:5e:57: + c7:32:17:b1:16:36:7c:7b:a7:45:aa:de:e1:b8:c1:a2:05:1a: + e4:30:51:a3:af:9e:ac:a0:8a:fc:fd:9d:b3:a9:ae:25:62:91: + cb:ee:e7:bc:fc:9c:3c:e9:15:ee:a2:6f:f5:f1:fd:6e:59:a9: + 41:0b:c6:7d -----BEGIN CERTIFICATE----- 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 -----END CERTIFICATE----- diff --git a/mysql-test/std_data/client-key.pem b/mysql-test/std_data/client-key.pem index b6b5507cd..e5fcc82ac 100644 --- a/mysql-test/std_data/client-key.pem +++ b/mysql-test/std_data/client-key.pem @@ -1,15 +1,15 @@ -----BEGIN RSA PRIVATE KEY----- -MIICXQIBAAKBgQChEOrMjixzazMaXiYZtktMvAS4wuIz62eieievP/fvSV/B0rnZ -cf4XoJPa3PFH3vofw8HRpSoGy7PomsG9eHdoRcFVzbHB09+MEk/COg23WNzKEwi5 -+xIkkKq3TgTrQw1FvhwX1qixrxA8OdYIRe2pfjpprnAihn5xH/EO0A0ywwIDAQAB -AoGAaJMqT+vTcpDcmjcct78DPuwoiKmH4rvqCrUTRRbcbJGQSbD/F+6KUl7hAM5J -Hifo8GzST8LT+ZuS0OiB9/naVGJjcLzpV+us+keMctB/cjmsPAAsRdeA8Xk0jTWv -v+5a5ZWSSbRXycuUtywtoESY1RLEyB0k3Dcxvk6SD3LnNMkCQQDTyDJfP+eirhgC -mKiNvHJjLtlRT11IMLMVTELEntsyKqzVgficZCWGkFRoF9iEO1OyCJaug7RZsuxs -Z3lk/gq1AkEAwrHwzVPU+dTqsZ8tYHlq+d0xy+6eTtYy7e/5qH3AUz10us6BG/LY -XVTwRFAOKQOciKZ/zPQa4oYeAc0oozSalwJBAIuMbyS0Rz262bdcQDSk5/rS8//P -+/eFn3t5NMW6p1T3KcvGSLtEgjWZBQVSMSlwrkWxwxhbUIuKip8jz6nse8ECQDgm -g5FkLRdEfc9uXfLl8aFQVu0+y29nPVb8D9+1LMOVBNZfekLqPdZlCcpZ4EuZ3ApZ -IqCkgiB0l7DjT2YKZM8CQQCp8z1JvoNRwhIuojh7JajY5QBkXtvHootXr+vDUHNf -SgR5BRmqZb0F5/BK4/7JbumiHI11QUULxhOnNtlS7DDt +MIICXQIBAAKBgQCrmwjo7sMhnrXcPgOyTtVFWH/dlaHZsYbFG8XWZlJzLNTrU4AM +Ah2LQEOx6duhh9dh8jWwT78bIIdgb08K344bMvtp074kIHe+z/ZPI/ws9BKhuVR+ +dOIhfwPlA6MXpuvFGzg/NZ25Z3PTgMVh9I1ILs/wqlk2fE/2N/S3ff4dhwIDAQAB +AoGAdDsE9OhLKGlcGjmyvUHh+B8yM/5WaqFwe+8Mt+QEMliKOn4K+5cvNZMohsez +6BufCYtJTAsnkJMevnWF3wJ+N9ceuFmYP0iiliKaC6pfrytSSO7XBcluGawHTJl6 +xwG2BonBgAUGClAQY6yeA3QAkos9Cwl2yBOSsOBFp0BCTxkCQQDjHpEb+TRPNeS9 +9dtrl+00n8XV8E8BZrcPdb7bCllhPrxmLD9T3ZgDiya5ZelzRCpySRQfqVV4sVO1 +UnAn0w29AkEAwW1S15bXHgCFutLlOlAc09PK39JbtLijxEaIwAMdyR8i8v9zkB8M +/bjARB/6sY6Pwr8ISewnkWVdLWLNSTTCkwJATAbFaGnJOuK9iWEtbBzVSJJbNTxW +Fg/+I2y00LnsJYNMqZ8SK863vifsdI9K0Ez3MH6J//c9J0Ok08Oey5X4uQJBAKhE +JnEN841R/wQLOwaDctCDylTzdnu8tBqnEYeYLm0r/QdPWoThvjdqZTfeagPUdROB +hABqw/EkMO6uqM8qaqkCQQCPQ2Nz10wnsMY2wNs6gnHkqQX+ociiOVWrp6lwWx+K +NTZg1FIkLEWFfH+meTguOSso/IXt+HlWb6sHth00OeJi -----END RSA PRIVATE KEY----- diff --git a/mysql-test/std_data/server-cert.pem b/mysql-test/std_data/server-cert.pem index b874f129c..9f735d99e 100644 --- a/mysql-test/std_data/server-cert.pem +++ b/mysql-test/std_data/server-cert.pem @@ -5,22 +5,22 @@ Certificate: Signature Algorithm: sha256WithRSAEncryption Issuer: CN=cacert, C=FI, ST=Helsinki, L=Helsinki, O=MariaDB Validity - Not Before: Apr 25 20:52:21 2017 GMT - Not After : Apr 20 20:52:21 2037 GMT + Not Before: Apr 24 14:29:39 2019 GMT + Not After : Apr 19 14:29:39 2039 GMT Subject: C=FI, ST=state or province within country, in other certificates in this file it is the same as L, L=location, usually an address but often ambiguously used, O=organization name, typically a company name, OU=organizational unit name, a division name within an organization, CN=localhost Subject Public Key Info: Public Key Algorithm: rsaEncryption Public-Key: (1024 bit) Modulus: - 00:c9:fe:83:3f:0b:38:89:1d:43:15:93:5c:26:b9: - 80:65:41:bd:2f:63:66:5e:db:fa:33:20:d9:c7:e1: - 35:f3:14:3c:c8:b4:f7:09:d8:f5:b5:44:8f:6b:7e: - a0:a4:3b:45:5f:e6:f4:0f:08:67:f8:5a:4c:49:e4: - e5:39:31:69:8c:cf:25:78:93:a6:7f:58:e9:90:9c: - 61:cb:2e:14:b1:57:b2:15:9c:ea:8d:6f:96:20:fe: - 29:ed:2c:71:b8:4f:1f:e0:05:6c:04:b1:7e:e0:bc: - 42:8e:bf:95:5e:a9:5e:c9:c9:a4:64:c2:1f:59:94: - 14:c2:06:44:79:bc:d2:65:2d + 00:b6:42:a0:5e:1e:05:5e:7f:15:bf:7c:a4:d6:c7: + a8:cd:cc:db:f4:c4:e5:6d:f3:53:47:90:7b:d2:d6: + d9:0d:45:7c:62:aa:81:64:3d:b8:db:29:1f:0c:af: + 35:69:d3:82:7a:66:86:7b:97:ce:0f:54:a1:7c:ae: + 97:0c:0b:7a:1e:cc:60:bb:c5:bb:a1:47:d3:c8:22: + a0:79:11:2c:09:85:f2:2d:be:24:5a:73:88:d8:45: + bc:6d:d2:9e:7b:8d:9d:55:f2:c1:1e:e6:cd:20:a0: + 8b:b4:3b:85:0c:4b:06:b3:d5:1e:51:1f:a5:ea:fc: + 81:74:c6:bd:59:f8:81:35:05 Exponent: 65537 (0x10001) X509v3 extensions: X509v3 Basic Constraints: @@ -28,47 +28,47 @@ Certificate: Netscape Comment: OpenSSL Generated Certificate X509v3 Subject Key Identifier: - CB:22:3B:E6:DA:B8:3D:7E:39:61:18:38:50:C8:4D:B4:C8:9A:3E:2B + 2E:E9:8D:DA:55:FE:77:34:F0:0F:F0:07:02:31:7C:7D:DE:D4:0C:D5 X509v3 Authority Key Identifier: - keyid:1C:C7:2B:AA:1B:B1:BB:2E:9A:F4:0F:B1:86:60:57:38:C2:41:05:12 + keyid:F3:1D:A0:5F:69:33:8A:A4:B4:76:97:A2:6E:AB:FD:A0:BF:F3:2C:CE Signature Algorithm: sha256WithRSAEncryption - 8e:b7:3d:cc:2b:e5:27:49:49:5a:d4:3c:83:9b:2f:7d:11:de: - 6b:0f:b4:51:02:e4:37:d0:c4:b5:7b:4b:e3:42:93:75:32:d1: - eb:41:a2:27:fe:4d:91:ae:2b:a0:8b:3b:7f:e9:1b:47:85:73: - 9f:b7:05:74:34:eb:62:12:d8:f2:24:6a:b4:24:58:7a:6a:55: - 3e:ba:54:f9:51:de:54:0e:19:06:f6:01:23:32:0a:6c:81:e2: - 57:8a:9e:71:c5:ba:ca:c3:0f:18:d4:ef:54:4b:e1:ee:7c:3a: - f3:4d:c3:a3:44:21:9f:c8:ef:85:01:ab:fe:a9:7b:36:05:10: - 25:5e:61:b8:1d:7c:40:8a:5d:5b:c1:bb:7c:79:45:6e:84:63: - b5:3f:51:e9:9c:57:01:de:2d:1e:85:cb:83:f0:16:6d:78:bb: - 12:01:a5:e5:a2:a7:80:fa:54:8f:9a:5c:de:1c:52:a2:bd:00: - 49:e4:04:65:30:f9:b9:fc:4f:94:e2:d8:39:89:b6:a5:a5:2d: - db:25:a3:0d:5b:f9:e1:2a:13:19:5e:d7:1a:33:89:5b:ac:bd: - 29:26:da:1a:90:7e:08:19:dd:59:4b:50:fd:46:c3:0b:91:33: - 8b:c6:70:d1:22:18:37:a3:8b:d3:8f:f8:68:cf:38:8e:e1:ef: - ac:17:88:ca + 8e:80:73:98:21:69:44:9a:75:e9:08:ec:53:fa:48:84:6b:36: + 66:d6:84:0d:1c:d0:89:c8:9e:59:0b:33:64:2d:92:ee:a3:f1: + c9:a4:5f:52:5f:b3:39:d9:36:9a:0d:9b:44:79:72:27:81:06: + 8b:bb:b7:ec:f2:d4:23:ca:03:0b:19:44:c5:64:9a:0e:e9:b5: + 4a:db:bb:7a:47:65:5f:be:00:25:0b:67:42:ad:3a:89:ba:e7: + 97:c1:88:dd:22:49:57:21:3d:fe:c3:e8:ab:70:6c:d1:a3:7d: + 3e:ac:8f:d5:a7:df:4e:5a:de:7b:71:60:16:a8:5c:c8:3b:9a: + f9:86:92:27:ae:9b:73:fb:0f:f0:09:d0:9d:f0:2a:df:54:86: + 44:b5:29:af:93:d3:03:fa:48:72:44:69:85:d3:9f:d5:7f:5c: + 4c:30:af:e7:37:0b:db:29:74:fe:d2:49:ce:90:fb:af:a5:39: + a6:98:83:c6:51:63:e3:3e:bf:b1:9b:8b:26:bd:34:69:cc:d4: + 2c:6e:6c:2d:90:01:9b:3c:4c:9d:cc:4f:f4:86:2a:44:92:2e: + ab:ac:eb:e0:55:6d:50:cf:0d:52:ac:d5:3f:3e:36:4e:21:61: + ee:2f:40:a2:52:be:42:f6:81:aa:c3:9f:4a:6c:68:02:1c:8b: + 63:e1:ec:8e -----BEGIN CERTIFICATE----- MIIEETCCAvmgAwIBAgIBATANBgkqhkiG9w0BAQsFADBWMQ8wDQYDVQQDDAZjYWNl cnQxCzAJBgNVBAYTAkZJMREwDwYDVQQIDAhIZWxzaW5raTERMA8GA1UEBwwISGVs -c2lua2kxEDAOBgNVBAoMB01hcmlhREIwHhcNMTcwNDI1MjA1MjIxWhcNMzcwNDIw -MjA1MjIxWjCCAUcxCzAJBgNVBAYTAkZJMWEwXwYDVQQIDFhzdGF0ZSBvciBwcm92 +c2lua2kxEDAOBgNVBAoMB01hcmlhREIwHhcNMTkwNDI0MTQyOTM5WhcNMzkwNDE5 +MTQyOTM5WjCCAUcxCzAJBgNVBAYTAkZJMWEwXwYDVQQIDFhzdGF0ZSBvciBwcm92 aW5jZSB3aXRoaW4gY291bnRyeSwgaW4gb3RoZXIgY2VydGlmaWNhdGVzIGluIHRo aXMgZmlsZSBpdCBpcyB0aGUgc2FtZSBhcyBMMUAwPgYDVQQHDDdsb2NhdGlvbiwg dXN1YWxseSBhbiBhZGRyZXNzIGJ1dCBvZnRlbiBhbWJpZ3VvdXNseSB1c2VkMTQw MgYDVQQKDCtvcmdhbml6YXRpb24gbmFtZSwgdHlwaWNhbGx5IGEgY29tcGFueSBu YW1lMUkwRwYDVQQLDEBvcmdhbml6YXRpb25hbCB1bml0IG5hbWUsIGEgZGl2aXNp b24gbmFtZSB3aXRoaW4gYW4gb3JnYW5pemF0aW9uMRIwEAYDVQQDDAlsb2NhbGhv -c3QwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAMn+gz8LOIkdQxWTXCa5gGVB -vS9jZl7b+jMg2cfhNfMUPMi09wnY9bVEj2t+oKQ7RV/m9A8IZ/haTEnk5TkxaYzP -JXiTpn9Y6ZCcYcsuFLFXshWc6o1vliD+Ke0scbhPH+AFbASxfuC8Qo6/lV6pXsnJ -pGTCH1mUFMIGRHm80mUtAgMBAAGjezB5MAkGA1UdEwQCMAAwLAYJYIZIAYb4QgEN -BB8WHU9wZW5TU0wgR2VuZXJhdGVkIENlcnRpZmljYXRlMB0GA1UdDgQWBBTLIjvm -2rg9fjlhGDhQyE20yJo+KzAfBgNVHSMEGDAWgBQcxyuqG7G7Lpr0D7GGYFc4wkEF -EjANBgkqhkiG9w0BAQsFAAOCAQEAjrc9zCvlJ0lJWtQ8g5svfRHeaw+0UQLkN9DE -tXtL40KTdTLR60GiJ/5Nka4roIs7f+kbR4Vzn7cFdDTrYhLY8iRqtCRYempVPrpU -+VHeVA4ZBvYBIzIKbIHiV4qeccW6ysMPGNTvVEvh7nw6803Do0Qhn8jvhQGr/ql7 -NgUQJV5huB18QIpdW8G7fHlFboRjtT9R6ZxXAd4tHoXLg/AWbXi7EgGl5aKngPpU -j5pc3hxSor0ASeQEZTD5ufxPlOLYOYm2paUt2yWjDVv54SoTGV7XGjOJW6y9KSba -GpB+CBndWUtQ/UbDC5Ezi8Zw0SIYN6OL04/4aM84juHvrBeIyg== +c3QwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBALZCoF4eBV5/Fb98pNbHqM3M +2/TE5W3zU0eQe9LW2Q1FfGKqgWQ9uNspHwyvNWnTgnpmhnuXzg9UoXyulwwLeh7M +YLvFu6FH08gioHkRLAmF8i2+JFpziNhFvG3SnnuNnVXywR7mzSCgi7Q7hQxLBrPV +HlEfper8gXTGvVn4gTUFAgMBAAGjezB5MAkGA1UdEwQCMAAwLAYJYIZIAYb4QgEN +BB8WHU9wZW5TU0wgR2VuZXJhdGVkIENlcnRpZmljYXRlMB0GA1UdDgQWBBQu6Y3a +Vf53NPAP8AcCMXx93tQM1TAfBgNVHSMEGDAWgBTzHaBfaTOKpLR2l6Juq/2gv/Ms +zjANBgkqhkiG9w0BAQsFAAOCAQEAjoBzmCFpRJp16QjsU/pIhGs2ZtaEDRzQicie +WQszZC2S7qPxyaRfUl+zOdk2mg2bRHlyJ4EGi7u37PLUI8oDCxlExWSaDum1Stu7 +ekdlX74AJQtnQq06ibrnl8GI3SJJVyE9/sPoq3Bs0aN9PqyP1affTlree3FgFqhc +yDua+YaSJ66bc/sP8AnQnfAq31SGRLUpr5PTA/pIckRphdOf1X9cTDCv5zcL2yl0 +/tJJzpD7r6U5ppiDxlFj4z6/sZuLJr00aczULG5sLZABmzxMncxP9IYqRJIuq6zr +4FVtUM8NUqzVPz42TiFh7i9AolK+QvaBqsOfSmxoAhyLY+Hsjg== -----END CERTIFICATE----- diff --git a/mysql-test/std_data/server-key.pem b/mysql-test/std_data/server-key.pem index feb7fbaf5..26d171dcd 100644 --- a/mysql-test/std_data/server-key.pem +++ b/mysql-test/std_data/server-key.pem @@ -1,15 +1,15 @@ -----BEGIN RSA PRIVATE KEY----- -MIICXQIBAAKBgQDJ/oM/CziJHUMVk1wmuYBlQb0vY2Ze2/ozINnH4TXzFDzItPcJ -2PW1RI9rfqCkO0Vf5vQPCGf4WkxJ5OU5MWmMzyV4k6Z/WOmQnGHLLhSxV7IVnOqN -b5Yg/intLHG4Tx/gBWwEsX7gvEKOv5VeqV7JyaRkwh9ZlBTCBkR5vNJlLQIDAQAB -AoGAZzoeMJW3arr9kYUhTtj1+MlDuXf+1PNuRbrAERnSzErHVXrF1M5/owdKlBC+ -X6+6oGwSxavyFkVvP0QusK/D1DxSs60Mk1p3Ax5nVpNYiBdeBULcYiXCSUbKItYL -vzyECIc02t+auWf/wp3Wy3g6sU6FoT2QCPSsy0qRC48VBzECQQD79P9w0XjJGk8y -3zPc4JOr3a1UUu4VLjFdFDR2eZZRE02NcXfLHE0+Idk3TYnNDRLoWDJjdfZ0thZZ -KuJ58wIDAkEAzTxGYmT/aieDC3G8sHMqLUvjN30TfTocv7mWlpxWo7zbRbQm7jsB -S5weRKtu3yVmdb6rW+5IZSCazc/j4T5tDwJAUgDRSpTCrSFE+Zevt4nYRi2mBjXf -i0E3i8XRtWWpSMXxjcGKba7ObRRzMA6qdPR2XOynqbtw9Vd2Ops8jthKpQJBAJJm -8tZxsXlqIiLhyXYdUPLq9XS5tlNYRvXFT9S0RWGb8NbyQesjEDN9dGIL4JUxurs3 -fkmf2ui4r3UtXSNqQqUCQQDjatAhBdibh5UawO5VpI87OJMzATCkY/mX3R+TnbOm -MkdydjF022P0M4N24DiM+2nBTDp+F45LwtQLa4vmB2No +MIICWwIBAAKBgQC2QqBeHgVefxW/fKTWx6jNzNv0xOVt81NHkHvS1tkNRXxiqoFk +PbjbKR8MrzVp04J6ZoZ7l84PVKF8rpcMC3oezGC7xbuhR9PIIqB5ESwJhfItviRa +c4jYRbxt0p57jZ1V8sEe5s0goIu0O4UMSwaz1R5RH6Xq/IF0xr1Z+IE1BQIDAQAB +AoGAdQJNJl8rn0EDW03QHbtMmeL9CyUlDfN68aTGedNIwYZsloNUUmB1vu2la2VI +a0pIqAAOMmaA+cKhcgQ8IJV1rh11BgiRhwJZJNRY1EYik5rEgJCYivlQo3PiDUhR +6l3t4xEmSswXyOj9WCo8kKJdjalERNDavLhXHa/SnQnSpzkCQQDtreVj+DIzRcJp +IaZvIlnVeDb+ZB3903DzXJLT4cqwmi2TuVBT6RkE4lnYAAIfQxedMfayLKzHTvse +aP4vvvRfAkEAxE8m27MngLZUyje9WwnbtXDUOALBNnGz3KE+qD6UN+a8qCJAJSJ5 +oJBpZU3ZDRKZaiIUOtQsMOonjB6wFrDxGwJANRnu8CDZhl8Filt8RcQU8f6Dut4/ +XSBKUfTS0QfXMxGfMSvr6HNhpZe0nu+Ric6BjhtFlJUqnPTmYervL1eoXQJAChm4 +eh1hrvGysyTjDUgYkeFYSfl6T37SLkvtmWJ+5dFta4k3m7GGaIiFo7y5qj6Gvjs6 +pzw7edjSaBc8IC7CeQJADBoy86mlLSUi7OzNz7xp3f2E1HUmjARFP72PW3FAosoU +GCsVCFeBZDSREZoQHB4CQZhjLFYkbBeVwFVOW/Jxjg== -----END RSA PRIVATE KEY----- diff --git a/mysql-test/std_data/server8k-cert.pem b/mysql-test/std_data/server8k-cert.pem index df27c77e8..187ea9a1b 100644 --- a/mysql-test/std_data/server8k-cert.pem +++ b/mysql-test/std_data/server8k-cert.pem @@ -5,82 +5,82 @@ Certificate: Signature Algorithm: sha256WithRSAEncryption Issuer: CN=cacert, C=FI, ST=Helsinki, L=Helsinki, O=MariaDB Validity - Not Before: Apr 25 20:52:33 2017 GMT - Not After : Apr 20 20:52:33 2037 GMT + Not Before: Apr 24 14:29:50 2019 GMT + Not After : Apr 19 14:29:50 2039 GMT Subject: C=FI, ST=Helsinki, L=Helsinki, O=MariaDB, CN=server8k Subject Public Key Info: Public Key Algorithm: rsaEncryption Public-Key: (8192 bit) Modulus: - 00:b3:a7:81:cf:a3:9b:3c:57:2a:8e:de:13:08:a6: - 15:6a:68:08:ce:a1:a0:ef:fc:32:95:5a:9a:b5:cc: - 84:bb:a3:15:a0:fc:29:bb:71:0e:f3:40:20:97:35: - 92:92:89:36:6a:5f:be:a5:24:5a:c8:0e:f7:53:a8: - e0:74:05:90:38:21:a5:25:72:2b:56:70:74:aa:d6: - 30:25:e0:95:dd:3d:4a:48:4b:25:a7:a8:c4:eb:e5: - d6:10:4f:95:42:91:b0:cb:68:2f:bf:96:0f:0a:9b: - 2b:01:0d:03:ae:3f:b7:7e:f6:1e:c1:14:42:04:7f: - 09:21:e8:3e:87:c0:b3:d7:dd:4f:7e:95:b6:83:33: - 8f:cc:f4:bb:11:8e:66:5f:b4:32:22:8b:8e:34:93: - 82:0f:02:d1:6f:85:b2:a7:7e:36:0c:f3:0d:91:46: - f9:a5:91:dc:60:4a:0d:eb:e5:37:e3:76:d8:13:bb: - 55:33:23:4c:b3:90:df:6a:b6:80:3d:f6:bd:9d:bd: - ef:d3:8d:7a:9a:61:ac:02:3d:10:b5:c2:53:d2:7e: - ee:1c:90:a5:b0:e8:db:71:8f:d3:53:e4:80:b0:b6: - cc:b0:f2:eb:46:c3:d9:3c:48:01:1d:3a:5c:d0:f2: - 17:9c:9a:8e:fc:2a:36:e7:1c:59:41:66:ad:e1:d3: - 82:d8:95:ee:ae:dc:ab:72:94:cb:0b:8a:df:ef:70: - f7:f9:e2:77:76:64:67:2d:02:dc:1a:db:02:e9:5e: - 63:3f:3e:07:e9:65:e4:02:78:62:55:e1:52:18:5a: - a3:9c:56:dd:cd:d3:f7:f2:55:45:62:20:ce:fd:41: - 93:b9:c2:20:90:23:a4:41:4f:30:5c:5e:a0:97:6f: - a4:1f:87:6a:97:87:70:f9:d5:56:b7:6a:cc:f1:28: - d2:26:34:57:65:9c:2d:41:43:8b:6c:bd:15:6f:ec: - ce:3e:9f:4d:2f:a6:21:d8:f7:4d:d1:63:4f:f0:9e: - 04:c3:82:33:58:34:20:4b:81:0d:42:0d:44:62:48: - 1b:4c:cf:e0:69:e4:c8:f8:9c:98:1f:74:37:3a:3f: - 23:40:3a:88:80:c2:9c:9b:ba:6a:b9:2c:3a:67:a6: - b6:5c:83:fd:93:3f:6e:53:19:48:e3:3d:fa:f5:8e: - 03:40:8f:e6:af:c5:de:aa:f8:70:77:36:2b:6e:3a: - df:bc:d7:f6:c7:4f:02:7f:a1:ad:2f:3c:e9:08:45: - 2f:57:1a:f1:5b:9c:27:07:3a:44:43:3e:05:b1:4a: - 1b:42:a4:90:ab:ce:4b:f7:c1:9b:d7:dd:6f:05:11: - f9:e8:a3:a1:99:6c:2e:27:3d:b1:54:6f:eb:b2:e8: - f8:e6:12:6f:8a:69:05:cc:c6:f6:c4:2d:b0:06:b6: - 21:50:28:50:dc:8c:b2:8c:65:ce:d9:2b:51:b8:62: - 56:70:b4:46:4d:e4:4c:a1:86:31:3d:e3:07:7f:73: - e3:09:6e:ee:a7:29:2a:80:23:8a:b6:0c:22:9e:43: - 1c:a9:8c:47:2c:02:6d:13:ef:88:a7:d7:d1:60:d9: - 6b:28:80:97:8a:b7:ff:62:6b:28:54:0d:ab:63:3a: - ac:57:9e:2f:95:2b:f4:a0:3d:a1:60:a0:57:1a:09: - 23:ee:fc:4d:9b:45:83:f2:0a:1f:b3:77:0e:98:20: - b3:16:fc:97:03:30:fc:ab:3e:7e:fc:3e:76:64:cb: - 4b:4d:c9:6c:8f:aa:70:ec:03:c5:81:31:43:11:9a: - fc:2d:ba:25:94:0b:73:7e:c1:39:01:ca:68:70:1a: - ef:a4:ba:dc:13:d6:37:17:09:0d:ca:aa:21:94:bb: - 3e:43:fd:8c:80:e6:58:fd:75:23:5a:ca:1f:0b:2e: - 35:c2:cd:77:0c:73:b3:2f:9a:e4:03:68:58:c8:3f: - f3:76:8d:05:53:d2:34:db:09:af:70:ed:67:0b:ff: - 2f:64:35:2d:71:22:7a:f2:f2:2b:7d:6d:be:80:bd: - 18:38:37:01:67:a4:5f:48:29:52:78:9f:b5:b8:80: - 70:ca:10:6a:e1:27:3b:c0:61:4e:96:f8:e8:0f:42: - b1:fa:bc:05:ef:31:91:38:ab:0f:a7:ef:2c:86:c1: - ab:85:36:7c:10:9d:c7:0a:6b:e6:2b:11:dd:fa:45: - e7:d2:c3:3a:c1:cd:60:27:68:26:d7:87:49:5f:e3: - 7f:26:20:1f:99:a8:f9:00:a6:0d:d5:13:81:6e:fc: - 27:8a:03:58:6b:0e:3a:c7:20:a1:5c:24:d1:08:a6: - 5a:1e:e7:81:3d:21:05:2e:4b:5d:18:14:f1:4f:ab: - 5c:e5:81:da:c1:2c:f6:12:ff:25:09:97:1e:9d:51: - 6d:1f:63:2e:9c:ed:7d:86:45:b0:35:73:f6:9f:82: - 65:bc:7f:46:88:e1:a1:60:a1:37:50:26:9c:d7:76: - f3:dc:94:89:6d:d7:be:a6:17:a1:2b:71:14:37:17: - 5f:ed:5a:39:99:fc:69:af:bb:63:55:c6:60:7b:64: - d8:bb:b7:4a:9f:b9:aa:89:4b:30:1f:9c:ef:23:7a: - af:7e:31:dd:fb:dd:0a:d5:04:0a:8c:57:6f:64:80: - eb:f3:ee:6c:33:d2:72:c2:24:68:a2:4e:99:88:1c: - f7:3b:5d:10:cc:4e:ea:a5:cb:00:40:8a:a9:63:2e: - 18:92:eb:b1:28:05:fe:19:ea:7b:32:fb:63:56:2c: - 0b:20:01:92:a3 + 00:cd:66:a2:70:48:a6:7b:2e:ef:40:10:f0:09:9f: + 0e:e8:f3:3b:43:07:2d:39:b7:54:55:aa:d9:16:12: + 81:18:8c:12:9a:ce:f1:5c:9a:f5:5d:96:09:3a:13: + ee:b4:e5:a9:88:10:99:d9:7a:d7:c6:d6:6a:7e:26: + c5:1f:63:83:bc:09:1a:1c:eb:f1:0b:9e:dd:cd:34: + 86:06:4c:83:aa:c9:45:5a:bd:2d:a2:ae:95:c7:4f: + 97:99:f4:80:bf:7e:38:67:9d:cf:94:12:e4:e9:6b: + 00:62:3d:b0:c3:c4:c3:94:62:e8:c5:7e:54:4e:8e: + a0:d9:ad:8f:18:66:43:93:aa:66:c7:f3:cb:4b:47: + 2c:a0:94:99:18:40:ed:82:53:15:aa:cb:66:56:27: + ed:78:8c:ed:f3:05:88:6b:dc:2e:d1:19:f7:ae:4a: + d4:8d:55:81:99:ec:46:c2:2c:db:9a:20:a1:3d:fa: + 54:a8:a5:fb:66:dd:a4:09:ee:d2:5a:d2:f9:5d:07: + 4b:2f:7b:2f:e8:ad:97:db:52:59:41:28:a5:90:a8: + d2:63:e9:ba:e6:a2:98:d7:7a:04:b2:63:1d:3c:09: + e9:4c:af:b9:1c:c0:3c:4c:4a:55:87:9e:a7:16:8a: + 0c:6b:56:86:0f:d4:32:6e:41:05:89:12:55:45:33: + 57:de:49:38:4e:36:3f:dc:db:95:b0:13:da:4b:96: + a1:d3:15:eb:80:99:5f:e9:d4:9f:2f:ba:82:ff:1e: + 9e:00:a8:5b:63:a7:12:49:ff:25:d5:b0:76:32:e2: + 04:01:21:5d:c8:2a:13:0f:f2:82:8f:f0:cd:ca:4f: + 01:5a:a1:9f:87:21:b3:33:ac:0d:0e:83:d8:3f:f7: + db:9f:9d:f6:ba:c1:54:38:fe:c9:ac:59:47:93:51: + bd:a8:3d:35:3f:e5:85:4e:f1:8b:06:72:94:3a:ae: + ad:bf:32:cc:19:e3:c6:d7:3a:76:1e:5a:2d:10:cb: + 67:f0:bc:86:fc:0c:89:5c:7d:c4:2b:61:79:8c:82: + ea:a9:84:55:a2:fd:1f:ab:11:a0:fa:b3:24:eb:b1: + 2d:f6:30:54:19:f5:71:a1:34:c6:37:20:29:32:56: + 97:29:40:63:5c:a7:fc:8e:67:98:8f:92:ec:49:06: + 06:fb:68:9d:d6:1c:9e:20:da:9d:74:21:8c:e7:0b: + 81:7a:ac:2e:fd:a0:8c:77:e9:6a:b2:20:7d:78:b8: + ce:7a:bb:4c:8c:74:14:07:1f:5d:e8:91:6f:26:c4: + 56:ce:fc:9f:03:59:85:b9:5e:93:b9:1b:35:ab:ca: + 3d:c2:06:b6:ad:69:e3:5e:38:86:66:cc:e6:9e:64: + f5:11:77:bc:7d:7f:9c:0e:fe:01:a5:dd:86:b2:84: + ae:f6:6c:ce:3d:21:1a:9a:8b:a4:fe:91:ab:ea:18: + 4e:e0:fa:f8:8a:53:a5:b0:45:30:b0:c2:60:ce:e0: + 3e:f5:6f:17:15:df:a6:15:04:4d:34:92:e0:88:6d: + ee:a2:f4:c3:7c:fd:a4:79:35:d3:44:c5:a4:98:14: + a5:a4:2e:5f:64:e0:b7:4f:da:b1:22:6a:2e:6b:40: + 96:8d:4f:92:ad:55:36:a0:fe:bc:79:26:25:5c:65: + 27:36:5b:40:ef:b0:e8:ab:62:1f:9f:7e:a7:47:ee: + 32:37:fc:00:7e:9c:03:76:82:fd:7b:76:98:58:d1: + a8:ed:b1:a1:99:09:92:0c:97:d8:92:7e:75:bf:3b: + d5:c3:04:0f:b5:3e:86:64:bf:5a:51:9a:58:09:ae: + 77:bf:e9:66:2b:89:f6:aa:72:af:d6:ce:31:b3:20: + 6b:96:32:35:d0:0e:bf:a9:94:c6:b1:c4:3e:fa:24: + ed:19:17:47:75:23:df:7d:02:a0:e9:93:99:37:1c: + bc:9f:d9:b9:61:99:dd:c6:bf:74:2f:a3:48:61:89: + 8c:36:ab:bb:7a:3c:5e:95:a1:83:55:f9:6c:72:d9: + 69:7a:4b:c2:66:95:de:28:45:c8:26:f1:1e:59:3a: + 0d:af:da:f0:eb:fd:c4:e1:e8:68:c7:62:8d:16:f3: + 73:41:7b:65:97:b6:b2:de:ae:07:f5:e2:98:f6:75: + 01:b3:98:28:fa:08:11:22:df:cb:c4:2c:c3:3c:09: + 93:6f:4a:d9:6e:cd:42:23:a7:96:04:d8:40:73:fd: + 9d:09:33:6b:38:45:9e:fb:c3:f8:9b:54:1b:f9:f8: + 76:63:0a:47:d9:54:20:97:c2:3a:65:5f:a6:f5:36: + 1e:3a:f6:ff:6a:5b:e1:44:b0:17:9b:3f:49:5a:3b: + c7:87:26:37:fa:0e:66:50:b8:c0:39:8b:b2:88:3e: + 8b:3e:c6:11:8a:c9:09:96:66:f6:b0:d8:d0:71:35: + 19:c3:61:7c:7e:2b:a5:d0:2d:0d:0e:ea:04:dc:94: + f0:f0:6f:0b:ff:00:99:f7:fc:46:27:38:40:b7:26: + 75:ff:ba:fd:d0:f5:83:52:bb:9a:64:77:7f:5f:1e: + 15:8e:86:89:14:c6:ab:dc:a8:1b:f9:1e:dc:55:11: + cc:28:6a:1c:ef:92:42:3b:38:c2:55:19:da:db:46: + 70:d7:17:6a:66:7e:ba:44:3d:38:4f:9c:9d:fa:87: + 20:a1:cb:86:87:62:ce:c5:3d:ac:d7:78:b1:93:38: + ee:a4:be:04:61:ca:ae:01:91:8f:c8:14:3c:79:61: + d6:81:f3:e6:47 Exponent: 65537 (0x10001) X509v3 extensions: X509v3 Basic Constraints: @@ -88,61 +88,61 @@ Certificate: Netscape Comment: OpenSSL Generated Certificate X509v3 Subject Key Identifier: - 43:3B:26:15:A5:60:62:3F:07:2A:8C:8C:DA:F8:74:BE:36:B2:33:E4 + B9:0C:F0:60:22:D4:C5:BA:28:88:C5:5F:31:E0:A6:29:CC:E0:15:E6 X509v3 Authority Key Identifier: - keyid:1C:C7:2B:AA:1B:B1:BB:2E:9A:F4:0F:B1:86:60:57:38:C2:41:05:12 + keyid:F3:1D:A0:5F:69:33:8A:A4:B4:76:97:A2:6E:AB:FD:A0:BF:F3:2C:CE Signature Algorithm: sha256WithRSAEncryption - 5c:c7:4e:56:eb:21:1b:f3:5d:c4:56:fa:bf:6d:e1:0d:fa:cc: - b0:7c:13:58:b9:d4:47:b3:de:b4:ae:f2:45:02:88:65:43:89: - cf:ea:9c:d0:ea:45:42:35:d2:ec:bc:b4:73:03:db:85:7b:c7: - f0:68:d7:dc:2b:70:71:63:ed:33:68:9f:29:ff:67:0a:69:3b: - c4:65:7c:25:00:cf:7f:ee:aa:fe:44:19:70:f2:74:db:da:9f: - 52:92:1a:03:e6:0a:49:85:2e:2a:02:c1:81:d4:6d:cf:98:d1: - e9:6a:2f:bb:fa:a6:d5:4b:55:38:c2:aa:8c:f5:d3:f9:e6:74: - db:00:d6:29:f9:d1:9c:7a:0e:98:c5:e5:8c:16:49:d8:cf:ee: - a0:cb:c2:2c:31:cf:62:2c:b1:7f:6d:60:b0:ce:d5:07:45:e8: - 44:17:7c:c4:12:fb:00:57:24:57:e8:17:78:3b:1e:0d:91:aa: - 67:98:d0:e5:9a:86:4b:88:4a:2f:55:5d:2e:13:ec:f5:4a:7d: - e7:13:a7:57:03:41:2f:f6:6c:08:8e:58:ef:b0:7a:79:32:e3: - bb:4b:eb:4d:42:cd:42:96:2d:67:f6:4c:c1:f6:62:fb:c0:3e: - 09:69:8f:36:7e:fa:c8:cd:ff:72:3e:df:92:f7:8f:44:cf:77: - fe:6e:74:de + 3d:c1:30:c0:a6:91:10:7b:3a:d6:d9:2e:e2:9c:23:03:48:88: + 72:3a:9e:02:4d:cd:fe:b6:f7:14:77:1f:0f:98:94:3f:ed:90: + 7e:64:0d:2d:d4:4d:78:dd:8f:10:8b:15:d0:65:5e:18:68:ea: + 7c:be:f5:3a:84:e5:23:aa:e1:d0:15:61:20:3c:5c:06:0a:33: + e2:39:a6:11:15:cf:66:74:10:80:9d:86:de:8c:3d:9b:78:0a: + cb:87:dd:fb:87:e6:1b:74:f9:81:57:ae:92:c8:d0:62:78:63: + 11:6d:34:2d:3f:f3:8b:82:e0:66:8f:0f:94:11:2e:62:06:6b: + 1d:5e:7f:49:90:c6:9b:c3:22:ab:f3:62:3d:90:61:aa:3c:96: + 28:55:b2:96:ec:ed:2a:f2:88:94:78:b9:12:ad:42:71:0e:ad: + d1:82:db:82:37:0b:e3:ed:f5:59:50:87:84:e6:1d:67:25:b5: + 79:c3:90:00:6d:59:5f:ee:72:92:e8:9e:4a:e5:07:2a:0a:19: + 8e:13:bd:2f:1f:9b:a4:c1:ca:e2:5d:1f:31:db:80:d2:52:55: + 67:b8:a6:53:19:18:63:23:5b:49:3d:d6:06:7f:57:e3:43:de: + 17:18:32:85:97:20:d5:dd:8a:7e:7c:3b:d0:cc:85:96:d5:96: + 3c:29:76:85 -----BEGIN CERTIFICATE----- MIIGpDCCBYygAwIBAgIBAjANBgkqhkiG9w0BAQsFADBWMQ8wDQYDVQQDDAZjYWNl cnQxCzAJBgNVBAYTAkZJMREwDwYDVQQIDAhIZWxzaW5raTERMA8GA1UEBwwISGVs -c2lua2kxEDAOBgNVBAoMB01hcmlhREIwHhcNMTcwNDI1MjA1MjMzWhcNMzcwNDIw -MjA1MjMzWjBYMQswCQYDVQQGEwJGSTERMA8GA1UECAwISGVsc2lua2kxETAPBgNV +c2lua2kxEDAOBgNVBAoMB01hcmlhREIwHhcNMTkwNDI0MTQyOTUwWhcNMzkwNDE5 +MTQyOTUwWjBYMQswCQYDVQQGEwJGSTERMA8GA1UECAwISGVsc2lua2kxETAPBgNV BAcMCEhlbHNpbmtpMRAwDgYDVQQKDAdNYXJpYURCMREwDwYDVQQDDAhzZXJ2ZXI4 -azCCBCIwDQYJKoZIhvcNAQEBBQADggQPADCCBAoCggQBALOngc+jmzxXKo7eEwim -FWpoCM6hoO/8MpVamrXMhLujFaD8KbtxDvNAIJc1kpKJNmpfvqUkWsgO91Oo4HQF -kDghpSVyK1ZwdKrWMCXgld09SkhLJaeoxOvl1hBPlUKRsMtoL7+WDwqbKwENA64/ -t372HsEUQgR/CSHoPofAs9fdT36VtoMzj8z0uxGOZl+0MiKLjjSTgg8C0W+Fsqd+ -NgzzDZFG+aWR3GBKDevlN+N22BO7VTMjTLOQ32q2gD32vZ2979ONepphrAI9ELXC -U9J+7hyQpbDo23GP01PkgLC2zLDy60bD2TxIAR06XNDyF5yajvwqNuccWUFmreHT -gtiV7q7cq3KUywuK3+9w9/nid3ZkZy0C3BrbAuleYz8+B+ll5AJ4YlXhUhhao5xW -3c3T9/JVRWIgzv1Bk7nCIJAjpEFPMFxeoJdvpB+HapeHcPnVVrdqzPEo0iY0V2Wc -LUFDi2y9FW/szj6fTS+mIdj3TdFjT/CeBMOCM1g0IEuBDUINRGJIG0zP4GnkyPic -mB90Nzo/I0A6iIDCnJu6arksOmemtlyD/ZM/blMZSOM9+vWOA0CP5q/F3qr4cHc2 -K24637zX9sdPAn+hrS886QhFL1ca8VucJwc6REM+BbFKG0KkkKvOS/fBm9fdbwUR -+eijoZlsLic9sVRv67Lo+OYSb4ppBczG9sQtsAa2IVAoUNyMsoxlztkrUbhiVnC0 -Rk3kTKGGMT3jB39z4wlu7qcpKoAjirYMIp5DHKmMRywCbRPviKfX0WDZayiAl4q3 -/2JrKFQNq2M6rFeeL5Ur9KA9oWCgVxoJI+78TZtFg/IKH7N3Dpggsxb8lwMw/Ks+ -fvw+dmTLS03JbI+qcOwDxYExQxGa/C26JZQLc37BOQHKaHAa76S63BPWNxcJDcqq -IZS7PkP9jIDmWP11I1rKHwsuNcLNdwxzsy+a5ANoWMg/83aNBVPSNNsJr3DtZwv/ -L2Q1LXEievLyK31tvoC9GDg3AWekX0gpUniftbiAcMoQauEnO8BhTpb46A9Csfq8 -Be8xkTirD6fvLIbBq4U2fBCdxwpr5isR3fpF59LDOsHNYCdoJteHSV/jfyYgH5mo -+QCmDdUTgW78J4oDWGsOOscgoVwk0QimWh7ngT0hBS5LXRgU8U+rXOWB2sEs9hL/ -JQmXHp1RbR9jLpztfYZFsDVz9p+CZbx/RojhoWChN1AmnNd289yUiW3XvqYXoStx -FDcXX+1aOZn8aa+7Y1XGYHtk2Lu3Sp+5qolLMB+c7yN6r34x3fvdCtUECoxXb2SA -6/PubDPScsIkaKJOmYgc9ztdEMxO6qXLAECKqWMuGJLrsSgF/hnqezL7Y1YsCyAB -kqMCAwEAAaN7MHkwCQYDVR0TBAIwADAsBglghkgBhvhCAQ0EHxYdT3BlblNTTCBH -ZW5lcmF0ZWQgQ2VydGlmaWNhdGUwHQYDVR0OBBYEFEM7JhWlYGI/ByqMjNr4dL42 -sjPkMB8GA1UdIwQYMBaAFBzHK6obsbsumvQPsYZgVzjCQQUSMA0GCSqGSIb3DQEB -CwUAA4IBAQBcx05W6yEb813EVvq/beEN+sywfBNYudRHs960rvJFAohlQ4nP6pzQ -6kVCNdLsvLRzA9uFe8fwaNfcK3BxY+0zaJ8p/2cKaTvEZXwlAM9/7qr+RBlw8nTb -2p9SkhoD5gpJhS4qAsGB1G3PmNHpai+7+qbVS1U4wqqM9dP55nTbANYp+dGceg6Y -xeWMFknYz+6gy8IsMc9iLLF/bWCwztUHRehEF3zEEvsAVyRX6Bd4Ox4NkapnmNDl -moZLiEovVV0uE+z1Sn3nE6dXA0Ev9mwIjljvsHp5MuO7S+tNQs1Cli1n9kzB9mL7 -wD4JaY82fvrIzf9yPt+S949Ez3f+bnTe +azCCBCIwDQYJKoZIhvcNAQEBBQADggQPADCCBAoCggQBAM1monBIpnsu70AQ8Amf +DujzO0MHLTm3VFWq2RYSgRiMEprO8Vya9V2WCToT7rTlqYgQmdl618bWan4mxR9j +g7wJGhzr8Que3c00hgZMg6rJRVq9LaKulcdPl5n0gL9+OGedz5QS5OlrAGI9sMPE +w5Ri6MV+VE6OoNmtjxhmQ5OqZsfzy0tHLKCUmRhA7YJTFarLZlYn7XiM7fMFiGvc +LtEZ965K1I1VgZnsRsIs25ogoT36VKil+2bdpAnu0lrS+V0HSy97L+itl9tSWUEo +pZCo0mPpuuaimNd6BLJjHTwJ6UyvuRzAPExKVYeepxaKDGtWhg/UMm5BBYkSVUUz +V95JOE42P9zblbAT2kuWodMV64CZX+nUny+6gv8engCoW2OnEkn/JdWwdjLiBAEh +XcgqEw/ygo/wzcpPAVqhn4chszOsDQ6D2D/325+d9rrBVDj+yaxZR5NRvag9NT/l +hU7xiwZylDqurb8yzBnjxtc6dh5aLRDLZ/C8hvwMiVx9xCtheYyC6qmEVaL9H6sR +oPqzJOuxLfYwVBn1caE0xjcgKTJWlylAY1yn/I5nmI+S7EkGBvtondYcniDanXQh +jOcLgXqsLv2gjHfparIgfXi4znq7TIx0FAcfXeiRbybEVs78nwNZhblek7kbNavK +PcIGtq1p4144hmbM5p5k9RF3vH1/nA7+AaXdhrKErvZszj0hGpqLpP6Rq+oYTuD6 ++IpTpbBFMLDCYM7gPvVvFxXfphUETTSS4Iht7qL0w3z9pHk100TFpJgUpaQuX2Tg +t0/asSJqLmtAlo1Pkq1VNqD+vHkmJVxlJzZbQO+w6KtiH59+p0fuMjf8AH6cA3aC +/Xt2mFjRqO2xoZkJkgyX2JJ+db871cMED7U+hmS/WlGaWAmud7/pZiuJ9qpyr9bO +MbMga5YyNdAOv6mUxrHEPvok7RkXR3Uj330CoOmTmTccvJ/ZuWGZ3ca/dC+jSGGJ +jDaru3o8XpWhg1X5bHLZaXpLwmaV3ihFyCbxHlk6Da/a8Ov9xOHoaMdijRbzc0F7 +ZZe2st6uB/XimPZ1AbOYKPoIESLfy8QswzwJk29K2W7NQiOnlgTYQHP9nQkzazhF +nvvD+JtUG/n4dmMKR9lUIJfCOmVfpvU2Hjr2/2pb4USwF5s/SVo7x4cmN/oOZlC4 +wDmLsog+iz7GEYrJCZZm9rDY0HE1GcNhfH4rpdAtDQ7qBNyU8PBvC/8Amff8Ric4 +QLcmdf+6/dD1g1K7mmR3f18eFY6GiRTGq9yoG/ke3FURzChqHO+SQjs4wlUZ2ttG +cNcXamZ+ukQ9OE+cnfqHIKHLhodizsU9rNd4sZM47qS+BGHKrgGRj8gUPHlh1oHz +5kcCAwEAAaN7MHkwCQYDVR0TBAIwADAsBglghkgBhvhCAQ0EHxYdT3BlblNTTCBH +ZW5lcmF0ZWQgQ2VydGlmaWNhdGUwHQYDVR0OBBYEFLkM8GAi1MW6KIjFXzHgpinM +4BXmMB8GA1UdIwQYMBaAFPMdoF9pM4qktHaXom6r/aC/8yzOMA0GCSqGSIb3DQEB +CwUAA4IBAQA9wTDAppEQezrW2S7inCMDSIhyOp4CTc3+tvcUdx8PmJQ/7ZB+ZA0t +1E143Y8QixXQZV4YaOp8vvU6hOUjquHQFWEgPFwGCjPiOaYRFc9mdBCAnYbejD2b +eArLh937h+YbdPmBV66SyNBieGMRbTQtP/OLguBmjw+UES5iBmsdXn9JkMabwyKr +82I9kGGqPJYoVbKW7O0q8oiUeLkSrUJxDq3RgtuCNwvj7fVZUIeE5h1nJbV5w5AA +bVlf7nKS6J5K5QcqChmOE70vH5ukwcriXR8x24DSUlVnuKZTGRhjI1tJPdYGf1fj +Q94XGDKFlyDV3Yp+fDvQzIWW1ZY8KXaF -----END CERTIFICATE----- diff --git a/mysql-test/std_data/server8k-key.pem b/mysql-test/std_data/server8k-key.pem index a383b3592..701539f7a 100644 --- a/mysql-test/std_data/server8k-key.pem +++ b/mysql-test/std_data/server8k-key.pem @@ -1,99 +1,99 @@ -----BEGIN RSA PRIVATE KEY----- -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 -----END RSA PRIVATE KEY----- diff --git a/mysql-test/std_data/serversan-cert.pem b/mysql-test/std_data/serversan-cert.pem index e47779f42..b6494c29b 100644 --- a/mysql-test/std_data/serversan-cert.pem +++ b/mysql-test/std_data/serversan-cert.pem @@ -5,56 +5,56 @@ Certificate: Signature Algorithm: sha256WithRSAEncryption Issuer: CN=cacert, C=FI, ST=Helsinki, L=Helsinki, O=MariaDB Validity - Not Before: Apr 25 20:52:33 2017 GMT - Not After : Apr 20 20:52:33 2037 GMT + Not Before: Apr 24 14:29:50 2019 GMT + Not After : Apr 19 14:29:50 2039 GMT Subject: C=FI, ST=Helsinki, L=Helsinki, O=MariaDB, CN=server Subject Public Key Info: Public Key Algorithm: rsaEncryption Public-Key: (1024 bit) Modulus: - 00:a7:74:d4:2b:80:cb:96:08:2a:b9:c2:87:18:0d: - 69:2b:da:cf:ef:21:cb:05:d4:80:2c:f3:85:bc:78: - b2:42:d9:9f:f1:dc:47:68:c5:af:5a:c9:01:f0:dd: - 91:cb:3a:b9:38:b2:36:6b:a3:66:ef:cd:44:0f:8f: - 39:57:60:ad:3b:44:33:51:c2:7f:cb:5c:8d:55:b8: - 1e:e8:80:e0:ed:9d:8d:10:7a:42:68:73:06:63:83: - ce:db:05:5b:e1:7b:f9:0e:87:20:38:b8:11:6a:b7: - 59:3d:4a:ca:cb:60:e6:e1:73:d9:a2:24:4a:70:93: - 5e:cf:d5:04:d5:ad:ac:96:a5 + 00:c4:ca:f5:53:66:e9:f7:48:39:dc:8c:d7:06:f4: + 03:3b:87:11:8e:8f:4d:a1:2b:b7:2a:38:37:6c:a2: + 34:2f:d4:9d:84:78:99:7f:6b:ec:c3:63:ea:e8:9c: + 57:af:a4:78:cf:59:5f:79:6b:29:11:2c:be:16:56: + 8f:7b:76:57:c9:36:d5:7f:58:10:f3:d1:c2:dc:09: + 17:f2:7b:fa:2d:71:c2:50:15:92:af:a0:58:32:f0: + 64:60:d3:9a:c6:3c:8a:31:e0:b6:b2:9f:29:7d:97: + 87:3c:62:bf:e6:8e:e7:2f:4a:ac:f7:fe:93:38:bc: + 86:d4:87:91:38:2d:ed:e2:0d Exponent: 65537 (0x10001) X509v3 extensions: X509v3 Subject Alternative Name: - DNS:localhost + IP Address:127.0.0.1, DNS:localhost Signature Algorithm: sha256WithRSAEncryption - 4b:78:d9:09:4c:25:cc:fb:17:8f:31:13:ac:d7:36:2d:5f:d4: - ce:94:84:d2:a7:fa:e2:1e:ae:b6:72:1f:01:56:0f:89:80:c0: - 01:ba:ad:d7:cb:24:c5:25:ec:f8:35:ac:52:1b:4f:af:7c:26: - 8d:d4:d4:91:05:21:b7:ba:3f:6b:1b:8d:1d:a5:6b:7e:7d:be: - 2f:6a:09:83:c2:c3:6c:2f:8a:31:fa:7b:36:3f:6d:e1:62:ca: - a0:3c:43:b8:53:5a:4a:b3:4d:7a:cb:9c:6e:db:a4:ce:a1:95: - 5e:26:d8:22:39:8c:34:0e:92:bd:87:a2:b1:7a:68:25:57:17: - b2:d8:43:3b:98:e4:80:6b:7d:3e:ab:32:82:6d:b8:80:45:83: - d6:55:f8:cd:31:74:17:8c:42:75:09:71:66:b9:e0:94:16:ca: - 1d:db:1e:89:12:a1:9f:00:cb:83:99:5d:5d:28:7a:df:2a:87: - b5:8d:f1:9c:b9:89:2a:0d:6c:af:61:00:41:cb:03:df:99:4a: - fe:93:81:88:ff:47:4e:2a:b5:2b:bf:85:0f:9a:21:7b:20:58: - 7a:1c:67:b5:8b:da:db:03:69:25:db:76:0e:f9:23:57:8d:8a: - 47:dc:15:16:7c:2d:66:8f:6a:10:f3:b2:ea:2e:31:c6:d4:2c: - 90:15:56:f4 + c5:83:b2:bb:a3:3b:a9:42:df:de:30:db:09:90:e1:3e:7a:19: + 09:4b:82:a3:1d:e8:23:3f:61:46:b7:98:b3:2e:90:61:7f:c5: + a1:36:a6:3e:b0:5b:3f:a1:23:70:7d:0f:71:5b:13:0f:be:73: + 1b:31:1a:b3:ce:f7:59:aa:b4:18:8d:37:e1:8c:07:af:10:18: + 4e:37:16:b2:67:73:5b:79:c6:30:16:ab:62:c5:c2:3e:72:06: + fd:b2:2a:f5:92:99:32:7e:ed:65:7e:bd:b2:74:9d:38:d4:d5: + 35:f8:06:dd:ac:85:75:e7:c2:6b:16:e8:2f:0f:c4:d3:b7:e7: + be:b6:cd:61:7b:29:e6:3a:c2:7c:38:46:fb:2c:a3:da:fe:84: + 5f:79:99:2f:80:3e:ec:09:88:f4:31:cd:5c:d1:32:a1:9f:1f: + 55:f2:9b:c6:4e:b2:26:04:9b:ee:04:42:d2:40:88:0e:c8:cf: + e0:6e:06:a1:6a:c8:1a:62:d0:7a:a4:19:4d:9c:e4:b6:57:e2: + 1d:19:57:54:58:1b:cc:bf:b8:29:e2:15:1e:f1:96:be:30:9e: + 4c:05:f9:90:e3:a1:7b:d7:e0:63:a6:d1:25:b1:80:81:f3:1b: + 55:4f:c1:64:9f:a1:06:01:8c:9a:15:64:b9:12:96:a8:22:4b: + 4a:d9:e3:04 -----BEGIN CERTIFICATE----- -MIICuzCCAaOgAwIBAgIBBDANBgkqhkiG9w0BAQsFADBWMQ8wDQYDVQQDDAZjYWNl +MIICwTCCAamgAwIBAgIBBDANBgkqhkiG9w0BAQsFADBWMQ8wDQYDVQQDDAZjYWNl cnQxCzAJBgNVBAYTAkZJMREwDwYDVQQIDAhIZWxzaW5raTERMA8GA1UEBwwISGVs -c2lua2kxEDAOBgNVBAoMB01hcmlhREIwHhcNMTcwNDI1MjA1MjMzWhcNMzcwNDIw -MjA1MjMzWjBWMQswCQYDVQQGEwJGSTERMA8GA1UECAwISGVsc2lua2kxETAPBgNV +c2lua2kxEDAOBgNVBAoMB01hcmlhREIwHhcNMTkwNDI0MTQyOTUwWhcNMzkwNDE5 +MTQyOTUwWjBWMQswCQYDVQQGEwJGSTERMA8GA1UECAwISGVsc2lua2kxETAPBgNV BAcMCEhlbHNpbmtpMRAwDgYDVQQKDAdNYXJpYURCMQ8wDQYDVQQDDAZzZXJ2ZXIw -gZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAKd01CuAy5YIKrnChxgNaSvaz+8h -ywXUgCzzhbx4skLZn/HcR2jFr1rJAfDdkcs6uTiyNmujZu/NRA+POVdgrTtEM1HC -f8tcjVW4HuiA4O2djRB6QmhzBmODztsFW+F7+Q6HIDi4EWq3WT1Kystg5uFz2aIk -SnCTXs/VBNWtrJalAgMBAAGjGDAWMBQGA1UdEQQNMAuCCWxvY2FsaG9zdDANBgkq -hkiG9w0BAQsFAAOCAQEAS3jZCUwlzPsXjzETrNc2LV/UzpSE0qf64h6utnIfAVYP -iYDAAbqt18skxSXs+DWsUhtPr3wmjdTUkQUht7o/axuNHaVrfn2+L2oJg8LDbC+K -Mfp7Nj9t4WLKoDxDuFNaSrNNesucbtukzqGVXibYIjmMNA6SvYeisXpoJVcXsthD -O5jkgGt9Pqsygm24gEWD1lX4zTF0F4xCdQlxZrnglBbKHdseiRKhnwDLg5ldXSh6 -3yqHtY3xnLmJKg1sr2EAQcsD35lK/pOBiP9HTiq1K7+FD5oheyBYehxntYva2wNp -Jdt2DvkjV42KR9wVFnwtZo9qEPOy6i4xxtQskBVW9A== +gZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAMTK9VNm6fdIOdyM1wb0AzuHEY6P +TaErtyo4N2yiNC/UnYR4mX9r7MNj6uicV6+keM9ZX3lrKREsvhZWj3t2V8k21X9Y +EPPRwtwJF/J7+i1xwlAVkq+gWDLwZGDTmsY8ijHgtrKfKX2Xhzxiv+aO5y9KrPf+ +kzi8htSHkTgt7eINAgMBAAGjHjAcMBoGA1UdEQQTMBGHBH8AAAGCCWxvY2FsaG9z +dDANBgkqhkiG9w0BAQsFAAOCAQEAxYOyu6M7qULf3jDbCZDhPnoZCUuCox3oIz9h +RreYsy6QYX/FoTamPrBbP6EjcH0PcVsTD75zGzEas873Waq0GI034YwHrxAYTjcW +smdzW3nGMBarYsXCPnIG/bIq9ZKZMn7tZX69snSdONTVNfgG3ayFdefCaxboLw/E +07fnvrbNYXsp5jrCfDhG+yyj2v6EX3mZL4A+7AmI9DHNXNEyoZ8fVfKbxk6yJgSb +7gRC0kCIDsjP4G4GoWrIGmLQeqQZTZzktlfiHRlXVFgbzL+4KeIVHvGWvjCeTAX5 +kOOhe9fgY6bRJbGAgfMbVU/BZJ+hBgGMmhVkuRKWqCJLStnjBA== -----END CERTIFICATE----- diff --git a/mysql-test/std_data/serversan-key.pem b/mysql-test/std_data/serversan-key.pem index 393c0bc9c..0fcb42b4f 100644 --- a/mysql-test/std_data/serversan-key.pem +++ b/mysql-test/std_data/serversan-key.pem @@ -1,16 +1,16 @@ -----BEGIN PRIVATE KEY----- -MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGBAKd01CuAy5YIKrnC -hxgNaSvaz+8hywXUgCzzhbx4skLZn/HcR2jFr1rJAfDdkcs6uTiyNmujZu/NRA+P -OVdgrTtEM1HCf8tcjVW4HuiA4O2djRB6QmhzBmODztsFW+F7+Q6HIDi4EWq3WT1K -ystg5uFz2aIkSnCTXs/VBNWtrJalAgMBAAECgYBReSgZmmpzLroK8zhjXXMEIUv1 -3w02YvOR61HwJxEkMVn+hNxBf50XoKDPHh5nMMUZbqvHpxLYLZilsVuGxcTCPVzw -YxTooPcJY8x61oUclI2Ls5czu/OfzoJhA9ESaFn6e4xReUFmNi8ygTMuPReZZ90T -ZvDikonKtCCk99MSaQJBANrmlPtfY57KJ18f1TqLvqy73I1vQjffSOrK3deYbvvB -jUJ79G9Wzj8Hje2y+XkkK+OIPcND1DnoTCTuqVazn+cCQQDD1jy8zrVg/JEPhQkS -BM7nvm4PIb0cgTPrOhsHDIF4hbaAZnA0N4ZEJ2q7YitXfOeR98x+aH/WJOrzzhmE -VXOTAkBQ4lK6b4zH57qUk5aeg3R5LxFX0XyOWJsA5uUB/PlFXUdtAZBYc6LR92Ci -LDeyY4M0F+t6c12/5+3615UKzGSRAkA+SGV6utcOqGTOJcZTt7nCFFtWbqmBZkoH -1qv/2udWWFhJj8rBoKMQC+UzAS69nVjcoI2l6kA17/nVXkfZQYAHAkEAmOHCZCVQ -9CCYTJICvoZR2euUYdnatLN8d2/ARWjzcRDTdS82P2oscATwAsvJxsphDmbOmVWP -Hfy1t8OOCHKYAQ== +MIICdQIBADANBgkqhkiG9w0BAQEFAASCAl8wggJbAgEAAoGBAMTK9VNm6fdIOdyM +1wb0AzuHEY6PTaErtyo4N2yiNC/UnYR4mX9r7MNj6uicV6+keM9ZX3lrKREsvhZW +j3t2V8k21X9YEPPRwtwJF/J7+i1xwlAVkq+gWDLwZGDTmsY8ijHgtrKfKX2Xhzxi +v+aO5y9KrPf+kzi8htSHkTgt7eINAgMBAAECgYAKFt29COm1494TkKT1lk0UIDim +NnKkcLlTUM6Go0pJqXzp7cTw43egDN9eTaWxO512A/8BGp1gZAra2lVA3zBg6Yqb +QYJwT2s/DsCwFU0msw1sUr5ynJ4A/jQCwR6RzaP2xoJTPaczpoE+RiOmgvQ14GF4 +sJEfAIJCw5OglICTgQJBAOK3yeiMSF6ic8OORkOHy8LdQAFGOsKwliQltxzvRXYZ +dWlHHAX+9l6rVC+o0rbooO4QEfJHn9ojjROr5+iIn2cCQQDeNbljgN+6K36r9Qmh +fuBy2Ot+wRO30T4ASFelgJ0aHYEngSGSRneMmbbgDFx7v7Y9k6yY9RPiSqYX+vCQ +425rAkAjfkpp0axyxFQDRX7Si6vmseSXTntch3C57/2e1ga12n57INrORYAkigYA +ABoc8IZhPrrQh04LRI2Nitgfm2P5AkBmqEFGk/JIKvHxdVoGrvv4cviQ7ZgzcsqH +DOTZBAsQVpMlcgXVcxKl9RnEdlF/pjkGR6QUYhzWjZAgQgFDnp6TAkBqIXYMvyp7 +JRfbnhze+UBgjeCoE/wTv/DiXL1yi4uVVVm8luToFv9DPAyvms/guJ7Ade5HDHye +M/LZbE37/NYP -----END PRIVATE KEY----- diff --git a/mysql-test/suite.pm b/mysql-test/suite.pm index 959329d16..f90679e6f 100644 --- a/mysql-test/suite.pm +++ b/mysql-test/suite.pm @@ -72,10 +72,15 @@ sub skip_combinations { unless $::mysqld_variables{'version-ssl-library'} =~ /OpenSSL (\S+)/ and $1 ge "1.0.1d"; + $skip{'t/ssl_7937.combinations'} = [ 'x509v3' ] unless $::mysqld_variables{'version-ssl-library'} =~ /OpenSSL (\S+)/ and $1 ge "1.0.2"; + $skip{'t/ssl_verify_ip.test'} = 'x509v3 support required' + unless $::mysqld_variables{'version-ssl-library'} =~ /OpenSSL (\S+)/ + and $1 ge "1.0.2"; + %skip; } diff --git a/mysql-test/suite/archive/archive_eits.result b/mysql-test/suite/archive/archive_eits.result new file mode 100644 index 000000000..e077c2e49 --- /dev/null +++ b/mysql-test/suite/archive/archive_eits.result @@ -0,0 +1,24 @@ +drop table if exists t1; +# +# MDEV-17297: stats.records=0 for a table of Archive engine when it has rows, when we run ANALYZE command +# +CREATE TABLE t1 (fid INTEGER PRIMARY KEY AUTO_INCREMENT, g POINT)engine=archive; +INSERT INTO t1 VALUES +(101, PointFromText('POINT(10 10)')), +(102, PointFromText('POINT(20 10)')), +(103, PointFromText('POINT(20 20)')), +(104, PointFromWKB(AsWKB(PointFromText('POINT(10 20)')))); +set @tmp1= @@optimizer_use_condition_selectivity; +set @tmp2= @@use_stat_tables; +set optimizer_use_condition_selectivity=4; +set use_stat_tables=PREFERABLY; +ANALYZE TABLE t1; +Table Op Msg_type Msg_text +test.t1 analyze status Engine-independent statistics collected +test.t1 analyze note The storage engine for the table doesn't support analyze +select * from mysql.table_stats where table_name='t1' and db_name=database(); +db_name table_name cardinality +test t1 4 +drop table t1; +set optimizer_use_condition_selectivity=@tmp1; +set use_stat_tables=@tmp2; diff --git a/mysql-test/suite/archive/archive_eits.test b/mysql-test/suite/archive/archive_eits.test new file mode 100644 index 000000000..04c4ccdb7 --- /dev/null +++ b/mysql-test/suite/archive/archive_eits.test @@ -0,0 +1,32 @@ +-- source include/have_archive.inc + +--disable_warnings +drop table if exists t1; +--enable_warnings + +--echo # +--echo # MDEV-17297: stats.records=0 for a table of Archive engine when it has rows, when we run ANALYZE command +--echo # + +CREATE TABLE t1 (fid INTEGER PRIMARY KEY AUTO_INCREMENT, g POINT)engine=archive; +INSERT INTO t1 VALUES +(101, PointFromText('POINT(10 10)')), +(102, PointFromText('POINT(20 10)')), +(103, PointFromText('POINT(20 20)')), +(104, PointFromWKB(AsWKB(PointFromText('POINT(10 20)')))); + +set @tmp1= @@optimizer_use_condition_selectivity; +set @tmp2= @@use_stat_tables; + +set optimizer_use_condition_selectivity=4; +set use_stat_tables=PREFERABLY; +ANALYZE TABLE t1; + +select * from mysql.table_stats where table_name='t1' and db_name=database(); + +drop table t1; + +set optimizer_use_condition_selectivity=@tmp1; +set use_stat_tables=@tmp2; + + diff --git a/mysql-test/suite/binlog/r/binlog_innodb_stm.result b/mysql-test/suite/binlog/r/binlog_innodb_stm.result new file mode 100644 index 000000000..829ed7d3c --- /dev/null +++ b/mysql-test/suite/binlog/r/binlog_innodb_stm.result @@ -0,0 +1,17 @@ +create table categories( +cat_id int not null primary key, +cat_name varchar(255) not null, +cat_description text +) engine=innodb; +create table products( +prd_id int not null auto_increment primary key, +prd_name varchar(355) not null, +prd_price decimal, +cat_id int not null, +foreign key fk_cat(cat_id) +references categories(cat_id) +on update cascade +) engine=innodb; +insert into categories values (1, 'drinks', 'drinks'); +update categories set cat_description=2 where cat_id=1; +drop table products, categories; diff --git a/mysql-test/suite/binlog/r/binlog_mdev717.result b/mysql-test/suite/binlog/r/binlog_mdev717.result index 82f8e5a6e..594032e7d 100644 --- a/mysql-test/suite/binlog/r/binlog_mdev717.result +++ b/mysql-test/suite/binlog/r/binlog_mdev717.result @@ -15,6 +15,8 @@ CREATE EVENT mysqltest.e1 ON SCHEDULE EVERY 15 MINUTE DO BEGIN END; ERROR 42000: Unknown database 'mysqltest' CREATE DATABASE mysqltest; CREATE EVENT mysqltest.e1 ON SCHEDULE EVERY 15 MINUTE DO BEGIN END; +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. SET DEBUG_SYNC= "after_wait_locked_schema_name SIGNAL locked WAIT_FOR release"; DROP DATABASE mysqltest;; SET DEBUG_SYNC= "now WAIT_FOR locked"; diff --git a/mysql-test/suite/binlog/r/binlog_mysqlbinlog2.result b/mysql-test/suite/binlog/r/binlog_mysqlbinlog2.result index 2719091f4..08c6651d6 100644 --- a/mysql-test/suite/binlog/r/binlog_mysqlbinlog2.result +++ b/mysql-test/suite/binlog/r/binlog_mysqlbinlog2.result @@ -1,8 +1,8 @@ set sql_mode=""; drop table if exists t1; -reset master; -set @a=UNIX_TIMESTAMP("2020-01-21 15:32:22"); +set @a=UNIX_TIMESTAMP("1970-01-21 15:32:22"); set timestamp=@a; +reset master; create table t1 (a int auto_increment not null primary key, b char(3)); insert into t1 values(null, "a"); insert into t1 values(null, "b"); @@ -22,7 +22,7 @@ insert into t1 values(null, "f"); DELIMITER /*!*/; ROLLBACK/*!*/; use `test`/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; SET @@session.pseudo_thread_id=999999999/*!*/; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/; SET @@session.sql_mode=0/*!*/; @@ -36,46 +36,46 @@ create table t1 (a int auto_increment not null primary key, b char(3)) BEGIN /*!*/; SET INSERT_ID=1/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; insert into t1 values(null, "a") /*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=2/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; insert into t1 values(null, "b") /*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=3/*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; insert into t1 values(null, "c") /*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=4/*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; insert into t1 values(null, "d") /*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=5/*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; insert into t1 values(null, "e") /*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; COMMIT /*!*/; DELIMITER ; @@ -94,7 +94,7 @@ BEGIN /*!*/; SET INSERT_ID=1/*!*/; use `test`/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; SET @@session.pseudo_thread_id=999999999/*!*/; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/; SET @@session.sql_mode=0/*!*/; @@ -105,43 +105,43 @@ SET @@session.lc_time_names=0/*!*/; SET @@session.collation_database=DEFAULT/*!*/; insert into t1 values(null, "a") /*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=2/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; insert into t1 values(null, "b") /*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=3/*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; insert into t1 values(null, "c") /*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=4/*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; insert into t1 values(null, "d") /*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=5/*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; insert into t1 values(null, "e") /*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; COMMIT /*!*/; DELIMITER ; @@ -160,7 +160,7 @@ BEGIN /*!*/; SET INSERT_ID=3/*!*/; use `test`/*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; SET @@session.pseudo_thread_id=999999999/*!*/; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/; SET @@session.sql_mode=0/*!*/; @@ -171,25 +171,25 @@ SET @@session.lc_time_names=0/*!*/; SET @@session.collation_database=DEFAULT/*!*/; insert into t1 values(null, "c") /*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=4/*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; insert into t1 values(null, "d") /*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=5/*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; insert into t1 values(null, "e") /*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; COMMIT /*!*/; DELIMITER ; @@ -205,7 +205,7 @@ ROLLBACK /* added by mysqlbinlog */; DELIMITER /*!*/; ROLLBACK/*!*/; use `test`/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; SET @@session.pseudo_thread_id=999999999/*!*/; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/; SET @@session.sql_mode=0/*!*/; @@ -219,19 +219,19 @@ create table t1 (a int auto_increment not null primary key, b char(3)) BEGIN /*!*/; SET INSERT_ID=1/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; insert into t1 values(null, "a") /*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=2/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; insert into t1 values(null, "b") /*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; COMMIT /*!*/; DELIMITER ; @@ -250,7 +250,7 @@ BEGIN /*!*/; SET INSERT_ID=3/*!*/; use `test`/*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; SET @@session.pseudo_thread_id=999999999/*!*/; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/; SET @@session.sql_mode=0/*!*/; @@ -277,7 +277,7 @@ BEGIN /*!*/; SET INSERT_ID=3/*!*/; use `test`/*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; SET @@session.pseudo_thread_id=999999999/*!*/; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/; SET @@session.sql_mode=0/*!*/; @@ -288,25 +288,25 @@ SET @@session.lc_time_names=0/*!*/; SET @@session.collation_database=DEFAULT/*!*/; insert into t1 values(null, "c") /*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=4/*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; insert into t1 values(null, "d") /*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=5/*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; insert into t1 values(null, "e") /*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; COMMIT /*!*/; DELIMITER ; @@ -322,7 +322,7 @@ ROLLBACK /* added by mysqlbinlog */; DELIMITER /*!*/; ROLLBACK/*!*/; use `test`/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; SET @@session.pseudo_thread_id=999999999/*!*/; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/; SET @@session.sql_mode=0/*!*/; @@ -336,19 +336,19 @@ create table t1 (a int auto_increment not null primary key, b char(3)) BEGIN /*!*/; SET INSERT_ID=1/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; insert into t1 values(null, "a") /*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=2/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; insert into t1 values(null, "b") /*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; COMMIT /*!*/; DELIMITER ; @@ -365,7 +365,7 @@ flush logs; DELIMITER /*!*/; ROLLBACK/*!*/; use `test`/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; SET @@session.pseudo_thread_id=999999999/*!*/; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/; SET @@session.sql_mode=0/*!*/; @@ -379,46 +379,46 @@ create table t1 (a int auto_increment not null primary key, b char(3)) BEGIN /*!*/; SET INSERT_ID=1/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; insert into t1 values(null, "a") /*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=2/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; insert into t1 values(null, "b") /*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=3/*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; insert into t1 values(null, "c") /*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=4/*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; insert into t1 values(null, "d") /*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=5/*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; insert into t1 values(null, "e") /*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; COMMIT /*!*/; DELIMITER ; @@ -427,7 +427,7 @@ BEGIN /*!*/; SET INSERT_ID=6/*!*/; use `test`/*!*/; -SET TIMESTAMP=1579609943/*!*/; +SET TIMESTAMP=1773143/*!*/; SET @@session.pseudo_thread_id=999999999/*!*/; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/; SET @@session.sql_mode=0/*!*/; @@ -438,7 +438,7 @@ SET @@session.lc_time_names=0/*!*/; SET @@session.collation_database=DEFAULT/*!*/; insert into t1 values(null, "f") /*!*/; -SET TIMESTAMP=1579609943/*!*/; +SET TIMESTAMP=1773143/*!*/; COMMIT /*!*/; DELIMITER ; @@ -457,7 +457,7 @@ BEGIN /*!*/; SET INSERT_ID=1/*!*/; use `test`/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; SET @@session.pseudo_thread_id=999999999/*!*/; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/; SET @@session.sql_mode=0/*!*/; @@ -468,43 +468,43 @@ SET @@session.lc_time_names=0/*!*/; SET @@session.collation_database=DEFAULT/*!*/; insert into t1 values(null, "a") /*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=2/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; insert into t1 values(null, "b") /*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=3/*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; insert into t1 values(null, "c") /*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=4/*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; insert into t1 values(null, "d") /*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=5/*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; insert into t1 values(null, "e") /*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; COMMIT /*!*/; DELIMITER ; @@ -513,7 +513,7 @@ BEGIN /*!*/; SET INSERT_ID=6/*!*/; use `test`/*!*/; -SET TIMESTAMP=1579609943/*!*/; +SET TIMESTAMP=1773143/*!*/; SET @@session.pseudo_thread_id=999999999/*!*/; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/; SET @@session.sql_mode=0/*!*/; @@ -524,7 +524,7 @@ SET @@session.lc_time_names=0/*!*/; SET @@session.collation_database=DEFAULT/*!*/; insert into t1 values(null, "f") /*!*/; -SET TIMESTAMP=1579609943/*!*/; +SET TIMESTAMP=1773143/*!*/; COMMIT /*!*/; DELIMITER ; @@ -543,7 +543,7 @@ BEGIN /*!*/; SET INSERT_ID=3/*!*/; use `test`/*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; SET @@session.pseudo_thread_id=999999999/*!*/; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/; SET @@session.sql_mode=0/*!*/; @@ -554,25 +554,25 @@ SET @@session.lc_time_names=0/*!*/; SET @@session.collation_database=DEFAULT/*!*/; insert into t1 values(null, "c") /*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=4/*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; insert into t1 values(null, "d") /*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=5/*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; insert into t1 values(null, "e") /*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; COMMIT /*!*/; DELIMITER ; @@ -581,7 +581,7 @@ BEGIN /*!*/; SET INSERT_ID=6/*!*/; use `test`/*!*/; -SET TIMESTAMP=1579609943/*!*/; +SET TIMESTAMP=1773143/*!*/; SET @@session.pseudo_thread_id=999999999/*!*/; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/; SET @@session.sql_mode=0/*!*/; @@ -592,7 +592,7 @@ SET @@session.lc_time_names=0/*!*/; SET @@session.collation_database=DEFAULT/*!*/; insert into t1 values(null, "f") /*!*/; -SET TIMESTAMP=1579609943/*!*/; +SET TIMESTAMP=1773143/*!*/; COMMIT /*!*/; DELIMITER ; @@ -608,7 +608,7 @@ ROLLBACK /* added by mysqlbinlog */; DELIMITER /*!*/; ROLLBACK/*!*/; use `test`/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; SET @@session.pseudo_thread_id=999999999/*!*/; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/; SET @@session.sql_mode=0/*!*/; @@ -622,46 +622,46 @@ create table t1 (a int auto_increment not null primary key, b char(3)) BEGIN /*!*/; SET INSERT_ID=1/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; insert into t1 values(null, "a") /*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=2/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; insert into t1 values(null, "b") /*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=3/*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; insert into t1 values(null, "c") /*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=4/*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; insert into t1 values(null, "d") /*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=5/*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; insert into t1 values(null, "e") /*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; COMMIT /*!*/; DELIMITER ; @@ -684,7 +684,7 @@ BEGIN /*!*/; SET INSERT_ID=3/*!*/; use `test`/*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; SET @@session.pseudo_thread_id=999999999/*!*/; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/; SET @@session.sql_mode=0/*!*/; @@ -695,25 +695,25 @@ SET @@session.lc_time_names=0/*!*/; SET @@session.collation_database=DEFAULT/*!*/; insert into t1 values(null, "c") /*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=4/*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; insert into t1 values(null, "d") /*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=5/*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; insert into t1 values(null, "e") /*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; COMMIT /*!*/; DELIMITER ; @@ -722,7 +722,7 @@ BEGIN /*!*/; SET INSERT_ID=6/*!*/; use `test`/*!*/; -SET TIMESTAMP=1579609943/*!*/; +SET TIMESTAMP=1773143/*!*/; SET @@session.pseudo_thread_id=999999999/*!*/; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/; SET @@session.sql_mode=0/*!*/; @@ -733,7 +733,7 @@ SET @@session.lc_time_names=0/*!*/; SET @@session.collation_database=DEFAULT/*!*/; insert into t1 values(null, "f") /*!*/; -SET TIMESTAMP=1579609943/*!*/; +SET TIMESTAMP=1773143/*!*/; COMMIT /*!*/; DELIMITER ; @@ -749,7 +749,7 @@ ROLLBACK /* added by mysqlbinlog */; DELIMITER /*!*/; ROLLBACK/*!*/; use `test`/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; SET @@session.pseudo_thread_id=999999999/*!*/; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/; SET @@session.sql_mode=0/*!*/; @@ -763,19 +763,19 @@ create table t1 (a int auto_increment not null primary key, b char(3)) BEGIN /*!*/; SET INSERT_ID=1/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; insert into t1 values(null, "a") /*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=2/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; insert into t1 values(null, "b") /*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; COMMIT /*!*/; DELIMITER ; @@ -791,7 +791,7 @@ ROLLBACK /* added by mysqlbinlog */; DELIMITER /*!*/; ROLLBACK/*!*/; use `test`/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; SET @@session.pseudo_thread_id=999999999/*!*/; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/; SET @@session.sql_mode=0/*!*/; @@ -805,46 +805,46 @@ create table t1 (a int auto_increment not null primary key, b char(3)) BEGIN /*!*/; SET INSERT_ID=1/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; insert into t1 values(null, "a") /*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=2/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; insert into t1 values(null, "b") /*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=3/*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; insert into t1 values(null, "c") /*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=4/*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; insert into t1 values(null, "d") /*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=5/*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; insert into t1 values(null, "e") /*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; COMMIT /*!*/; DELIMITER ; @@ -863,7 +863,7 @@ BEGIN /*!*/; SET INSERT_ID=1/*!*/; use `test`/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; SET @@session.pseudo_thread_id=999999999/*!*/; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/; SET @@session.sql_mode=0/*!*/; @@ -874,43 +874,43 @@ SET @@session.lc_time_names=0/*!*/; SET @@session.collation_database=DEFAULT/*!*/; insert into t1 values(null, "a") /*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=2/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; insert into t1 values(null, "b") /*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=3/*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; insert into t1 values(null, "c") /*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=4/*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; insert into t1 values(null, "d") /*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=5/*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; insert into t1 values(null, "e") /*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; COMMIT /*!*/; DELIMITER ; @@ -928,7 +928,7 @@ BEGIN /*!*/; SET INSERT_ID=3/*!*/; use `test`/*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; SET @@session.pseudo_thread_id=999999999/*!*/; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/; SET @@session.sql_mode=0/*!*/; @@ -939,25 +939,25 @@ SET @@session.lc_time_names=0/*!*/; SET @@session.collation_database=DEFAULT/*!*/; insert into t1 values(null, "c") /*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=4/*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; insert into t1 values(null, "d") /*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=5/*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; insert into t1 values(null, "e") /*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; COMMIT /*!*/; DELIMITER ; @@ -973,7 +973,7 @@ ROLLBACK /* added by mysqlbinlog */; DELIMITER /*!*/; ROLLBACK/*!*/; use `test`/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; SET @@session.pseudo_thread_id=999999999/*!*/; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/; SET @@session.sql_mode=0/*!*/; @@ -987,19 +987,19 @@ create table t1 (a int auto_increment not null primary key, b char(3)) BEGIN /*!*/; SET INSERT_ID=1/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; insert into t1 values(null, "a") /*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=2/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; insert into t1 values(null, "b") /*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; COMMIT /*!*/; DELIMITER ; @@ -1017,7 +1017,7 @@ BEGIN /*!*/; SET INSERT_ID=3/*!*/; use `test`/*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; SET @@session.pseudo_thread_id=999999999/*!*/; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/; SET @@session.sql_mode=0/*!*/; @@ -1044,7 +1044,7 @@ BEGIN /*!*/; SET INSERT_ID=3/*!*/; use `test`/*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; SET @@session.pseudo_thread_id=999999999/*!*/; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/; SET @@session.sql_mode=0/*!*/; @@ -1055,25 +1055,25 @@ SET @@session.lc_time_names=0/*!*/; SET @@session.collation_database=DEFAULT/*!*/; insert into t1 values(null, "c") /*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=4/*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; insert into t1 values(null, "d") /*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=5/*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; insert into t1 values(null, "e") /*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; COMMIT /*!*/; DELIMITER ; @@ -1089,7 +1089,7 @@ ROLLBACK /* added by mysqlbinlog */; DELIMITER /*!*/; ROLLBACK/*!*/; use `test`/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; SET @@session.pseudo_thread_id=999999999/*!*/; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/; SET @@session.sql_mode=0/*!*/; @@ -1103,19 +1103,19 @@ create table t1 (a int auto_increment not null primary key, b char(3)) BEGIN /*!*/; SET INSERT_ID=1/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; insert into t1 values(null, "a") /*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=2/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; insert into t1 values(null, "b") /*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; COMMIT /*!*/; DELIMITER ; @@ -1131,7 +1131,7 @@ ROLLBACK /* added by mysqlbinlog */; DELIMITER /*!*/; ROLLBACK/*!*/; use `test`/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; SET @@session.pseudo_thread_id=999999999/*!*/; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/; SET @@session.sql_mode=0/*!*/; @@ -1145,46 +1145,46 @@ create table t1 (a int auto_increment not null primary key, b char(3)) BEGIN /*!*/; SET INSERT_ID=1/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; insert into t1 values(null, "a") /*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=2/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; insert into t1 values(null, "b") /*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=3/*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; insert into t1 values(null, "c") /*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=4/*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; insert into t1 values(null, "d") /*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=5/*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; insert into t1 values(null, "e") /*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; COMMIT /*!*/; DELIMITER ; @@ -1193,7 +1193,7 @@ BEGIN /*!*/; SET INSERT_ID=6/*!*/; use `test`/*!*/; -SET TIMESTAMP=1579609943/*!*/; +SET TIMESTAMP=1773143/*!*/; SET @@session.pseudo_thread_id=999999999/*!*/; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/; SET @@session.sql_mode=0/*!*/; @@ -1204,7 +1204,7 @@ SET @@session.lc_time_names=0/*!*/; SET @@session.collation_database=DEFAULT/*!*/; insert into t1 values(null, "f") /*!*/; -SET TIMESTAMP=1579609943/*!*/; +SET TIMESTAMP=1773143/*!*/; COMMIT /*!*/; DELIMITER ; @@ -1223,7 +1223,7 @@ BEGIN /*!*/; SET INSERT_ID=1/*!*/; use `test`/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; SET @@session.pseudo_thread_id=999999999/*!*/; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/; SET @@session.sql_mode=0/*!*/; @@ -1234,43 +1234,43 @@ SET @@session.lc_time_names=0/*!*/; SET @@session.collation_database=DEFAULT/*!*/; insert into t1 values(null, "a") /*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=2/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; insert into t1 values(null, "b") /*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=3/*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; insert into t1 values(null, "c") /*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=4/*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; insert into t1 values(null, "d") /*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=5/*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; insert into t1 values(null, "e") /*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; COMMIT /*!*/; DELIMITER ; @@ -1279,7 +1279,7 @@ BEGIN /*!*/; SET INSERT_ID=6/*!*/; use `test`/*!*/; -SET TIMESTAMP=1579609943/*!*/; +SET TIMESTAMP=1773143/*!*/; SET @@session.pseudo_thread_id=999999999/*!*/; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/; SET @@session.sql_mode=0/*!*/; @@ -1290,7 +1290,7 @@ SET @@session.lc_time_names=0/*!*/; SET @@session.collation_database=DEFAULT/*!*/; insert into t1 values(null, "f") /*!*/; -SET TIMESTAMP=1579609943/*!*/; +SET TIMESTAMP=1773143/*!*/; COMMIT /*!*/; DELIMITER ; @@ -1308,7 +1308,7 @@ BEGIN /*!*/; SET INSERT_ID=3/*!*/; use `test`/*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; SET @@session.pseudo_thread_id=999999999/*!*/; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/; SET @@session.sql_mode=0/*!*/; @@ -1319,25 +1319,25 @@ SET @@session.lc_time_names=0/*!*/; SET @@session.collation_database=DEFAULT/*!*/; insert into t1 values(null, "c") /*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=4/*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; insert into t1 values(null, "d") /*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=5/*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; insert into t1 values(null, "e") /*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; COMMIT /*!*/; DELIMITER ; @@ -1346,7 +1346,7 @@ BEGIN /*!*/; SET INSERT_ID=6/*!*/; use `test`/*!*/; -SET TIMESTAMP=1579609943/*!*/; +SET TIMESTAMP=1773143/*!*/; SET @@session.pseudo_thread_id=999999999/*!*/; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/; SET @@session.sql_mode=0/*!*/; @@ -1357,7 +1357,7 @@ SET @@session.lc_time_names=0/*!*/; SET @@session.collation_database=DEFAULT/*!*/; insert into t1 values(null, "f") /*!*/; -SET TIMESTAMP=1579609943/*!*/; +SET TIMESTAMP=1773143/*!*/; COMMIT /*!*/; DELIMITER ; @@ -1373,7 +1373,7 @@ ROLLBACK /* added by mysqlbinlog */; DELIMITER /*!*/; ROLLBACK/*!*/; use `test`/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; SET @@session.pseudo_thread_id=999999999/*!*/; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/; SET @@session.sql_mode=0/*!*/; @@ -1387,46 +1387,46 @@ create table t1 (a int auto_increment not null primary key, b char(3)) BEGIN /*!*/; SET INSERT_ID=1/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; insert into t1 values(null, "a") /*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=2/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; insert into t1 values(null, "b") /*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=3/*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; insert into t1 values(null, "c") /*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=4/*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; insert into t1 values(null, "d") /*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=5/*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; insert into t1 values(null, "e") /*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; COMMIT /*!*/; DELIMITER ; @@ -1447,7 +1447,7 @@ BEGIN /*!*/; SET INSERT_ID=3/*!*/; use `test`/*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; SET @@session.pseudo_thread_id=999999999/*!*/; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/; SET @@session.sql_mode=0/*!*/; @@ -1458,25 +1458,25 @@ SET @@session.lc_time_names=0/*!*/; SET @@session.collation_database=DEFAULT/*!*/; insert into t1 values(null, "c") /*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=4/*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; insert into t1 values(null, "d") /*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=5/*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; insert into t1 values(null, "e") /*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; COMMIT /*!*/; DELIMITER ; @@ -1485,7 +1485,7 @@ BEGIN /*!*/; SET INSERT_ID=6/*!*/; use `test`/*!*/; -SET TIMESTAMP=1579609943/*!*/; +SET TIMESTAMP=1773143/*!*/; SET @@session.pseudo_thread_id=999999999/*!*/; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/; SET @@session.sql_mode=0/*!*/; @@ -1496,7 +1496,7 @@ SET @@session.lc_time_names=0/*!*/; SET @@session.collation_database=DEFAULT/*!*/; insert into t1 values(null, "f") /*!*/; -SET TIMESTAMP=1579609943/*!*/; +SET TIMESTAMP=1773143/*!*/; COMMIT /*!*/; DELIMITER ; @@ -1512,7 +1512,7 @@ ROLLBACK /* added by mysqlbinlog */; DELIMITER /*!*/; ROLLBACK/*!*/; use `test`/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; SET @@session.pseudo_thread_id=999999999/*!*/; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/; SET @@session.sql_mode=0/*!*/; @@ -1526,19 +1526,19 @@ create table t1 (a int auto_increment not null primary key, b char(3)) BEGIN /*!*/; SET INSERT_ID=1/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; insert into t1 values(null, "a") /*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=2/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; insert into t1 values(null, "b") /*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; COMMIT /*!*/; DELIMITER ; @@ -1554,7 +1554,7 @@ ROLLBACK /* added by mysqlbinlog */; DELIMITER /*!*/; ROLLBACK/*!*/; use `test`/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; SET @@session.pseudo_thread_id=999999999/*!*/; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/; SET @@session.sql_mode=0/*!*/; @@ -1568,55 +1568,55 @@ create table t1 (a int auto_increment not null primary key, b char(3)) BEGIN /*!*/; SET INSERT_ID=1/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; insert into t1 values(null, "a") /*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=2/*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; insert into t1 values(null, "b") /*!*/; -SET TIMESTAMP=1579609942/*!*/; +SET TIMESTAMP=1773142/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=3/*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; insert into t1 values(null, "c") /*!*/; -SET TIMESTAMP=1579609944/*!*/; +SET TIMESTAMP=1773144/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=4/*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; insert into t1 values(null, "d") /*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=5/*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; insert into t1 values(null, "e") /*!*/; -SET TIMESTAMP=1579609946/*!*/; +SET TIMESTAMP=1773146/*!*/; COMMIT /*!*/; BEGIN /*!*/; SET INSERT_ID=6/*!*/; -SET TIMESTAMP=1579609943/*!*/; +SET TIMESTAMP=1773143/*!*/; insert into t1 values(null, "f") /*!*/; -SET TIMESTAMP=1579609943/*!*/; +SET TIMESTAMP=1773143/*!*/; COMMIT /*!*/; DELIMITER ; diff --git a/mysql-test/suite/binlog/r/binlog_sql_mode.result b/mysql-test/suite/binlog/r/binlog_sql_mode.result index 1aea77c4a..27ba30b5e 100644 --- a/mysql-test/suite/binlog/r/binlog_sql_mode.result +++ b/mysql-test/suite/binlog/r/binlog_sql_mode.result @@ -21,6 +21,8 @@ DO BEGIN UPDATE t1 SET id = id +1; END;| +Warnings: +Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it. Check Result select (@a:=load_file("MYSQLTEST_VARDIR/tmp/mysqlbinlog_bug39526.binlog")) diff --git a/mysql-test/suite/binlog/t/binlog_innodb_stm.test b/mysql-test/suite/binlog/t/binlog_innodb_stm.test new file mode 100644 index 000000000..4dfa7a765 --- /dev/null +++ b/mysql-test/suite/binlog/t/binlog_innodb_stm.test @@ -0,0 +1,26 @@ +source include/have_innodb.inc; +source include/have_binlog_format_statement.inc; + +# +# MDEV-18466 Unsafe to log updates on tables referenced by foreign keys with triggers in statement format +# + +create table categories( + cat_id int not null primary key, + cat_name varchar(255) not null, + cat_description text +) engine=innodb; + +create table products( + prd_id int not null auto_increment primary key, + prd_name varchar(355) not null, + prd_price decimal, + cat_id int not null, + foreign key fk_cat(cat_id) + references categories(cat_id) + on update cascade +) engine=innodb; + +insert into categories values (1, 'drinks', 'drinks'); +update categories set cat_description=2 where cat_id=1; +drop table products, categories; diff --git a/mysql-test/suite/binlog/t/binlog_mysqlbinlog2.test b/mysql-test/suite/binlog/t/binlog_mysqlbinlog2.test index 76d6abf4d..66197c530 100644 --- a/mysql-test/suite/binlog/t/binlog_mysqlbinlog2.test +++ b/mysql-test/suite/binlog/t/binlog_mysqlbinlog2.test @@ -9,15 +9,15 @@ set sql_mode=""; --disable_warnings drop table if exists t1; --enable_warnings -reset master; # We need this for getting fixed timestamps inside of this test. -# I use a date in the future to keep a growing timestamp along the +# I use a date in the past to keep a growing timestamp along the # binlog (including the Start_log_event). This test will work # unchanged everywhere, because mysql-test-run has fixed TZ, which it # exports (so mysqlbinlog has same fixed TZ). -set @a=UNIX_TIMESTAMP("2020-01-21 15:32:22"); +set @a=UNIX_TIMESTAMP("1970-01-21 15:32:22"); set timestamp=@a; +reset master; create table t1 (a int auto_increment not null primary key, b char(3)); insert into t1 values(null, "a"); insert into t1 values(null, "b"); @@ -71,11 +71,11 @@ let $stop_pos= `select @binlog_start_pos + 857`; --disable_query_log select "--- start-datetime --" as ""; --enable_query_log ---exec $MYSQL_BINLOG --short-form "--start-datetime=2020-01-21 15:32:24" $MYSQLD_DATADIR/master-bin.000001 +--exec $MYSQL_BINLOG --short-form "--start-datetime=1970-01-21 15:32:24" $MYSQLD_DATADIR/master-bin.000001 --disable_query_log select "--- stop-datetime --" as ""; --enable_query_log ---exec $MYSQL_BINLOG --short-form "--stop-datetime=2020-01-21 15:32:24" $MYSQLD_DATADIR/master-bin.000001 +--exec $MYSQL_BINLOG --short-form "--stop-datetime=1970-01-21 15:32:24" $MYSQLD_DATADIR/master-bin.000001 --disable_query_log select "--- Local with 2 binlogs on command line --" as ""; @@ -103,11 +103,11 @@ let $stop_pos= `select @binlog_start_pos + 134`; --disable_query_log select "--- start-datetime --" as ""; --enable_query_log ---exec $MYSQL_BINLOG --short-form "--start-datetime=2020-01-21 15:32:24" $MYSQLD_DATADIR/master-bin.000001 $MYSQLD_DATADIR/master-bin.000002 +--exec $MYSQL_BINLOG --short-form "--start-datetime=1970-01-21 15:32:24" $MYSQLD_DATADIR/master-bin.000001 $MYSQLD_DATADIR/master-bin.000002 --disable_query_log select "--- stop-datetime --" as ""; --enable_query_log ---exec $MYSQL_BINLOG --short-form "--stop-datetime=2020-01-21 15:32:24" $MYSQLD_DATADIR/master-bin.000001 $MYSQLD_DATADIR/master-bin.000002 +--exec $MYSQL_BINLOG --short-form "--stop-datetime=1970-01-21 15:32:24" $MYSQLD_DATADIR/master-bin.000001 $MYSQLD_DATADIR/master-bin.000002 --disable_query_log select "--- Remote --" as ""; @@ -138,11 +138,11 @@ let $stop_pos= `select @binlog_start_pos + 812`; --disable_query_log select "--- start-datetime --" as ""; --enable_query_log ---exec $MYSQL_BINLOG --short-form "--start-datetime=2020-01-21 15:32:24" --read-from-remote-server --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000001 +--exec $MYSQL_BINLOG --short-form "--start-datetime=1970-01-21 15:32:24" --read-from-remote-server --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000001 --disable_query_log select "--- stop-datetime --" as ""; --enable_query_log ---exec $MYSQL_BINLOG --short-form "--stop-datetime=2020-01-21 15:32:24" --read-from-remote-server --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000001 +--exec $MYSQL_BINLOG --short-form "--stop-datetime=1970-01-21 15:32:24" --read-from-remote-server --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000001 --disable_query_log select "--- Remote with 2 binlogs on command line --" as ""; @@ -167,11 +167,11 @@ let $stop_pos= `select @binlog_start_pos + 109`; --disable_query_log select "--- start-datetime --" as ""; --enable_query_log ---exec $MYSQL_BINLOG --short-form "--start-datetime=20200121153224" --read-from-remote-server --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000001 master-bin.000002 +--exec $MYSQL_BINLOG --short-form "--start-datetime=19700121153224" --read-from-remote-server --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000001 master-bin.000002 --disable_query_log select "--- stop-datetime --" as ""; --enable_query_log ---exec $MYSQL_BINLOG --short-form "--stop-datetime=2020/01/21 15@32@24" --read-from-remote-server --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000001 master-bin.000002 +--exec $MYSQL_BINLOG --short-form "--stop-datetime=1970/01/21 15@32@24" --read-from-remote-server --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000001 master-bin.000002 --disable_query_log select "--- to-last-log --" as ""; diff --git a/mysql-test/suite/encryption/r/innodb-checksum-algorithm,32k.rdiff b/mysql-test/suite/encryption/r/innodb-checksum-algorithm,32k.rdiff index cd66df744..d963cde13 100644 --- a/mysql-test/suite/encryption/r/innodb-checksum-algorithm,32k.rdiff +++ b/mysql-test/suite/encryption/r/innodb-checksum-algorithm,32k.rdiff @@ -1,5 +1,5 @@ --- suite/encryption/r/innodb-checksum-algorithm.result -+++ suite/encryption/r/innodb-checksum-algorithm,32k.reject ++++ suite/encryption/r/innodb-checksum-algorithm.result @@ -13,9 +13,9 @@ SET GLOBAL innodb_default_encryption_key_id=4; SET GLOBAL innodb_checksum_algorithm=crc32; @@ -9,10 +9,10 @@ create table tc_crc32(a serial, b blob, index(b(10))) engine=innodb -ROW_FORMAT=COMPRESSED encrypted=no; +ROW_FORMAT=DYNAMIC encrypted=no; + Warnings: + Warning 140 InnoDB: ENCRYPTED=NO implies ENCRYPTION_KEY_ID=1 create table te_crc32(a serial, b blob, index(b(10))) engine=innodb - encrypted=yes; - create table t_crc32(a serial, b blob, index(b(10))) engine=innodb -@@ -222,9 +222,9 @@ +@@ -153,9 +153,9 @@ t_crc32, tpe_crc32, tp_crc32; SET GLOBAL innodb_checksum_algorithm=innodb; create table tce_innodb(a serial, b blob, index(b(10))) engine=innodb @@ -21,10 +21,10 @@ create table tc_innodb(a serial, b blob, index(b(10))) engine=innodb -ROW_FORMAT=COMPRESSED encrypted=no; +ROW_FORMAT=DYNAMIC encrypted=no; + Warnings: + Warning 140 InnoDB: ENCRYPTED=NO implies ENCRYPTION_KEY_ID=1 create table te_innodb(a serial, b blob, index(b(10))) engine=innodb - encrypted=yes; - create table t_innodb(a serial, b blob, index(b(10))) engine=innodb -@@ -431,9 +431,9 @@ +@@ -293,9 +293,9 @@ t_innodb, tpe_innodb, tp_innodb; SET GLOBAL innodb_checksum_algorithm=none; create table tce_none(a serial, b blob, index(b(10))) engine=innodb @@ -33,6 +33,6 @@ create table tc_none(a serial, b blob, index(b(10))) engine=innodb -ROW_FORMAT=COMPRESSED encrypted=no; +ROW_FORMAT=DYNAMIC encrypted=no; + Warnings: + Warning 140 InnoDB: ENCRYPTED=NO implies ENCRYPTION_KEY_ID=1 create table te_none(a serial, b blob, index(b(10))) engine=innodb - encrypted=yes; - create table t_none(a serial, b blob, index(b(10))) engine=innodb diff --git a/mysql-test/suite/encryption/r/innodb-checksum-algorithm,64k.rdiff b/mysql-test/suite/encryption/r/innodb-checksum-algorithm,64k.rdiff index 523074297..d963cde13 100644 --- a/mysql-test/suite/encryption/r/innodb-checksum-algorithm,64k.rdiff +++ b/mysql-test/suite/encryption/r/innodb-checksum-algorithm,64k.rdiff @@ -1,5 +1,5 @@ --- suite/encryption/r/innodb-checksum-algorithm.result -+++ suite/encryption/r/innodb-checksum-algorithm,64k.reject ++++ suite/encryption/r/innodb-checksum-algorithm.result @@ -13,9 +13,9 @@ SET GLOBAL innodb_default_encryption_key_id=4; SET GLOBAL innodb_checksum_algorithm=crc32; @@ -9,10 +9,10 @@ create table tc_crc32(a serial, b blob, index(b(10))) engine=innodb -ROW_FORMAT=COMPRESSED encrypted=no; +ROW_FORMAT=DYNAMIC encrypted=no; + Warnings: + Warning 140 InnoDB: ENCRYPTED=NO implies ENCRYPTION_KEY_ID=1 create table te_crc32(a serial, b blob, index(b(10))) engine=innodb - encrypted=yes; - create table t_crc32(a serial, b blob, index(b(10))) engine=innodb -@@ -222,9 +222,9 @@ +@@ -153,9 +153,9 @@ t_crc32, tpe_crc32, tp_crc32; SET GLOBAL innodb_checksum_algorithm=innodb; create table tce_innodb(a serial, b blob, index(b(10))) engine=innodb @@ -21,10 +21,10 @@ create table tc_innodb(a serial, b blob, index(b(10))) engine=innodb -ROW_FORMAT=COMPRESSED encrypted=no; +ROW_FORMAT=DYNAMIC encrypted=no; + Warnings: + Warning 140 InnoDB: ENCRYPTED=NO implies ENCRYPTION_KEY_ID=1 create table te_innodb(a serial, b blob, index(b(10))) engine=innodb - encrypted=yes; - create table t_innodb(a serial, b blob, index(b(10))) engine=innodb -@@ -431,9 +431,9 @@ +@@ -293,9 +293,9 @@ t_innodb, tpe_innodb, tp_innodb; SET GLOBAL innodb_checksum_algorithm=none; create table tce_none(a serial, b blob, index(b(10))) engine=innodb @@ -33,6 +33,6 @@ create table tc_none(a serial, b blob, index(b(10))) engine=innodb -ROW_FORMAT=COMPRESSED encrypted=no; +ROW_FORMAT=DYNAMIC encrypted=no; + Warnings: + Warning 140 InnoDB: ENCRYPTED=NO implies ENCRYPTION_KEY_ID=1 create table te_none(a serial, b blob, index(b(10))) engine=innodb - encrypted=yes; - create table t_none(a serial, b blob, index(b(10))) engine=innodb diff --git a/mysql-test/suite/encryption/r/innodb-checksum-algorithm.result b/mysql-test/suite/encryption/r/innodb-checksum-algorithm.result index 7fdea4b67..6fa2e7c59 100644 --- a/mysql-test/suite/encryption/r/innodb-checksum-algorithm.result +++ b/mysql-test/suite/encryption/r/innodb-checksum-algorithm.result @@ -16,14 +16,20 @@ create table tce_crc32(a serial, b blob, index(b(10))) engine=innodb ROW_FORMAT=COMPRESSED encrypted=yes; create table tc_crc32(a serial, b blob, index(b(10))) engine=innodb ROW_FORMAT=COMPRESSED encrypted=no; +Warnings: +Warning 140 InnoDB: ENCRYPTED=NO implies ENCRYPTION_KEY_ID=1 create table te_crc32(a serial, b blob, index(b(10))) engine=innodb encrypted=yes; create table t_crc32(a serial, b blob, index(b(10))) engine=innodb encrypted=no; +Warnings: +Warning 140 InnoDB: ENCRYPTED=NO implies ENCRYPTION_KEY_ID=1 create table tpe_crc32(a serial, b blob, index(b(10))) engine=innodb page_compressed=yes encrypted=yes; create table tp_crc32(a serial, b blob, index(b(10))) engine=innodb page_compressed=yes encrypted=no; +Warnings: +Warning 140 InnoDB: ENCRYPTED=NO implies ENCRYPTION_KEY_ID=1 begin; insert into tce_crc32(b) values (repeat('secret',20)); insert into tc_crc32(b) values (repeat('secret',20)); @@ -150,14 +156,20 @@ create table tce_innodb(a serial, b blob, index(b(10))) engine=innodb ROW_FORMAT=COMPRESSED encrypted=yes; create table tc_innodb(a serial, b blob, index(b(10))) engine=innodb ROW_FORMAT=COMPRESSED encrypted=no; +Warnings: +Warning 140 InnoDB: ENCRYPTED=NO implies ENCRYPTION_KEY_ID=1 create table te_innodb(a serial, b blob, index(b(10))) engine=innodb encrypted=yes; create table t_innodb(a serial, b blob, index(b(10))) engine=innodb encrypted=no; +Warnings: +Warning 140 InnoDB: ENCRYPTED=NO implies ENCRYPTION_KEY_ID=1 create table tpe_innodb(a serial, b blob, index(b(10))) engine=innodb page_compressed=yes encrypted=yes; create table tp_innodb(a serial, b blob, index(b(10))) engine=innodb page_compressed=yes encrypted=no; +Warnings: +Warning 140 InnoDB: ENCRYPTED=NO implies ENCRYPTION_KEY_ID=1 begin; insert into tce_innodb(b) values (repeat('secret',20)); insert into tc_innodb(b) values (repeat('secret',20)); @@ -284,14 +296,20 @@ create table tce_none(a serial, b blob, index(b(10))) engine=innodb ROW_FORMAT=COMPRESSED encrypted=yes; create table tc_none(a serial, b blob, index(b(10))) engine=innodb ROW_FORMAT=COMPRESSED encrypted=no; +Warnings: +Warning 140 InnoDB: ENCRYPTED=NO implies ENCRYPTION_KEY_ID=1 create table te_none(a serial, b blob, index(b(10))) engine=innodb encrypted=yes; create table t_none(a serial, b blob, index(b(10))) engine=innodb encrypted=no; +Warnings: +Warning 140 InnoDB: ENCRYPTED=NO implies ENCRYPTION_KEY_ID=1 create table tpe_none(a serial, b blob, index(b(10))) engine=innodb page_compressed=yes encrypted=yes; create table tp_none(a serial, b blob, index(b(10))) engine=innodb page_compressed=yes encrypted=no; +Warnings: +Warning 140 InnoDB: ENCRYPTED=NO implies ENCRYPTION_KEY_ID=1 begin; insert into tce_none(b) values (repeat('secret',20)); insert into tc_none(b) values (repeat('secret',20)); diff --git a/mysql-test/suite/encryption/r/innodb-compressed-blob.result b/mysql-test/suite/encryption/r/innodb-compressed-blob.result index ce73b8082..4187877be 100644 --- a/mysql-test/suite/encryption/r/innodb-compressed-blob.result +++ b/mysql-test/suite/encryption/r/innodb-compressed-blob.result @@ -7,6 +7,8 @@ set GLOBAL innodb_default_encryption_key_id=4; create table t1(a int not null primary key, b blob, index(b(10))) engine=innodb row_format=compressed; create table t2(a int not null primary key, b blob, index(b(10))) engine=innodb row_format=compressed encrypted=yes; create table t3(a int not null primary key, b blob, index(b(10))) engine=innodb row_format=compressed encrypted=no; +Warnings: +Warning 140 InnoDB: ENCRYPTED=NO implies ENCRYPTION_KEY_ID=1 insert into t1 values (1, repeat('secret',6000)); insert into t2 values (1, repeat('secret',6000)); insert into t3 values (1, repeat('secret',6000)); diff --git a/mysql-test/suite/encryption/r/innodb-encryption-alter.result b/mysql-test/suite/encryption/r/innodb-encryption-alter.result index 5245d1da7..b2f33b2b2 100644 --- a/mysql-test/suite/encryption/r/innodb-encryption-alter.result +++ b/mysql-test/suite/encryption/r/innodb-encryption-alter.result @@ -4,9 +4,16 @@ SET GLOBAL innodb_encrypt_tables = ON; SET GLOBAL innodb_encryption_threads = 4; CREATE TABLE t1 (pk INT PRIMARY KEY AUTO_INCREMENT, c VARCHAR(256)) ENGINE=INNODB ENCRYPTED=NO ENCRYPTION_KEY_ID=4; Warnings: -Warning 140 InnoDB: Ignored ENCRYPTION_KEY_ID 4 when encryption is disabled +Warning 140 InnoDB: ENCRYPTED=NO implies ENCRYPTION_KEY_ID=1 DROP TABLE t1; +set @save_global = @@GLOBAL.innodb_default_encryption_key_id; set innodb_default_encryption_key_id = 99; +Warnings: +Warning 1210 innodb_default_encryption_key=99 is not available +set global innodb_default_encryption_key_id = 99; +Warnings: +Warning 1210 innodb_default_encryption_key=99 is not available +set global innodb_default_encryption_key_id = @save_global; CREATE TABLE t1 (pk INT PRIMARY KEY AUTO_INCREMENT, c VARCHAR(256)) ENGINE=INNODB; ERROR HY000: Can't create table `test`.`t1` (errno: 140 "Wrong create options") SHOW WARNINGS; @@ -40,8 +47,6 @@ t1 CREATE TABLE `t1` ( PRIMARY KEY (`pk`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 `ENCRYPTION_KEY_ID`=4 CREATE TABLE t2 (pk INT PRIMARY KEY AUTO_INCREMENT, c VARCHAR(256)) ENGINE=INNODB ENCRYPTED=NO ENCRYPTION_KEY_ID=1; -Warnings: -Warning 140 InnoDB: Ignored ENCRYPTION_KEY_ID 1 when encryption is disabled ALTER TABLE t1 ENCRYPTION_KEY_ID=99; ERROR HY000: Table storage engine 'InnoDB' does not support the create option 'ENCRYPTION_KEY_ID' SHOW WARNINGS; @@ -53,37 +58,29 @@ drop table t1,t2; SET GLOBAL innodb_encrypt_tables=OFF; CREATE TABLE t1 (a int not null primary key) engine=innodb; ALTER TABLE t1 ENCRYPTION_KEY_ID=4; -ERROR HY000: Table storage engine 'InnoDB' does not support the create option 'ENCRYPTION_KEY_ID' -SHOW WARNINGS; -Level Code Message -Warning 140 InnoDB: innodb_encrypt_tables=OFF only allows ENCRYPTION_KEY_ID=1 -Error 1478 Table storage engine 'InnoDB' does not support the create option 'ENCRYPTION_KEY_ID' SHOW CREATE TABLE t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) NOT NULL, PRIMARY KEY (`a`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1 +) ENGINE=InnoDB DEFAULT CHARSET=latin1 `ENCRYPTION_KEY_ID`=4 DROP TABLE t1; CREATE TABLE t2 (a int not null primary key) engine=innodb; ALTER TABLE t2 ENCRYPTION_KEY_ID=4, ALGORITHM=COPY; -ERROR HY000: Can't create table `test`.`#sql-temporary` (errno: 140 "Wrong create options") -SHOW WARNINGS; -Level Code Message -Warning 140 InnoDB: innodb_encrypt_tables=OFF only allows ENCRYPTION_KEY_ID=1 -Error 1005 Can't create table `test`.`#sql-temporary` (errno: 140 "Wrong create options") -Warning 1030 Got error 140 "Wrong create options" from storage engine InnoDB SHOW CREATE TABLE t2; Table Create Table t2 CREATE TABLE `t2` ( `a` int(11) NOT NULL, PRIMARY KEY (`a`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1 +) ENGINE=InnoDB DEFAULT CHARSET=latin1 `ENCRYPTION_KEY_ID`=4 DROP TABLE t2; CREATE TABLE t3 (a int not null primary key) engine=innodb ENCRYPTION_KEY_ID=4; -ERROR HY000: Can't create table `test`.`t3` (errno: 140 "Wrong create options") +DROP TABLE t3; +SET GLOBAL innodb_encrypt_tables='FORCE'; +CREATE TABLE t1 (a int primary key) engine=innodb encrypted=no; +ERROR HY000: Can't create table `test`.`t1` (errno: 140 "Wrong create options") SHOW WARNINGS; Level Code Message -Warning 140 InnoDB: innodb_encrypt_tables=OFF only allows ENCRYPTION_KEY_ID=1 -Error 1005 Can't create table `test`.`t3` (errno: 140 "Wrong create options") +Warning 140 InnoDB: ENCRYPTED=NO cannot be used with innodb_encrypt_tables=FORCE +Error 1005 Can't create table `test`.`t1` (errno: 140 "Wrong create options") Warning 1030 Got error 140 "Wrong create options" from storage engine InnoDB diff --git a/mysql-test/suite/encryption/t/innodb-encryption-alter.test b/mysql-test/suite/encryption/t/innodb-encryption-alter.test index 9465226dd..711beeef1 100644 --- a/mysql-test/suite/encryption/t/innodb-encryption-alter.test +++ b/mysql-test/suite/encryption/t/innodb-encryption-alter.test @@ -19,7 +19,10 @@ SET GLOBAL innodb_encryption_threads = 4; CREATE TABLE t1 (pk INT PRIMARY KEY AUTO_INCREMENT, c VARCHAR(256)) ENGINE=INNODB ENCRYPTED=NO ENCRYPTION_KEY_ID=4; DROP TABLE t1; +set @save_global = @@GLOBAL.innodb_default_encryption_key_id; set innodb_default_encryption_key_id = 99; +set global innodb_default_encryption_key_id = 99; +set global innodb_default_encryption_key_id = @save_global; --error 1005 CREATE TABLE t1 (pk INT PRIMARY KEY AUTO_INCREMENT, c VARCHAR(256)) ENGINE=INNODB; SHOW WARNINGS; @@ -90,25 +93,26 @@ drop table t1,t2; # # MDEV-17230: encryption_key_id from alter is ignored by encryption threads # +--enable_warnings SET GLOBAL innodb_encrypt_tables=OFF; CREATE TABLE t1 (a int not null primary key) engine=innodb; ---error ER_ILLEGAL_HA_CREATE_OPTION ALTER TABLE t1 ENCRYPTION_KEY_ID=4; -SHOW WARNINGS; SHOW CREATE TABLE t1; DROP TABLE t1; CREATE TABLE t2 (a int not null primary key) engine=innodb; --replace_regex /#sql-[0-9a-f_]*`/#sql-temporary`/ ---error ER_CANT_CREATE_TABLE ALTER TABLE t2 ENCRYPTION_KEY_ID=4, ALGORITHM=COPY; --replace_regex /#sql-[0-9a-f_]*`/#sql-temporary`/ -SHOW WARNINGS; SHOW CREATE TABLE t2; DROP TABLE t2; ---error ER_CANT_CREATE_TABLE CREATE TABLE t3 (a int not null primary key) engine=innodb ENCRYPTION_KEY_ID=4; +DROP TABLE t3; + +SET GLOBAL innodb_encrypt_tables='FORCE'; +--error ER_CANT_CREATE_TABLE +CREATE TABLE t1 (a int primary key) engine=innodb encrypted=no; SHOW WARNINGS; # reset system diff --git a/mysql-test/suite/funcs_1/datadict/processlist_priv.inc b/mysql-test/suite/funcs_1/datadict/processlist_priv.inc index cd060e7a3..a2e701cc5 100644 --- a/mysql-test/suite/funcs_1/datadict/processlist_priv.inc +++ b/mysql-test/suite/funcs_1/datadict/processlist_priv.inc @@ -156,6 +156,7 @@ WHERE DB = 'information_schema' AND COMMAND = 'Sleep' AND USER = 'ddicttestuser1 --source include/wait_condition.inc --replace_result ENGINE=MyISAM "" ENGINE=Aria "" " PAGE_CHECKSUM=1" "" " PAGE_CHECKSUM=0" "" eval SHOW CREATE TABLE $table; +--replace_result Execute Query --replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS eval SHOW $table; --replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS 13 MEMORY 14 ROWS 15 QUERY_ID 17 TID @@ -176,6 +177,7 @@ connection con100; # but "ddicttestuser1" must not see anything of the root session. --replace_result ENGINE=MyISAM "" ENGINE=Aria "" " PAGE_CHECKSUM=1" "" " PAGE_CHECKSUM=0" "" eval SHOW CREATE TABLE $table; +--replace_result Execute Query --replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS eval SHOW $table; --replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS 13 MEMORY 14 ROWS 15 QUERY_ID 17 TID @@ -202,6 +204,7 @@ GRANT PROCESS ON *.* TO ddicttestuser1@'localhost' IDENTIFIED BY 'ddictpass'; --echo #################################################################################### connection con100; SHOW GRANTS; +--replace_result Execute Query --replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS SHOW processlist; --replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS 13 MEMORY 14 ROWS 15 QUERY_ID 17 TID @@ -214,6 +217,7 @@ SELECT * FROM information_schema.processlist; --echo #################################################################################### connect (con101,localhost,ddicttestuser1,ddictpass,information_schema); SHOW GRANTS; +--replace_result Execute Query --replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS SHOW processlist; --replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS 13 MEMORY 14 ROWS 15 QUERY_ID 17 TID @@ -237,6 +241,7 @@ GRANT PROCESS ON *.* TO ''@'localhost'; --echo #################################################################################### connect (anonymous1,localhost,"''",,information_schema); SHOW GRANTS; +--replace_result Execute Query --replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS SHOW processlist; --replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS 13 MEMORY 14 ROWS 15 QUERY_ID 17 TID @@ -259,6 +264,7 @@ connect (con102,localhost,ddicttestuser1,ddictpass,information_schema); --echo ddicttestuser1 are visible. --echo #################################################################################### SHOW GRANTS; +--replace_result Execute Query --replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS SHOW processlist; --replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS 13 MEMORY 14 ROWS 15 QUERY_ID 17 TID @@ -284,6 +290,7 @@ SHOW GRANTS FOR ''@'localhost'; if ($fixed_bug_30395) { # Bug#30395 strange results after REVOKE PROCESS ON *.* FROM ... +--replace_result Execute Query --replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS SHOW processlist; } @@ -306,6 +313,7 @@ connect (con103,localhost,ddicttestuser1,ddictpass,information_schema); --echo Only the processes of ddicttestuser1 user are visible. --echo #################################################################################### SHOW GRANTS FOR 'ddicttestuser1'@'localhost'; +--replace_result Execute Query --replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS SHOW processlist; --replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS 13 MEMORY 14 ROWS 15 QUERY_ID 17 TID @@ -328,6 +336,7 @@ connect (con104,localhost,ddicttestuser1,ddictpass,information_schema); --echo Only the processes of ddicttestuser1 are visible. --echo #################################################################################### SHOW GRANTS FOR 'ddicttestuser1'@'localhost'; +--replace_result Execute Query --replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS SHOW processlist; --replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS 13 MEMORY 14 ROWS 15 QUERY_ID 17 TID @@ -375,6 +384,7 @@ connect (con200,localhost,ddicttestuser2,ddictpass,information_schema); --echo ddicttestuser2 has now the PROCESS privilege and sees all connections --echo #################################################################################### SHOW GRANTS FOR 'ddicttestuser2'@'localhost'; +--replace_result Execute Query --replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS SHOW processlist; --replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS 13 MEMORY 14 ROWS 15 QUERY_ID 17 TID @@ -396,6 +406,7 @@ connect (con201,localhost,ddicttestuser2,ddictpass,information_schema); --echo ddicttestuser2 has no more the PROCESS privilege and can only see own connects --echo #################################################################################### SHOW GRANTS; +--replace_result Execute Query --replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS SHOW processlist; --replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS 13 MEMORY 14 ROWS 15 QUERY_ID 17 TID @@ -419,6 +430,7 @@ connect (con107,localhost,ddicttestuser1,ddictpass,information_schema); SHOW GRANTS FOR 'ddicttestuser1'@'localhost'; --error ER_ACCESS_DENIED_ERROR GRANT PROCESS ON *.* TO 'ddicttestuser2'@'localhost'; +--replace_result Execute Query --replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS SHOW processlist; --replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS 13 MEMORY 14 ROWS 15 QUERY_ID 17 TID @@ -443,6 +455,7 @@ connect (con108,localhost,ddicttestuser1,ddictpass,information_schema); --echo Therefore the missing SELECT privilege does not affect SELECTs on PROCESSLIST. --echo #################################################################################### SHOW GRANTS FOR 'ddicttestuser1'@'localhost'; +--replace_result Execute Query --replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS SHOW processlist; --replace_column 1 ID 3 HOST_NAME 6 TIME 9 TIME_MS 13 MEMORY 14 ROWS 15 QUERY_ID 17 TID diff --git a/mysql-test/suite/funcs_1/datadict/processlist_val.inc b/mysql-test/suite/funcs_1/datadict/processlist_val.inc index 6e76cedde..cdc070aff 100644 --- a/mysql-test/suite/funcs_1/datadict/processlist_val.inc +++ b/mysql-test/suite/funcs_1/datadict/processlist_val.inc @@ -94,6 +94,7 @@ echo # 1. Just dump what we get --replace_column 1 3 6