From f6cb4f0a19487879171b2374ebcb71f34cee3024 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marko=20M=C3=A4kel=C3=A4?= Date: Fri, 22 Sep 2017 10:28:14 +0300 Subject: [PATCH 1/8] MDEV-13814 Extra logging when innodb_log_archive=ON log_group_read_log_seg(): Only display the message during recovery, not during normal operation. When the XtraDB configuration parameter innodb_log_archive is set, this function will be called during normal operation. --- storage/xtradb/log/log0log.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/storage/xtradb/log/log0log.cc b/storage/xtradb/log/log0log.cc index a3b08eb6730..b8eaa08638f 100644 --- a/storage/xtradb/log/log0log.cc +++ b/storage/xtradb/log/log0log.cc @@ -2537,7 +2537,7 @@ loop: start_lsn += len; buf += len; - if (recv_sys->report(ut_time())) { + if (recv_recovery_is_on() && recv_sys->report(ut_time())) { ib_logf(IB_LOG_LEVEL_INFO, "Read redo log up to LSN=" LSN_PF, start_lsn); } From a753caf13556a92b70c5baaa2a77a6e50f4dc94b Mon Sep 17 00:00:00 2001 From: Sergei Golubchik Date: Fri, 22 Sep 2017 13:40:04 +0200 Subject: [PATCH 2/8] update rdiff after merge --- mysql-test/suite/sys_vars/r/sysvars_innodb,xtradb.rdiff | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mysql-test/suite/sys_vars/r/sysvars_innodb,xtradb.rdiff b/mysql-test/suite/sys_vars/r/sysvars_innodb,xtradb.rdiff index dc9a5fd05e6..6aa4e32e95e 100644 --- a/mysql-test/suite/sys_vars/r/sysvars_innodb,xtradb.rdiff +++ b/mysql-test/suite/sys_vars/r/sysvars_innodb,xtradb.rdiff @@ -662,7 +662,7 @@ VARIABLE_NAME INNODB_VERSION SESSION_VALUE NULL -GLOBAL_VALUE 5.6.37 -+GLOBAL_VALUE 5.6.36-82.1 ++GLOBAL_VALUE 5.6.36-82.2 GLOBAL_VALUE_ORIGIN COMPILE-TIME DEFAULT_VALUE NULL VARIABLE_SCOPE GLOBAL From d8fe5fa131936794a4acff2be899fe18f6a42985 Mon Sep 17 00:00:00 2001 From: Elena Stepanova Date: Fri, 22 Sep 2017 17:54:23 +0300 Subject: [PATCH 3/8] Updated list of unstable tests for 10.1.27 release --- mysql-test/unstable-tests | 174 +++++++++++++++++++++++--------------- 1 file changed, 107 insertions(+), 67 deletions(-) diff --git a/mysql-test/unstable-tests b/mysql-test/unstable-tests index 5ec491171b1..cf99f822dfc 100644 --- a/mysql-test/unstable-tests +++ b/mysql-test/unstable-tests @@ -23,23 +23,22 @@ # ############################################################################## +main.alter_table : Modified in 10.1.27 main.alter_table_trans : MDEV-12084 - timeout main.analyze_format_json : MDEV-11866 - Wrong result main.analyze_stmt_orderby : MDEV-11866 - Wrong result main.analyze_stmt_slow_query_log : MDEV-12237 - Wrong result main.binary_to_hex : Added in 10.1.26 -main.bootstrap : Modified in 10.1.25 -main.count_distinct : Modified in 10.1.26 +main.count_distinct : Modified in 10.1.27 main.create_delayed : MDEV-10605 - failed with timeout main.create_drop_event : Modified in 10.1.26 -main.ctype_ucs : Modified in 10.1.25 main.ctype_utf16le : MDEV-10675: timeout or extra warnings +main.ctype_utf8 : Modified in 10.1.27 main.drop-no_root : MDEV-12633 - Valgrind warnings main.errors : Modified in 10.1.26 main.events_bugs : MDEV-12892 - Crash in fill_schema_processlist main.events_restart : MDEV-12236 - Server shutdown problem -main.func_concat : Modified in 10.1.25 -main.func_crypt : Modified in 10.1.25 +main.func_misc : Modified in 10.1.27 main.func_regexp_pcre : MDEV-13412 - Crash; modified in 10.1.26 main.gis : Modified in 10.1.26 main.gis-rt-precise : Modified in 10.1.26 @@ -48,28 +47,26 @@ main.host_cache_size_functionality : MDEV-10606 - sporadic failure on shutdown main.index_intersect_innodb : MDEV-10643 - failed with timeout main.index_merge_innodb : MDEV-7142 - Wrong execution plan, timeout with valgrind main.innodb_mysql_lock : MDEV-7861 - sporadic lock detection failure -main.join_outer : Modified in 10.1.25 +main.insert : Modified in 10.1.27 main.kill_processlist-6619 : MDEV-10793 - wrong result in processlist main.loadxml : Data file modified in 10.1.26 +main.log_tables-big : Modified in 10.1.27 main.mdev-504 : MDEV-10607 - sporadic "can't connect" main.mdev375 : MDEV-10607 - sporadic "can't connect" -main.mdl_sync : Modified in 10.1.25 main.merge : MDEV-10607 - sporadic "can't connect" -main.mysql : Modified in 10.1.25 main.mysqlcheck : MDEV-12633 - Valgrind warnings -main.mysqld--help : Modified in 10.1.25 main.mysqlslap : MDEV-11801 - timeout -main.mysqltest : MDEV-9269 - fails on Alpha; modified in 10.1.25 +main.mysqltest : MDEV-9269 - fails on Alpha main.mysql_client_test : MDEV-12633 - Valgrind warnings main.mysql_client_test_comp : MDEV-12633 - Valgrind warnings main.mysql_client_test_nonblock : MDEV-12633 - Valgrind warnings main.mysql_upgrade : Modified in 10.1.26 +main.old-mode : Modified in 10.1.27 main.openssl_1 : Modified in 10.1.26 main.openssl_6975 : Modified in 10.1.26 -main.order_by : MOdified in 10.1.25 main.order_by_optimizer_innodb : MDEV-10683 - wrong execution plan -main.partition_alter : Modified in 10.1.25 main.partition_innodb_plugin : MDEV-12901 - Valgrind warnings +main.partition_symlink : Modified in 10.1.27 main.ps : MDEV-11017 - sporadic wrong Prepared_stmt_count main.query_cache : MDEV-12895 - Wrong result main.range_vs_index_merge_innodb : MDEV-12637 - Timeout @@ -78,20 +75,20 @@ main.repair_symlink-5543 : MDEV-12215 - Wrong error codes main.set_statement : MDEV-13183 - Wrong result main.show_check : MDEV-12633 - Valgrind warnings main.show_explain : MDEV-10674 - sporadic failure +main.sp : Modified in 10.1.27 main.sp-security : MDEV-10607 - sporadic "can't connect" main.ssl : Modified in 10.1.26 main.status : MDEV-8510 - sporadic wrong result main.subselect : Modified in 10.1.26 main.subselect_innodb : MDEV-10614 - sporadic wrong results -main.subselect_mat_cost_bugs : Modified in 10.1.25 main.subselect_nulls : Modified in 10.1.26 -main.subselect_sj_mat : Modified in 10.1.25 -main.subselect_sj2_mat : Modified in 10.1.25 +main.symlink : Modified in 10.1.27 main.symlink-aria-11902 : MDEV-12215 - Unexpected errors main.symlink-myisam-11902 : MDEV-12215 - Unexpected errors +main.tc_heuristic_recover : Added in 10.1.27 main.type_datetime_hires : MDEV-10687 - timeout main.union : Modified in 10.1.26 -main.view : Modified in 10.1.26 +main.view : Modified in 10.1.27 #---------------------------------------------------------------- @@ -115,23 +112,56 @@ binlog_encryption.rpl_semi_sync : MDEV-11220 - Wrong result, MDEV-11673 - Val #---------------------------------------------------------------- -connect.tbl : MDEV-9844, MDEV-10179 - sporadic crashes, valgrind warnings, wrong results +connect.alter_xml : Modified in 10.1.27 +connect.alter_xml2 : Added in 10.1.27 +connect.infoschema-9739 : Modified in 10.1.27 +connect.infoschema2-9739 : Added in 10.1.27 +connect.jdbc_new : Modified in 10.1.27 +connect.json : Modified in 10.1.27 +connect.json_java_2 : Added in 10.1.27 +connect.json_java_3 : Added in 10.1.27 +connect.json_mongo_c : Added in 10.1.27 +connect.json_udf : Modified in 10.1.27 +connect.json_udf_bin : Modified in 10.1.27 +connect.mongo_c : Added in 10.1.27 +connect.mongo_java_2 : Added in 10.1.27 +connect.mongo_java_3 : Added in 10.1.27 +connect.mul_new : Added in 10.1.27 +connect.mysql_exec : Modified in 10.1.27 +connect.mysql_new : Modified in 10.1.27 +connect.tbl : MDEV-9844, MDEV-10179 - sporadic crashes, valgrind warnings, wrong results; modified in 10.1.27 +connect.tbl_thread : MDEV-9844, MDEV-10179 - sporadic crashes, valgrind warnings, wrong results; added in 10.1.27 +connect.unsigned : Modified in 10.1.27 +connect.upd : Modified in 10.1.27 +connect.xml : Modified in 10.1.27 +connect.xml2 : Added in 10.1.27 +connect.xml2_grant : Added in 10.1.27 +connect.xml2_html : Added in 10.1.27 +connect.xml2_mdev5261 : Added in 10.1.27 +connect.xml2_mult : Added in 10.1.27 +connect.xml2_zip : Added in 10.1.27 +connect.xml_grant : Modified in 10.1.27 +connect.xml_html : Modified in 10.1.27 +connect.xml_mdev5261 : Modified in 10.1.27 +connect.xml_mult : Modified in 10.1.27 +connect.xml_zip : Modified in 10.1.27 +connect.zip : MDEV-13884 - Wrong result; modified in 10.1.27 #---------------------------------------------------------------- -encryption.create_or_replace : MDEV-9359 - Assertion failure +encryption.create_or_replace : MDEV-9359 - Assertion failure, MDEV-13516 - Assertion failure +encryption.encrypt_and_grep : MDEV-13765 - Wrong result encryption.innodb-bad-key-change2 : MDEV-12632 - Valgrind warnings encryption.innochecksum : Modified in 10.1.26 -encryption.innodb-checksum-algorithm : MDEV-13167 - Assertion failure; added in 10.1.25 -encryption.innodb-compressed-blob : Modified in 10.1.25 encryption.innodb-discard-import-change : MDEV-12632 - Valgrind warnings +encryption.innodb_encryption : Modified in 10.1.27 encryption.innodb_encryption_discard_import : MDEV-12903 - Wrong result encryption.innodb_encryption_filekeys : MDEV-9962 - timeouts encryption.innodb_encryption-page-compression : MDEV-12630 - crash or assertion failure encryption.innodb_encryption_tables : MDEV-9359 - Assertion failure encryption.innodb_first_page : MDEV-10689 - crashes -encryption.innodb-first-page-read : MDEV-13181 - Signal 8; added in 10.1.25 -encryption.innodb_lotoftables : MDEV-11531 - InnoDB error +encryption.innodb-first-page-read : MDEV-13181 - Signal 8; modified in 10.1.27 +encryption.innodb_lotoftables : MDEV-11531 - InnoDB error; modified in 10.1.27 encryption.innodb-missing-key : MDEV-9359 - assertion failure encryption.innodb-page_encryption : MDEV-10641 - mutex problem encryption.innodb-redo-badkey : MDEV-12898 - Server hang on startup @@ -164,63 +194,69 @@ funcs_2.myisam_charset : MDEV-11535 - Timeout #---------------------------------------------------------------- -galera.galera_defaults : Modified in 10.1.25 -galera.MW-369 : Added in 10.1.25 +galera.* : The suite was enabled in 10.1.27 and is still unstable +galera_3nodes.* : The suite has not been stabilized yet + +galera.galera_applier_ftwrl_table_alter : MDEV-13738 - MySQL server has gone away +galera.galera_gcs_fc_limit : MDEV-13877 - Timeout +galera.galera_suspend_slave : MDEV-13873 - Wrong error code +galera.galera_toi_truncate : MDEV-13743 - query 'reap' succeeded +galera.galera_unicode_identifiers : MDEV-13871 - Unknown database +galera.galera_var_node_address : MDEV-13880 - Failed to start mysqld +galera.galera_wan : MDEV-13879 - Stray state UUID msg warnings +galera.galera_wsrep_log_conficts : MDEV-13874 - check-testcase failed +galera.partition : MDEV-13881 - Wrong result +galera.query_cache : MDEV-13883 - Wrong result +galera.MW-328A : MDEV-13876 - Wrong result #---------------------------------------------------------------- innodb.101_compatibility : Modified in 10.1.26 +innodb.alter_rename_existing : Added in 10.1.27 innodb.binlog_consistent : MDEV-10618 - Server fails to start -innodb.doublewrite : MDEV-12905 - Lost connection to MySQL server; modified in 10.1.25 +innodb.create-index-debug : Added in 10.1.27 +innodb.doublewrite : MDEV-12905 - Lost connection to MySQL server +innodb.index_tree_operation : Added in 10.1.27 innodb.innodb-32k : Option file modified in 10.1.26 innodb.innodb-32k-crash : Option file modified in 10.1.26 innodb.innodb-64k : Modified in 10.1.26 -innodb.innodb-64k-crash : Option file modified in 10.1.26 -innodb.innodb-alter-debug : MDEV-13182 - InnoDB: adjusting FSP_SPACE_FLAGS; modified in 10.1.25 -innodb.innodb-alter-discard : Modified in 10.1.25 -innodb.innodb-alter-nullable : Modified in 10.1.25 -innodb.innodb-alter-table : MDEV-10619 - Testcase timeout; modified in 10.1.25 -innodb.innodb-alter-tempfile : Modified in 10.1.25 +innodb.innodb-64k-crash : MDEV-13872 - Failure and crash on startup +innodb.innodb-alter : Added in 10.1.27 +innodb.innodb-alter-autoinc : Added in 10.1.27 +innodb.innodb-alter-debug : MDEV-13182 - InnoDB: adjusting FSP_SPACE_FLAGS +innodb.innodb-alter-table : MDEV-10619 - Testcase timeout innodb.innodb-blob : MDEV-12053 - Client crash innodb.innodb_bug14147491 : MDEV-11808 - wrong error codes innodb.innodb_bug30423 : MDEV-7311 - Wrong number of rows in the plan -innodb.innodb_bug53290 : MDEV-12634 - Valgrind warnings -innodb.innodb-enlarge-blob : Added in 10.1.26 +innodb.innodb-enlarge-blob : Modified in 10.1.27 +innodb.innodb-fk : MDEV-13832 - Assertion failure on shutdown +innodb.innodb-index-debug : Added in 10.1.27 +innodb.innodb-index-online : Added in 10.1.27 +innodb.innodb-index-online-delete : Added in 10.1.27 +innodb.innodb-index-online-fk : Added in 10.1.27 +innodb.innodb-index-online-purge : Added in 10.1.27 innodb.innodb_max_recordsize_32k : Added in 10.1.26 innodb.innodb_max_recordsize_64k : Added in 10.1.26 innodb.innodb-page_compression_zip : MDEV-10641 - mutex problem -innodb.innodb_prefix_index_restart_server : MDEV-12899 - Server crash on shutdown innodb.innodb_stats : MDEV-10682 - wrong result innodb.innodb_sys_semaphore_waits : MDEV-10331 - wrong result +innodb.innodb-table-online : Added in 10.1.27 +innodb.innodb-wl5980-alter : Added in 10.1.27 innodb.innodb_zip_innochecksum : Added in 10.1.26 -innodb.innodb_zip_innochecksum2 : Added in 10.1.26 +innodb.innodb_zip_innochecksum2 : MDEV-13882 - Warning: difficult to find free blocks innodb.innodb_zip_innochecksum3 : Added in 10.1.26 -innodb.log_data_file_size : MDEV-12893 - Database page corruption; modified in 10.1.25 -innodb.log_file_size : Modified in 10.1.25 -innodb.row_format_redundant : Added in 10.1.25 -innodb.table_flags : Added in 10.1.25 +innodb.log_data_file_size : Modified in 10.1.27 +innodb.xa_recovery : Modified in 10.1.27 innodb_fts.fulltext_misc : MDEV-12636 - Valgrind warnings -innodb_zip.innodb_bug36169 : Modified in 10.1.25 -innodb_zip.innodb_bug36172 : Modified in 10.1.25 -innodb_zip.innodb_bug52745 : Modified in 10.1.25 -innodb_zip.innodb_bug53591 : Modified in 10.1.25 -innodb_zip.innodb_bug56680 : Modified in 10.1.25 -innodb_zip.innodb-create-options : Modified in 10.1.25 -innodb_zip.innodb-zip : Modified in 10.1.25 #---------------------------------------------------------------- -mariabackup.full_backup : Modified in 10.1.25 -mariabackup.incremental_backup : Uses include file modified in 10.1.25 -mariabackup.incremental_encrypted : Modified in 10.1.25 -mariabackup.xb_aws_key_management : Uses include file modified in 10.1.25 -mariabackup.xb_compressed_encrypted : Modified in 10.1.25 -mariabackup.xb_file_key_management : Modified in 10.1.25 -mariabackup.xb_fulltext_encrypted : Uses include file modified in 10.1.25 -mariabackup.xb_partition : Uses include file modified in 10.1.25 -mariabackup.xbstream : Uses include file modified in 10.1.25 +mariabackup.apply-log-only : Added in 10.1.27 +mariabackup.apply-log-only-incr : Added in 10.1.27 +mariabackup.auth_plugin_win : Added in 10.1.27 +mariabackup.xb_aws_key_management : Modified in 10.1.27 #---------------------------------------------------------------- @@ -237,7 +273,6 @@ mroonga/storage.repair_table_no_index_file : MDEV-9364 - multi_source.gtid : MDEV-10417 - Fails on Mips multi_source.info_logs : MDEV-10042 - Wrong result, MDEV-12629 - Valgrind warnings -multi_source.mdev-9544 : Added in 10.1.25 multi_source.multisource : MDEV-10417 - Fails on Mips multi_source.reset_slave : MDEV-10690 - wrong result multi_source.simple : MDEV-4633 - Wrong slave status output @@ -246,12 +281,19 @@ multi_source.status_vars : MDEV-4632 - failed while waiting for Slave_received_h #---------------------------------------------------------------- parts.longname : Added in 10.1.26 +parts.partition_exch_myisam_innodb : Modified in 10.1.27 +parts.partition_exch_qa_10 : Include files modified in 10.1.27 +parts.partition_exch_qa_11 : Include files modified in 10.1.27 +parts.partition_exch_qa_12 : Include files modified in 10.1.27 +parts.partition_exch_qa_14 : Modified in 10.1.27 +parts.partition_exch_qa_15 : Modified in 10.1.27 +parts.partition_exch_qa_2 : Modified in 10.1.27 +parts.partition_exch_qa_3 : Modified in 10.1.27 +parts.partition_exch_qa_6 : Modified in 10.1.27 parts.partition_innodb_status_file : MDEV-12901 - Valgrind -parts.quoting : Modified in 10.1.25 #---------------------------------------------------------------- -perfschema.bad_option_2 : Modified in 10.1.25 perfschema.func_file_io : MDEV-5708 - fails for s390x perfschema.func_mutex : MDEV-5708 - fails for s390x perfschema.privilege_table_io : MDEV-13184 - Extra lines; modified in 10.1.26 @@ -269,11 +311,6 @@ plugins.thread_pool_server_audit : MDEV-9562 - crashes on sol10-sparc #---------------------------------------------------------------- -roles.current_role_view-12666 : Added in 10.1.25 -roles.show_create_database-10463 : Added in 10.1.25 - -#---------------------------------------------------------------- - rpl.circular_serverid0 : Added in 10.1.26 rpl.last_insert_id : MDEV-10625 - warnings in error log rpl.rpl_auto_increment : MDEV-10417 - Fails on Mips @@ -315,12 +352,12 @@ rpl.rpl_password_boundaries : MDEV-11534 - Slave IO warnings rpl.rpl_reset_slave_fail : Added in 10.1.26 rpl.rpl_rotate_logs : Include file modified in 10.1.26 rpl.rpl_row_binlog_max_cache_size : Include file modified in 10.1.26 +rpl.rpl_row_img_eng_min : MDEV-13875 - command "diff_files" failed rpl.rpl_row_loaddata_concurrent : Include file modified in 10.1.26 rpl.rpl_row_log_innodb : MDEV-10688 - Wrong result rpl.rpl_row_sp001 : MDEV-9329 - Fails on Ubuntu/s390x rpl.rpl_row_tabledefs_2myisam : Include file modified in 10.1.26 rpl.rpl_row_tabledefs_3innodb : Include file modified in 10.1.26 -rpl.rpl_row_utf32 : One-time server startup timeout on ppc64le in 10.1.25 rpl.rpl_semi_sync : MDEV-11220 - Wrong result rpl.rpl_semi_sync_event_after_sync : MDEV-11806 - warnings rpl.rpl_semi_sync_uninstall_plugin : MDEV-7140 - Wrong plugin status, MDEV-10892 - Assertion failure @@ -328,11 +365,14 @@ rpl.rpl_semi_sync_wait_point : MDEV-11807 - timeout in wait condition rpl.rpl_show_slave_hosts : MDEV-10681 - server startup problem rpl.rpl_skip_replication : MDEV-9268 - Fails with timeout in sync_slave_with_master on Alpha rpl.rpl_slave_grp_exec : MDEV-10514 - Unexpected deadlock +rpl.rpl_sp_variables : Added in 10.1.27 rpl.rpl_stm_000001 : Include file modified in 10.1.26 rpl.rpl_stm_binlog_max_cache_size : Include file modified in 10.1.26 rpl.rpl_stm_loaddata_concurrent : Include file modified in 10.1.26 rpl.rpl_sync : MDEV-10633 - Database page corruption +rpl.rpl_temporal_format_mariadb53_to_mysql56_dst : Added in 10.1.27 rpl.rpl_temporary_error2 : MDEV-10634 - Wrong number of retries +rpl.sec_behind_master-5114 : MDEV-13878 - Wrong result #---------------------------------------------------------------- @@ -371,7 +411,6 @@ sys_vars.autocommit_func2 : MDEV-9329 - Fails on Ubuntu/s39 sys_vars.keep_files_on_create_basic : MDEV-10676 - timeout sys_vars.innodb_buffer_pool_dump_pct_basic : MDEV-10651 - sporadic failure on file_exists sys_vars.innodb_fatal_semaphore_wait_threshold : MDEV-10513 - crashes -sys_vars.innodb_sched_priority_cleaner_basic : Modified in 10.1.25 sys_vars.log_slow_admin_statements_func : MDEV-12235 - Server crash sys_vars.rpl_init_slave_func : MDEV-10149 - wrong results sys_vars.sysvars_innodb : MDEV-6958 - error-prone rdiffs @@ -388,7 +427,7 @@ tokudb.change_column_char : MDEV-12822 - Lost connection to MySQL ser tokudb.cluster_filter : MDEV-10678 - Wrong execution plan tokudb.cluster_filter_hidden : MDEV-10678 - Wrong execution plan tokudb.cluster_filter_unpack_varchar : MDEV-10636 - Wrong execution plan -tokudb.dir_per_db : MDEV-11537 - Wrong result +tokudb.dir_per_db : MDEV-11537 - Wrong result; modified in 10.1.27 tokudb.hotindex-insert-bigchar : MDEV-12640 - Crash tokudb.hotindex-update-1 : MDEV-12640 - Crash tokudb.kill_query_blocked_in_lt : Added in 10.1.26 @@ -451,7 +490,8 @@ vcol.vcol_keys_innodb : MDEV-10639 - Testcase timeout #---------------------------------------------------------------- wsrep.binlog_format : MDEV-11532 - WSREP has not yet prepared node +wsrep.mdev_6832 : Option file changed in 10.1.27 +wsrep.mdev_7798 : Option file changed in 10.1.27 wsrep.pool_of_threads : MDEV-12234 - Library problem on Power -wsrep.variables : Include file modified in 10.1.25 wsrep_info.plugin : MDEV-12909 - Wrong result From 7128fefa4ce4746ad04158846242f0aec6cf8271 Mon Sep 17 00:00:00 2001 From: Vladislav Vaintroub Date: Sat, 23 Sep 2017 23:23:05 +0200 Subject: [PATCH 4/8] Fix compile with -DWITHOUT_DYNAMIC_PLUGINS on Unix --- sql/CMakeLists.txt | 13 ++----------- storage/mroonga/CMakeLists.txt | 3 +++ 2 files changed, 5 insertions(+), 11 deletions(-) diff --git a/sql/CMakeLists.txt b/sql/CMakeLists.txt index 846df00498f..2e63dac6f02 100644 --- a/sql/CMakeLists.txt +++ b/sql/CMakeLists.txt @@ -322,18 +322,9 @@ ADD_CUSTOM_TARGET( SET_TARGET_PROPERTIES(GenServerSource PROPERTIES EXCLUDE_FROM_ALL TRUE) IF(WIN32 OR HAVE_DLOPEN AND NOT DISABLE_SHARED) - ADD_LIBRARY(udf_example MODULE udf_example.c) + ADD_LIBRARY(udf_example MODULE udf_example.c udf_example.def) SET_TARGET_PROPERTIES(udf_example PROPERTIES PREFIX "") - # udf_example depends on strings - IF(WIN32) - IF(MSVC) - SET_TARGET_PROPERTIES(udf_example PROPERTIES LINK_FLAGS "/DEF:${CMAKE_CURRENT_SOURCE_DIR}/udf_example.def") - ENDIF() - TARGET_LINK_LIBRARIES(udf_example strings) - ELSE() - # udf_example is using safemutex exported by mysqld - TARGET_LINK_LIBRARIES(udf_example mysqld) - ENDIF() + TARGET_LINK_LIBRARIES(udf_example strings) ENDIF() FOREACH(tool glibtoolize libtoolize aclocal autoconf autoheader automake gtar diff --git a/storage/mroonga/CMakeLists.txt b/storage/mroonga/CMakeLists.txt index f728c944bbf..dc88be51184 100644 --- a/storage/mroonga/CMakeLists.txt +++ b/storage/mroonga/CMakeLists.txt @@ -326,6 +326,9 @@ if(MRN_BUNDLED) STORAGE_ENGINE MODULE_ONLY RECOMPILE_FOR_EMBEDDED LINK_LIBRARIES ${MRN_LIBRARIES}) + if(NOT TARGET mroonga) + return() + endif() else() add_library(mroonga MODULE ${MRN_ALL_SOURCES}) From 78b63425a3f17214b67891f44399fa5f084965e8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marko=20M=C3=A4kel=C3=A4?= Date: Sun, 24 Sep 2017 10:11:16 +0300 Subject: [PATCH 5/8] MDEV-13899 IMPORT TABLESPACE may corrupt ROW_FORMAT=REDUNDANT tables MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The ALTER TABLEā€¦IMPORT TABLESPACE adjustment code that was introduced by WL#5522 in MySQL 5.6 is incorrectly invoking rec_get_status() on a ROW_FORMAT=REDUNDANT record to determine if a record is a leaf page record. The function rec_get_status(rec) is only to be called on ROW_FORMAT=COMPACT, DYNAMIC or COMPRESSED records. --- storage/innobase/row/row0import.cc | 12 ++++-------- storage/xtradb/row/row0import.cc | 12 ++++-------- 2 files changed, 8 insertions(+), 16 deletions(-) diff --git a/storage/innobase/row/row0import.cc b/storage/innobase/row/row0import.cc index 1337496b897..ca287b2d0d9 100644 --- a/storage/innobase/row/row0import.cc +++ b/storage/innobase/row/row0import.cc @@ -1819,16 +1819,12 @@ PageConverter::update_records( m_rec_iter.open(block); + if (!page_is_leaf(block->frame)) { + return DB_SUCCESS; + } + while (!m_rec_iter.end()) { - rec_t* rec = m_rec_iter.current(); - - /* FIXME: Move out of the loop */ - - if (rec_get_status(rec) == REC_STATUS_NODE_PTR) { - break; - } - ibool deleted = rec_get_deleted_flag(rec, comp); /* For the clustered index we have to adjust the BLOB diff --git a/storage/xtradb/row/row0import.cc b/storage/xtradb/row/row0import.cc index bc7b5206a64..572892172c4 100644 --- a/storage/xtradb/row/row0import.cc +++ b/storage/xtradb/row/row0import.cc @@ -1819,16 +1819,12 @@ PageConverter::update_records( m_rec_iter.open(block); + if (!page_is_leaf(block->frame)) { + return DB_SUCCESS; + } + while (!m_rec_iter.end()) { - rec_t* rec = m_rec_iter.current(); - - /* FIXME: Move out of the loop */ - - if (rec_get_status(rec) == REC_STATUS_NODE_PTR) { - break; - } - ibool deleted = rec_get_deleted_flag(rec, comp); /* For the clustered index we have to adjust the BLOB From ea2162b6aae020117bc5e0422b8e4629498163bf Mon Sep 17 00:00:00 2001 From: Varun Gupta Date: Sun, 24 Sep 2017 23:33:44 +0530 Subject: [PATCH 6/8] MDEV-11846: ERROR 1114 (HY000) table full when performing GROUP BY The problem is there is an overflow for the key_file_length. Added the maximum limit for the key_file_length --- storage/maria/ma_create.c | 41 +++++++++++++++++++++++++++++++-------- 1 file changed, 33 insertions(+), 8 deletions(-) diff --git a/storage/maria/ma_create.c b/storage/maria/ma_create.c index 0ddd8b226e2..ba4a70a4c51 100644 --- a/storage/maria/ma_create.c +++ b/storage/maria/ma_create.c @@ -660,11 +660,24 @@ int maria_create(const char *name, enum data_file_type datafile_type, if (length > max_key_length) max_key_length= length; - tot_length+= ((max_rows/(ulong) (((uint) maria_block_size - + + if (tot_length == ULLONG_MAX) + continue; + + ulonglong tot_length_part= (max_rows/(ulong) (((uint) maria_block_size - MAX_KEYPAGE_HEADER_SIZE - KEYPAGE_CHECKSUM_SIZE)/ - (length*2))) * - maria_block_size); + (length*2))); + if (tot_length_part >= (ULLONG_MAX / maria_block_size + + ULLONG_MAX % maria_block_size)) + tot_length= ULLONG_MAX; + else + { + if (tot_length > ULLONG_MAX - tot_length_part * maria_block_size) + tot_length= ULLONG_MAX; + else + tot_length+= tot_length_part * maria_block_size; + } } unique_key_parts=0; @@ -673,11 +686,24 @@ int maria_create(const char *name, enum data_file_type datafile_type, uniquedef->key=keys+i; unique_key_parts+=uniquedef->keysegs; share.state.key_root[keys+i]= HA_OFFSET_ERROR; - tot_length+= (max_rows/(ulong) (((uint) maria_block_size - + + if (tot_length == ULLONG_MAX) + continue; + ulonglong tot_length_part= (max_rows/(ulong) (((uint) maria_block_size - MAX_KEYPAGE_HEADER_SIZE - KEYPAGE_CHECKSUM_SIZE) / - ((MARIA_UNIQUE_HASH_LENGTH + pointer)*2)))* - (ulong) maria_block_size; + ((MARIA_UNIQUE_HASH_LENGTH + pointer)*2))); + + if (tot_length_part >= (ULLONG_MAX / maria_block_size + + ULLONG_MAX % maria_block_size)) + tot_length= ULLONG_MAX; + else + { + if (tot_length > ULLONG_MAX - tot_length_part * maria_block_size) + tot_length= ULLONG_MAX; + else + tot_length+= tot_length_part * maria_block_size; + } } keys+=uniques; /* Each unique has 1 key */ key_segs+=uniques; /* Each unique has 1 key seg */ @@ -746,8 +772,7 @@ int maria_create(const char *name, enum data_file_type datafile_type, Get estimate for index file length (this may be wrong for FT keys) This is used for pointers to other key pages. */ - tmp= (tot_length + maria_block_size * keys * - MARIA_INDEX_BLOCK_MARGIN) / maria_block_size; + tmp= (tot_length / maria_block_size + keys * MARIA_INDEX_BLOCK_MARGIN); /* use maximum of key_file_length we calculated and key_file_length value we From f91eb71e1cfaac56aa1c14b3681dbff3edc7eb0c Mon Sep 17 00:00:00 2001 From: Varun Gupta Date: Sun, 24 Sep 2017 23:37:57 +0530 Subject: [PATCH 7/8] MDEV-8840: ANALYZE FORMAT=JSON produces wrong data with BKA The issue was that r_loops, r_rows and r_filtered in ANALYZE FORMAT= JSON were not calculated for the table on which we were performing the MRR scan in the BKA join Fixed this by adding respective counter in the JOIN_TAB_SCAN_MRR::open and JOIN_TAB_SCAN_MRR::next --- mysql-test/r/explain_json.result | 6 +++--- sql/sql_join_cache.cc | 3 +++ 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/mysql-test/r/explain_json.result b/mysql-test/r/explain_json.result index a46a3bcefa5..9e5515f3cfa 100644 --- a/mysql-test/r/explain_json.result +++ b/mysql-test/r/explain_json.result @@ -1524,12 +1524,12 @@ ANALYZE "key_length": "5", "used_key_parts": ["a"], "ref": ["test.t3.a"], - "r_loops": 0, + "r_loops": 1, "rows": 1, - "r_rows": null, + "r_rows": 10, "r_total_time_ms": "REPLACED", "filtered": 100, - "r_filtered": null, + "r_filtered": 100, "index_condition_bka": "((t4.b + 1) <= (t3.b + 1))" }, "buffer_type": "flat", diff --git a/sql/sql_join_cache.cc b/sql/sql_join_cache.cc index 1023aea4cd4..75e69298809 100644 --- a/sql/sql_join_cache.cc +++ b/sql/sql_join_cache.cc @@ -3877,6 +3877,7 @@ int JOIN_TAB_SCAN_MRR::open() /* Dynamic range access is never used with BKA */ DBUG_ASSERT(join_tab->use_quick != 2); + join_tab->tracker->r_scans++; save_or_restore_used_tabs(join_tab, FALSE); init_mrr_buff(); @@ -3920,6 +3921,8 @@ int JOIN_TAB_SCAN_MRR::next() int rc= join_tab->table->file->multi_range_read_next((range_id_t*)ptr) ? -1 : 0; if (!rc) { + join_tab->tracker->r_rows++; + join_tab->tracker->r_rows_after_where++; /* If a record in in an incremental cache contains no fields then the association for the last record in cache will be equal to cache->end_pos From 19d21b9366c1eb5c1c1e822a09969e9a23bfe2c3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marko=20M=C3=A4kel=C3=A4?= Date: Mon, 25 Sep 2017 09:29:27 +0300 Subject: [PATCH 8/8] Cherry-pick the MDEV-13898 test changes from 10.2 to 10.0 --- mysql-test/suite/innodb/r/innodb-table-online.result | 8 +++++++- mysql-test/suite/innodb/t/innodb-table-online.test | 8 +++++++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/mysql-test/suite/innodb/r/innodb-table-online.result b/mysql-test/suite/innodb/r/innodb-table-online.result index 5440df0bb9c..eb55ba57e36 100644 --- a/mysql-test/suite/innodb/r/innodb-table-online.result +++ b/mysql-test/suite/innodb/r/innodb-table-online.result @@ -143,7 +143,8 @@ ROLLBACK; # session con1 KILL QUERY @id; ERROR 70100: Query execution was interrupted -SET DEBUG_SYNC = 'row_log_table_apply1_before SIGNAL rebuilt WAIT_FOR kill_done'; +SET DEBUG_SYNC = 'row_log_table_apply1_before SIGNAL rebuilt WAIT_FOR dml_done'; +SET DEBUG_SYNC = 'row_log_table_apply2_before SIGNAL applied WAIT_FOR kill_done'; ALTER TABLE t1 ROW_FORMAT=REDUNDANT; # session default SET DEBUG_SYNC = 'now WAIT_FOR rebuilt'; @@ -153,6 +154,10 @@ ddl_background_drop_indexes 0 ddl_background_drop_tables 0 ddl_online_create_index 1 ddl_pending_alter_table 1 +BEGIN; +INSERT INTO t1 VALUES(7,4,2); +ROLLBACK; +SET DEBUG_SYNC = 'now SIGNAL dml_done WAIT_FOR applied'; KILL QUERY @id; SET DEBUG_SYNC = 'now SIGNAL kill_done'; # session con1 @@ -186,6 +191,7 @@ t1 CREATE TABLE `t1` ( `c3` text NOT NULL, PRIMARY KEY (`c1`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT +ALTER TABLE t1 ROW_FORMAT=REDUNDANT; SET DEBUG_SYNC = 'row_log_table_apply1_before SIGNAL rebuilt2 WAIT_FOR dml2_done'; SET lock_wait_timeout = 10; ALTER TABLE t1 ROW_FORMAT=COMPACT, ALGORITHM = INPLACE; diff --git a/mysql-test/suite/innodb/t/innodb-table-online.test b/mysql-test/suite/innodb/t/innodb-table-online.test index 4dce8e4d65f..4e9f2f13344 100644 --- a/mysql-test/suite/innodb/t/innodb-table-online.test +++ b/mysql-test/suite/innodb/t/innodb-table-online.test @@ -157,7 +157,8 @@ let $ID= `SELECT @id := CONNECTION_ID()`; --error ER_QUERY_INTERRUPTED KILL QUERY @id; -SET DEBUG_SYNC = 'row_log_table_apply1_before SIGNAL rebuilt WAIT_FOR kill_done'; +SET DEBUG_SYNC = 'row_log_table_apply1_before SIGNAL rebuilt WAIT_FOR dml_done'; +SET DEBUG_SYNC = 'row_log_table_apply2_before SIGNAL applied WAIT_FOR kill_done'; --send ALTER TABLE t1 ROW_FORMAT=REDUNDANT; @@ -165,6 +166,10 @@ ALTER TABLE t1 ROW_FORMAT=REDUNDANT; connection default; SET DEBUG_SYNC = 'now WAIT_FOR rebuilt'; eval $innodb_metrics_select; +BEGIN; +INSERT INTO t1 VALUES(7,4,2); +ROLLBACK; +SET DEBUG_SYNC = 'now SIGNAL dml_done WAIT_FOR applied'; let $ignore= `SELECT @id := $ID`; KILL QUERY @id; SET DEBUG_SYNC = 'now SIGNAL kill_done'; @@ -190,6 +195,7 @@ ANALYZE TABLE t1; --echo # session con1 connection con1; SHOW CREATE TABLE t1; +ALTER TABLE t1 ROW_FORMAT=REDUNDANT; # Exceed the configured innodb_online_alter_log_max_size. # The actual limit is a multiple of innodb_sort_buf_size,