From 6d3792a9a2e30201ffbdc977e370e96825b24f3b Mon Sep 17 00:00:00 2001 From: Elena Stepanova Date: Sat, 31 Oct 2020 19:49:24 +0200 Subject: [PATCH 1/6] List of unstable tests for 10.2.35 release --- mysql-test/unstable-tests | 722 ++++++++++++++++++-------------------- 1 file changed, 345 insertions(+), 377 deletions(-) diff --git a/mysql-test/unstable-tests b/mysql-test/unstable-tests index 6bffc3cc195..7eac636dc5d 100644 --- a/mysql-test/unstable-tests +++ b/mysql-test/unstable-tests @@ -23,144 +23,126 @@ # ############################################################################## # -# Based on bb-10.2-release 9c84b80f8403f7cdbe41170850bc94b60239e2f6 -# Mon Aug 3 02:57:50 2020 +0300 -# Merge branch '10.1' into 10.2 +# Based on bb-10.2-release 72eea39d4c4a8bcadccfdac457e61abc7b618ff8 +# Fri Oct 30 12:58:16 2020 +0200 +# MDEV-23991 fixup: Initialize the memory -main.alter_table_trans : MDEV-12084 - timeout -main.alter_user : Modified in 10.2.32 -main.analyze_stmt_slow_query_log : MDEV-12237 - Wrong result -main.auth_named_pipe : MDEV-14724 - System error 2 -main.comment_table : Modified in 10.2.33 -main.connect : MDEV-17282 - Wrong result -main.connect2 : MDEV-13885 - Server crash -main.count_distinct2 : MDEV-11768 - timeout -main.create_delayed : MDEV-10605 - failed with timeout -main.create_drop_event : MDEV-16271 - Wrong result -main.create_drop_function : Modified in 10.2.33 -main.cte_recursive : Modified in 10.2.33 -main.ctype_binary : Modified in 10.2.33 -main.ctype_ucs : MDEV-17681 - Data too long for column -main.ctype_upgrade : MDEV-16945 - Error upon mysql_upgrade -main.ctype_utf16 : MDEV-10675: timeout or extra warnings; modified in 10.2.33 -main.ctype_utf16_uca : Modified in 10.2.33 -main.ctype_utf16le : Modified in 10.2.33 -main.ctype_utf32 : Modified in 10.2.33 -main.ctype_utf8 : Modified in 10.2.33 -main.ctype_utf8mb4 : Modified in 10.2.33 -main.ctype_utf8mb4_heap : Include file modified in 10.2.33 -main.ctype_utf8mb4_innodb : Include file modified in 10.2.33 -main.ctype_utf8mb4_myisam : Include file modified in 10.2.33 -main.debug_sync : MDEV-10607 - internal error -main.derived_cond_pushdown : Modified in 10.2.32 -main.derived_opt : MDEV-11768 - timeout -main.dirty_close : MDEV-19368 - mysqltest failed but provided no output -main.distinct : MDEV-14194 - Crash -main.drop_bad_db_type : MDEV-15676 - Wrong result -main.errors : Modified in 10.2.32 -main.events_2 : MDEV-13277 - Crash -main.events_bugs : MDEV-12892 - Crash -main.events_restart : MDEV-12236 - Server shutdown problem; modified in 10.2.32 -main.events_slowlog : MDEV-12821 - Wrong result -main.flush : MDEV-19368 - mysqltest failed but provided no output -main.fulltext : Modified in 10.2.32 -main.func_gconcat : MDEV-21379 - Valgrind warnings -main.func_json : Modified in 10.2.33 -main.func_math : Modified in 10.2.33 -main.gis : MDEV-13411 - wrong result on P8; modified in 10.2.32 -main.gis-rtree : Modified in 10.2.32 -main.gis_notembedded : MDEV-21264 - Wrong result with different default charset -main.grant : Modified in 10.2.33 -main.grant5 : Modified in 10.2.33 -main.group_by : Modified in 10.2.32 -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 - Plan mismatch; modified in 10.2.33 -main.index_merge_myisam : Modified in 10.2.32 -main.information_schema : Modified in 10.2.33 -main.innodb_mrr_cpk : MDEV-23370 - Server crash -main.innodb_mysql_lock : MDEV-7861 - sporadic lock detection failure (Fixed in 10.3+, MDEV-22947) -main.kill-2 : MDEV-13257 - Wrong result -main.kill_processlist-6619 : MDEV-10793 - Wrong result -main.loaddata : MDEV-19368 - mysqltest failed but provided no output -main.locale : MDEV-20521 - Missing warning; configuration added in 10.2.32 -main.lock : Modified in 10.2.33 -main.log_slow : MDEV-13263 - Wrong result -main.log_tables : Modified in 10.2.33 -main.log_tables-big : MDEV-13408 - wrong result -main.mdev-504 : MDEV-15171 - warning -main.mdev375 : MDEV-10607 - sporadic "can't connect"; modified in 10.2.32 -main.merge : MDEV-10607 - sporadic "can't connect" -main.multi_update_debug : Modified in 10.2.32 -main.mysql_client_test : MDEV-19369 - error: 5888, status: 23, errno: 2; modified in 10.2.32 -main.mysql_client_test_comp : MDEV-16641 - Error in exec -main.mysql_client_test_nonblock : CONC-208 - Error on Power; MDEV-15096 - exec failed -main.mysql_upgrade_noengine : MDEV-14355 - Wrong result -main.mysqld--defaults-file : Modified in 10.2.32 -main.mysqld_option_err : MDEV-21571 - Crash on bootstrap -main.mysqldump : MDEV-14800 - Stack smashing detected; modified in 10.2.32 -main.mysqlhotcopy_myisam : MDEV-10995 - Hang on debug -main.mysqlslap : MDEV-11801 - timeout -main.mysqltest : MDEV-9269 - fails on Alpha; MDEV-13887 - Wrong result -main.mysqltest_tracking_info : Modified in 10.2.33 -main.nested_profiling : Added in 10.2.33 -main.old-mode : MDEV-19373 - Wrong result -main.openssl_6975 : MDEV-17184 - Failures with OpenSSL 1.1.1 -main.order_by : Modified in 10.2.33 -main.order_by_optimizer_innodb : MDEV-10683 - Wrong result -main.parser : Modified in 10.2.33 -main.partition : Modified in 10.2.33 -main.partition_alter : Modified in 10.2.33 -main.partition_debug_sync : MDEV-15669 - Deadlock found when trying to get lock -main.partition_innodb : MDEV-23370 - Server crash; modified in 10.2.32 -main.partition_innodb_plugin : MDEV-12901 - Valgrind warnings -main.partition_innodb_semi_consistent : MDEV-19411 - Failed to start mysqld.1 -main.plugin : Modified in 10.2.33 -main.processlist_notembedded : Modified in 10.2.33 -main.ps : MDEV-11017 - sporadic wrong Prepared_stmt_count; modified in 10.2.33 -main.query_cache : MDEV-16180 - Wrong result; modified in 10.2.33 -main.query_cache_debug : MDEV-15281 - Query cache is disabled -main.range : Modified in 10.2.32 -main.range_innodb : MDEV-23371 - Server crash; modified in 10.2.32 -main.range_vs_index_merge_innodb : MDEV-15283 - Server has gone away -main.repair : Modified in 10.2.33 -main.rpl_mysql_upgrade_slave_repo_check : Added in 10.2.32 -main.selectivity : Modified in 10.2.33 -main.set_statement : MDEV-13183 - Wrong result -main.set_statement_notembedded : MDEV-19414 - Wrong result -main.shm : MDEV-12727 - Mismatch, ERROR 2013 -main.show_explain : MDEV-10674 - Wrong result code -main.sp-error : Modified in 10.2.33 -main.sp-security : MDEV-10607 - sporadic "can't connect" -main.sp2 : Added in 10.2.33 -main.sp_notembedded : MDEV-10607 - internal error -main.ssl : MDEV-17184 - Failures with OpenSSL 1.1.1 -main.ssl_ca : MDEV-10895 - SSL connection error on Power -main.ssl_cipher : MDEV-17184 - Failures with OpenSSL 1.1.1 -main.ssl_crl : Modified in 10.2.33 -main.ssl_timeout : MDEV-11244 - Crash -main.stat_tables_innodb : Modified in 10.2.33 -main.stat_tables_par_innodb : MDEV-14155 - Wrong rounding -main.stat_tables_partition : Modified in 10.2.33 -main.status : MDEV-13255 - Wrong result -main.subselect4 : Modified in 10.2.33 -main.subselect_exists2in : Modified in 10.2.33 -main.subselect_innodb : MDEV-10614 - Sporadic wrong results -main.tc_heuristic_recover : MDEV-14189 - Wrong result -main.temp_table : Modified in 10.2.33 -main.type_blob : MDEV-15195 - Wrong result -main.type_date : Modified in 10.2.33 -main.type_datetime : Modified in 10.2.33 -main.type_datetime_hires : MDEV-10687 - Timeout -main.type_float : Modified in 10.2.33 -main.type_time : Modified in 10.2.33 -main.udf : Modified in 10.2.33 -main.union : Modified in 10.2.33 -main.userstat : MDEV-12904 - SSL errors -main.wait_timeout : MDEV-19023 - Lost connection to MySQL server during query -main.win : Modified in 10.2.33 -main.win_ntile : Modified in 10.2.33 -main.xa : MDEV-11769 - lock wait timeout +main.alter_table : Modified in 10.2.35 +main.alter_table_trans : MDEV-12084 - timeout +main.analyze_stmt_slow_query_log : MDEV-12237 - Wrong result +main.aria_icp_debug : Added in 10.2.35 +main.auth_named_pipe : MDEV-14724 - System error 2 +main.blackhole : Modified in 10.2.35 +main.bootstrap_innodb : Added in 10.2.35 +main.connect : MDEV-17282 - Wrong result +main.connect2 : MDEV-13885 - Server crash +main.count_distinct2 : MDEV-11768 - timeout +main.create_delayed : MDEV-10605 - failed with timeout +main.create_drop_event : MDEV-16271 - Wrong result +main.ctype_ucs : MDEV-17681 - Data too long for column +main.ctype_upgrade : MDEV-16945 - Error upon mysql_upgrade +main.ctype_utf16 : MDEV-10675: timeout or extra warnings +main.ctype_utf8 : Modified in 10.2.35 +main.debug_sync : MDEV-10607 - internal error +main.derived_opt : MDEV-11768 - timeout +main.dirty_close : MDEV-19368 - mysqltest failed but provided no output +main.distinct : MDEV-14194 - Crash +main.drop_bad_db_type : MDEV-15676 - Wrong result +main.events_2 : MDEV-13277 - Crash +main.events_bugs : MDEV-12892 - Crash +main.events_restart : MDEV-12236 - Server shutdown problem +main.events_slowlog : MDEV-12821 - Wrong result +main.fast_prefix_index_fetch_innodb : Modified in 10.2.35 +main.flush : MDEV-19368 - mysqltest failed but provided no output +main.func_gconcat : MDEV-21379 - Valgrind warnings +main.func_json : Modified in 10.2.35 +main.func_test : Modified in 10.2.35 +main.gis : MDEV-13411 - wrong result on P8 +main.gis_notembedded : MDEV-21264 - Wrong result with different default charset +main.grant : Modified in 10.2.35 +main.grant5 : Modified in 10.2.35 +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 - Plan mismatch +main.information_schema : Modified in 10.2.35 +main.innodb_ext_key : Modified in 10.2.35 +main.innodb_icp_debug : Added in 10.2.35 +main.innodb_mysql_lock : MDEV-7861 - sporadic lock detection failure (Fixed in 10.3+, MDEV-22947) +main.kill-2 : MDEV-13257 - Wrong result +main.kill_processlist-6619 : MDEV-10793 - Wrong result +main.limit_rows_examined : Modified in 10.2.35 +main.loaddata : MDEV-19368 - mysqltest failed but provided no output +main.locale : MDEV-20521 - Missing warning +main.lock_view : Added in 10.2.35 +main.log_slow : MDEV-13263 - Wrong result +main.log_tables : Modified in 10.2.35 +main.log_tables-big : MDEV-13408 - wrong result +main.mdev-504 : MDEV-15171 - warning +main.mdev375 : MDEV-10607 - sporadic "can't connect" +main.merge : MDEV-10607 - sporadic "can't connect" +main.multi_update_big : Modified in 10.2.35 +main.myisam_icp_debug : Added in 10.2.35 +main.mysql_client_test : MDEV-19369 - error: 5888, status: 23, errno: 2 +main.mysql_client_test_comp : MDEV-16641 - Error in exec +main.mysql_client_test_nonblock : CONC-208 - Error on Power; MDEV-15096 - exec failed +main.mysql_upgrade : Modified in 10.2.35 +main.mysql_upgrade_noengine : MDEV-14355 - Wrong result +main.mysqlbinlog_row_minimal : Modified in 10.2.35 +main.mysqld--help : Modified in 10.2.35 +main.mysqld_option_err : MDEV-21571 - Crash on bootstrap +main.mysqldump : MDEV-14800 - Stack smashing detected +main.mysqlhotcopy_myisam : MDEV-10995 - Hang on debug +main.mysqlslap : MDEV-11801 - timeout +main.mysqltest : MDEV-9269 - fails on Alpha; MDEV-13887 - Wrong result +main.old-mode : MDEV-19373 - Wrong result +main.openssl_6975 : MDEV-17184 - Failures with OpenSSL 1.1.1 +main.order_by : Modified in 10.2.35 +main.order_by_optimizer_innodb : MDEV-10683 - Wrong result +main.parser : Modified in 10.2.35 +main.partition : Modified in 10.2.35 +main.partition_debug_sync : MDEV-15669 - Deadlock found when trying to get lock +main.partition_innodb_plugin : MDEV-12901 - Valgrind warnings +main.partition_innodb_semi_consistent : MDEV-19411 - Failed to start mysqld.1 +main.plugin_innodb : Modified in 10.2.35 +main.pool_of_threads : Modified in 10.2.35 +main.precedence : Added in 10.2.35 +main.precedence_bugs : Added in 10.2.35 +main.processlist_notembedded : Modified in 10.2.35 +main.ps : MDEV-11017 - sporadic wrong Prepared_stmt_count +main.query_cache : MDEV-16180 - Wrong result +main.query_cache_debug : MDEV-15281 - Query cache is disabled +main.range : Modified in 10.2.35 +main.range_innodb : MDEV-23371 - Server crash +main.range_vs_index_merge_innodb : MDEV-15283 - Server has gone away +main.set_statement : MDEV-13183 - Wrong result +main.set_statement_notembedded : MDEV-19414 - Wrong result +main.shm : MDEV-12727 - Mismatch, ERROR 2013 +main.show_explain : MDEV-10674 - Wrong result code +main.sp-security : MDEV-10607 - sporadic "can't connect" +main.sp_notembedded : MDEV-10607 - internal error +main.ssl : MDEV-17184 - Failures with OpenSSL 1.1.1 +main.ssl_ca : MDEV-10895 - SSL connection error on Power +main.ssl_cipher : MDEV-17184 - Failures with OpenSSL 1.1.1 +main.ssl_timeout : MDEV-11244 - Crash +main.stat_tables_par_innodb : MDEV-14155 - Wrong rounding +main.status : MDEV-13255 - Wrong result +main.subselect4 : Modified in 10.2.35 +main.subselect_innodb : MDEV-10614 - Sporadic wrong results; modified in 10.2.35 +main.sum_distinct-big : Modified in 10.2.35 +main.tc_heuristic_recover : MDEV-14189 - Wrong result +main.temp_table_symlink : MDEV-24058 - Wrong error code; added in 10.2.35 +main.type_blob : MDEV-15195 - Wrong result +main.type_date : Modified in 10.2.35 +main.type_datetime : Modified in 10.2.35 +main.type_datetime_hires : MDEV-10687 - Timeout +main.type_newdecimal : Modified in 10.2.35 +main.type_temporal_innodb : MDEV-24025 - Wrong result +main.udf : Modified in 10.2.35 +main.userstat : MDEV-12904 - SSL errors +main.view : Modified in 10.2.35 +main.wait_timeout : MDEV-19023 - Lost connection to MySQL server during query +main.win : Modified in 10.2.35 +main.xa : MDEV-11769 - lock wait timeout #----------------------------------------------------------------------- @@ -175,15 +157,18 @@ archive-test_sql_discovery.discover : MDEV-16817 - Table marked as crashed #----------------------------------------------------------------------- -binlog.binlog_commit_wait : MDEV-10150 - Mismatch -binlog.binlog_invalid_read_in_rotate : MDEV-22455 - Server crash -binlog.binlog_killed : MDEV-12925 - Wrong result -binlog.binlog_max_extension : MDEV-19762 - Crash on shutdown -binlog.binlog_mysqlbinlog_row_frag : Modified in 10.2.33 -binlog.binlog_no_uniqfile_crash : Added in 10.2.33 -binlog.binlog_xa_recover : MDEV-8517 - Extra checkpoint -binlog.flashback-largebinlog : MDEV-19764 - Out of memory -binlog.load_data_stm_view : MDEV-16948 - Wrong result +binlog.binlog_commit_wait : MDEV-10150 - Mismatch +binlog.binlog_killed : MDEV-12925 - Wrong result +binlog.binlog_max_extension : MDEV-19762 - Crash on shutdown +binlog.binlog_mysqlbinlog_row : Modified in 10.2.35 +binlog.binlog_mysqlbinlog_row_frag : Modified in 10.2.35 +binlog.binlog_no_uniqfile_crash : MDEV-24078 - Server crash upon shutdown +binlog.binlog_recover_checksum_error : Added in 10.2.35 +binlog.binlog_show_binlog_event_random_pos : Modified in 10.2.35 +binlog.binlog_stm_mix_innodb_myisam : MDEV-24057 - Wrong result +binlog.binlog_xa_recover : MDEV-8517 - Extra checkpoint +binlog.flashback-largebinlog : MDEV-19764 - Out of memory +binlog.load_data_stm_view : MDEV-16948 - Wrong result #----------------------------------------------------------------------- @@ -192,9 +177,8 @@ binlog_encryption.encrypted_master : MDEV-14201 - Extra wa binlog_encryption.encrypted_master_switch_to_unencrypted : MDEV-14190 - Can't init tc log binlog_encryption.encryption_combo : MDEV-14199 - Table is marked as crashed binlog_encryption.multisource : MDEV-21289 - Wrong error code -binlog_encryption.rpl_binlog_errors : MDEV-12742 - Crash; include file modified in 10.2.32 +binlog_encryption.rpl_binlog_errors : MDEV-12742 - Crash binlog_encryption.rpl_checksum : MDEV-16951 - Wrong result -binlog_encryption.rpl_corruption : Include file modified in 10.2.32 binlog_encryption.rpl_gtid_basic : MDEV-16947 - Server failed to start binlog_encryption.rpl_incident : MDEV-21569 - mutex: LOCK_global_system_variables unlocking binlog_encryption.rpl_loadfile : MDEV-16645 - Timeout in include @@ -209,9 +193,10 @@ binlog_encryption.rpl_typeconv : MDEV-14362 - Lost con #----------------------------------------------------------------------- -connect.pivot : MDEV-14803 - Failed to discover table -connect.vcol : MDEV-12374 - Fails on Windows -connect.zip : MDEV-13884 - Wrong result +connect.pivot : MDEV-14803 - Failed to discover table +connect.updelx : Modified in 10.2.35 +connect.vcol : MDEV-12374 - Fails on Windows +connect.zip : MDEV-13884 - Wrong result #----------------------------------------------------------------------- @@ -219,36 +204,40 @@ disks.disks_notembedded : MDEV-21587 - Wrong result #----------------------------------------------------------------------- -encryption.create_or_replace : MDEV-16115 - Trying to access tablespace -encryption.debug_key_management : MDEV-13841 - Timeout -encryption.encrypt_and_grep : MDEV-13765 - Wrong result -encryption.innochecksum : MDEV-13644 - Assertion failure -encryption.innodb-bad-key-change2 : MDEV-19118 - Can't connect through socket -encryption.innodb-compressed-blob : MDEV-14728 - Unable to get certificate -encryption.innodb-discard-import : MDEV-19113 - Timeout -encryption.innodb-encryption-alter : MDEV-13566 - Lock wait timeout -encryption.innodb-first-page-read : MDEV-14356 - Timeout in wait condition -encryption.innodb-force-corrupt : MDEV-17286 - SSL error -encryption.innodb-missing-key : MDEV-17286 - SSL error -encryption.innodb-page_encryption : MDEV-10641 - mutex problem -encryption.innodb-read-only : MDEV-16563 - Crash on startup -encryption.innodb-redo-badkey : MDEV-12898 - Server hang on startup -encryption.innodb-remove-encryption : MDEV-16493 - Timeout in wait condition -encryption.innodb-spatial-index : MDEV-13746 - Wrong result -encryption.innodb_encrypt_key_rotation_age : MDEV-19763 - Timeout -encryption.innodb_encrypt_log : MDEV-13725 - Wrong result -encryption.innodb_encrypt_log_corruption : MDEV-14379 - Server crash -encryption.innodb_encrypt_temporary_tables : MDEV-20142 - Wrong result; modified in 10.2.33 -encryption.innodb_encryption : MDEV-14728 - Unable to get certificate; MDEV-15675 - Timeout -encryption.innodb_encryption-page-compression : MDEV-12630 - crash or assertion failure -encryption.innodb_encryption_discard_import : MDEV-16116 - Wrong result -encryption.innodb_encryption_is : MDEV-12898 - Server hang on startup -encryption.innodb_encryption_row_compressed : MDEV-16113 - Crash -encryption.innodb_first_page : MDEV-10689 - Crash -encryption.innodb_onlinealter_encryption : MDEV-17287 - SIGABRT on server restart -encryption.innodb_scrub : MDEV-8139 - scrubbing tests need fixing (Fixed in 10.5+) -encryption.innodb_scrub_background : MDEV-8139 - scrubbing tests need fixing (Fixed in 10.5+) -encryption.innodb_scrub_compressed : MDEV-8139 - scrubbing tests need fixing (Fixed in 10.5+) +encryption.create_or_replace : Modified in 10.2.35 +encryption.create_or_replace_big : Added in 10.2.35 +encryption.debug_key_management : MDEV-13841 - Timeout +encryption.encrypt_and_grep : MDEV-13765 - Wrong result +encryption.innochecksum : MDEV-13644 - Assertion failure +encryption.innodb-bad-key-change2 : MDEV-19118 - Can't connect through socket +encryption.innodb-compressed-blob : MDEV-14728 - Unable to get certificate +encryption.innodb-discard-import : MDEV-19113 - Timeout +encryption.innodb-encryption-alter : MDEV-13566 - Lock wait timeout +encryption.innodb-first-page-read : MDEV-14356 - Timeout in wait condition +encryption.innodb-force-corrupt : MDEV-17286 - SSL error +encryption.innodb-missing-key : MDEV-17286 - SSL error +encryption.innodb-page_encryption : MDEV-10641 - mutex problem +encryption.innodb-page_encryption_compression : Modified in 10.2.35 +encryption.innodb-page_encryption_log_encryption : Modified in 10.2.35 +encryption.innodb-read-only : MDEV-16563 - Crash on startup +encryption.innodb-redo-badkey : MDEV-12898 - Server hang on startup +encryption.innodb-remove-encryption : MDEV-16493 - Timeout in wait condition +encryption.innodb-spatial-index : MDEV-13746 - Wrong result +encryption.innodb_encrypt_key_rotation_age : MDEV-19763 - Timeout +encryption.innodb_encrypt_log : MDEV-13725 - Wrong result +encryption.innodb_encrypt_log_corruption : MDEV-14379 - Server crash +encryption.innodb_encrypt_temporary_tables : MDEV-20142 - Wrong result +encryption.innodb_encryption : MDEV-14728 - Unable to get certificate; MDEV-15675 - Timeout +encryption.innodb_encryption-page-compression : MDEV-12630 - crash or assertion failure +encryption.innodb_encryption_discard_import : MDEV-16116 - Wrong result +encryption.innodb_encryption_is : MDEV-12898 - Server hang on startup +encryption.innodb_encryption_row_compressed : MDEV-16113 - Crash +encryption.innodb_first_page : MDEV-10689 - Crash +encryption.innodb_onlinealter_encryption : MDEV-17287 - SIGABRT on server restart +encryption.innodb_scrub : MDEV-8139 - scrubbing tests need fixing (Fixed in 10.5+) +encryption.innodb_scrub_background : MDEV-8139 - scrubbing tests need fixing (Fixed in 10.5+) +encryption.innodb_scrub_compressed : MDEV-8139 - scrubbing tests need fixing (Fixed in 10.5+) +encryption.tempfiles_encrypted : Added in 10.2.35 #----------------------------------------------------------------------- @@ -296,154 +285,151 @@ galera_3nodes.* : Suite is not stable yet #----------------------------------------------------------------------- -gcol.gcol_bugfixes : Modified in 10.2.33 +gcol.gcol_keys_innodb : Include file modified in 10.2.35 +gcol.gcol_keys_myisam : Include file modified in 10.2.35 +gcol.gcol_partition_innodb : Include file modified in 10.2.35 +gcol.gcol_update : Include file modified in 10.2.35 gcol.innodb_virtual_basic : MDEV-16950 - Failing assertion -gcol.innodb_virtual_debug_purge : MDEV-16952 - Wrong result; modified in 10.2.33 +gcol.innodb_virtual_debug : MDEV-23111 - Server crash +gcol.innodb_virtual_debug_purge : Include file modified in 10.2.35 +gcol.innodb_virtual_fk : Modified in 10.2.35 +gcol.innodb_virtual_index : Modified in 10.2.35 +gcol.innodb_virtual_purge : Include file modified in 10.2.35 #----------------------------------------------------------------------- innodb.101_compatibility : MDEV-13891 - Wrong result innodb.alter_copy : MDEV-16181 - Assertion failure innodb.alter_crash : MDEV-16944 - The process cannot access the file -innodb.alter_missing_tablespace : Modified in 10.2.32 -innodb.analyze_table : Modified in 10.2.33 +innodb.alter_table : Modified in 10.2.35 innodb.binlog_consistent : MDEV-10618 - Server fails to start innodb.blob-crash : MDEV-20481 - Failures upon recovery -innodb.buf_pool_resize_oom : Added in 10.2.32 -innodb.corrupted_during_recovery : Modified in 10.2.32 innodb.doublewrite : MDEV-12905 - Server crash -innodb.foreign_key : Modified in 10.2.33 -innodb.foreign_key_debug : Added in 10.2.33 +innodb.foreign-keys : Modified in 10.2.35 +innodb.foreign_key : Modified in 10.2.35 innodb.group_commit_crash : MDEV-14191 - InnoDB registration failed +innodb.group_commit_crash_no_optimize_thread : MDEV-11770 - Checksum mismatch innodb.ibuf_not_empty : MDEV-19021 - Wrong result +innodb.innodb : Modified in 10.2.35 +innodb.innodb-64k : Modified in 10.2.35 innodb.innodb-64k-crash : MDEV-13872 - Failure and crash on startup -innodb.innodb-alter : Modified in 10.2.33 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; modified in 10.2.32 +innodb.innodb-blob : MDEV-12053 - Client crash innodb.innodb-change-buffer-recovery : MDEV-19115 - Lost connection to MySQL server during query innodb.innodb-fk : MDEV-13832 - Assertion failure on shutdown innodb.innodb-get-fk : MDEV-13276 - Server crash +innodb.innodb-index : Include file modified in 10.2.35 +innodb.innodb-index-debug : Include file modified in 10.2.35 innodb.innodb-index-online : MDEV-14809 - Cannot save statistics innodb.innodb-page_compression_default : MDEV-13644 - Assertion failure innodb.innodb-page_compression_lzma : MDEV-14353 - Wrong result innodb.innodb-page_compression_zip : MDEV-10641 - mutex problem innodb.innodb-table-online : MDEV-13894 - Wrong result -innodb.innodb-ucs2 : MDEV-23370 - Server crash -innodb.innodb-wl5522 : Modified in 10.2.32 innodb.innodb-wl5522-1 : MDEV-22945 - Server crash -innodb.innodb-wl5522-debug : MDEV-14200 - Wrong errno; modified in 10.2.32 +innodb.innodb-wl5522-debug : MDEV-14200 - Wrong errno innodb.innodb_buffer_pool_dump_pct : MDEV-20139 - Timeout in wait_condition.inc -innodb.innodb_buffer_pool_load_now : Added in 10.2.32 -innodb.innodb_buffer_pool_resize_debug : Added in 10.2.32 innodb.innodb_buffer_pool_resize_with_chunks : MDEV-16964 - Assertion failure innodb.innodb_bug14147491 : MDEV-11808 - Index is corrupt innodb.innodb_bug30423 : MDEV-7311 - Wrong result innodb.innodb_bug47167 : MDEV-20524 - Table 'user' is marked as crashed and should be repaired innodb.innodb_bug48024 : MDEV-14352 - Assertion failure innodb.innodb_bulk_create_index_replication : MDEV-15273 - Slave failed to start -innodb.innodb_defrag_concurrent : Modified in 10.2.32 innodb.innodb_defrag_stats_many_tables : MDEV-14198 - Table is full -innodb.innodb_force_recovery_rollback : Added in 10.2.33 innodb.innodb_information_schema : MDEV-8851 - Wrong result innodb.innodb_max_recordsize_32k : MDEV-14801 - Operation failed innodb.innodb_max_recordsize_64k : MDEV-15203 - Wrong result innodb.innodb_monitor : MDEV-10939 - Testcase timeout innodb.innodb_mysql : MDEV-19873 - Wrong result innodb.innodb_stats : MDEV-10682 - wrong result +innodb.innodb_stats_drop_locked : Modified in 10.2.35 innodb.innodb_stats_persistent : MDEV-21567 - Wrong result in execution plan innodb.innodb_stats_persistent_debug : MDEV-14801 - Operation failed innodb.innodb_sys_semaphore_waits : MDEV-10331 - Semaphore wait -innodb.innodb_sys_var_valgrind : Added in 10.2.32 +innodb.innodb_trx_weight : Configuration deleted in 10.2.35 innodb.innodb_zip_innochecksum2 : MDEV-13882 - Warning: difficult to find free blocks innodb.log_corruption : MDEV-13251 - Wrong result innodb.log_data_file_size : MDEV-14204 - Server failed to start innodb.log_file_name : MDEV-14193 - Exception -innodb.log_file_name_debug : Modified in 10.2.32 innodb.log_file_size : MDEV-15668 - Not found pattern innodb.monitor : MDEV-16179 - Wrong result -innodb.mvcc : Modified in 10.2.33 innodb.purge_secondary : MDEV-15681 - Wrong result innodb.purge_thread_shutdown : MDEV-13792 - Wrong result -innodb.read_only_recover_committed : Modified in 10.2.33 innodb.read_only_recovery : MDEV-13886 - Server crash innodb.recovery_shutdown : MDEV-15671 - Checksum mismatch in datafile -innodb.row_format_redundant : MDEV-15192 - Trying to access missing tablespace +innodb.row_format_redundant : MDEV-15192 - Trying to access missing tablespace; modified in 10.2.35 +innodb.stats_persistent : Added in 10.2.35 innodb.table_definition_cache_debug : MDEV-14206 - Extra warning innodb.table_flags : MDEV-13572 - Wrong result; MDEV-19374 - Server failed to start +innodb.temp_table_savepoint : MDEV-24077 - Assertion failure innodb.temporary_table : MDEV-13265 - Wrong result -innodb.truncate_foreign : Modified in 10.2.33 +innodb.truncate : Modified in 10.2.35 innodb.undo_truncate : MDEV-17340 - Server hung innodb.undo_truncate_recover : MDEV-17679 - MySQL server has gone away +innodb.update-cascade : Combinations added in 10.2.35 innodb.update_time : MDEV-14804 - Wrong result -innodb.xa_recovery : MDEV-15279 - mysqld got exception; modified in 10.2.33 -innodb.xa_recovery_debug : Modified in 10.2.33 +innodb.xa_recovery : MDEV-15279 - mysqld got exception #----------------------------------------------------------------------- -innodb_fts.innodb-fts-ddl : Modified in 10.2.33 -innodb_fts.innodb_fts_misc : MDEV-23370 - Server crash; modified in 10.2.32 +innodb_fts.basic : Modified in 10.2.35 +innodb_fts.fulltext2 : MDEV-24074 - Server crash +innodb_fts.innodb_fts_misc_1 : Modified in 10.2.35 innodb_fts.innodb_fts_misc_debug : MDEV-14156 - Unexpected warning innodb_fts.innodb_fts_plugin : MDEV-13888 - Errors in server log innodb_fts.innodb_fts_stopword_charset : MDEV-13259 - Table crashed -innodb_fts.misc_debug : Modified in 10.2.32 -innodb_fts.misc_debug2 : Added in 10.2.32 -innodb_fts.stopword : Added in 10.2.32 -innodb_fts.sync : Modified in 10.2.32 innodb_fts.sync_ddl : MDEV-21568 - Errno: 2000 #----------------------------------------------------------------------- -innodb_gis.bug16236208 : Re-enabled in 10.2.32; modified in 10.2.32 -innodb_gis.bug16266012 : Re-enabled in 10.2.32; modified in 10.2.32 -innodb_gis.geometry : Re-enabled in 10.2.32; modified in 10.2.32 -innodb_gis.gis_split_inf : Re-enabled in 10.2.32; modified in 10.2.32 innodb_gis.gis_split_nan : MDEV-21678 - Cannot get geometry object -innodb_gis.point_big : Re-enabled in 10.2.32 +innodb_gis.rtree_add_index : Include file modified in 10.2.35 +innodb_gis.rtree_compress : Include file modified in 10.2.35 innodb_gis.rtree_concurrent_srch : MDEV-15284 - Wrong result with embedded -innodb_gis.rtree_multi_pk : Re-enabled in 10.2.32; modified in 10.2.32 -innodb_gis.rtree_purge : MDEV-15275 - Timeout +innodb_gis.rtree_purge : MDEV-15275 - Timeout; include file modified in 10.2.35 innodb_gis.rtree_recovery : MDEV-15274 - Error on check -innodb_gis.rtree_split : MDEV-14208 - Too many arguments; modified in 10.2.32 -innodb_gis.rtree_undo : MDEV-14456 - Timeout in include file +innodb_gis.rtree_split : MDEV-14208 - Too many arguments +innodb_gis.rtree_undo : MDEV-14456 - Timeout in include file; include file modified in 10.2.35 innodb_gis.types : MDEV-15679 - Table is marked as crashed #----------------------------------------------------------------------- innodb_zip.cmp_per_index : MDEV-14490 - Table is marked as crashed -innodb_zip.create_options : MDEV-23370 - Server crash +innodb_zip.create_options : MDEV-24076 - Assertion failure innodb_zip.index_large_prefix_4k : MDEV-21679 - Row size too large innodb_zip.innochecksum_3 : MDEV-13279 - Extra warnings -innodb_zip.recover : MDEV-22512 - Server fails to restart -innodb_zip.wl5522_debug_zip : MDEV-11600 - Operating system error number 2; modified in 10.2.32 -innodb_zip.wl5522_zip : Modified in 10.2.32 +innodb_zip.recover : MDEV-22512 - Server fails to restart (Fixed in 10.5+) +innodb_zip.wl5522_debug_zip : MDEV-11600 - Operating system error number 2 innodb_zip.wl6470_1 : MDEV-14240 - Assertion failure innodb_zip.wl6501_1 : MDEV-10891 - Can't create UNIX socket innodb_zip.wl6501_scale_1 : MDEV-13254 - Timeout, MDEV-14104 - Error 192 #----------------------------------------------------------------------- -maria.bulk_insert_crash : Added in 10.2.33 -maria.encrypt-no-key : Added in 10.2.33 maria.insert_select : MDEV-12757 - Timeout maria.insert_select-7314 : MDEV-16492 - Timeout maria.maria : MDEV-14430 - Extra warning #----------------------------------------------------------------------- -mariabackup.apply-log-only : MDEV-20135 - Timeout -mariabackup.backup_lock_wait_timeout : Added in 10.2.32 -mariabackup.data_directory : MDEV-15270 - Error on exec -mariabackup.full_backup : MDEV-16571 - Wrong result -mariabackup.huge_lsn : Modified in 10.2.33 -mariabackup.incremental_backup : MDEV-21222 - Memory allocation failure; modified in 10.2.33 -mariabackup.incremental_encrypted : MDEV-15667 - Timeout -mariabackup.innodb_xa_rollback : Added in 10.2.32 -mariabackup.mdev-14447 : MDEV-15201 - Timeout -mariabackup.partial_exclude : MDEV-15270 - Error on exec; modified in 10.2.32 -mariabackup.xb_compressed_encrypted : MDEV-14812 - Segmentation fault -mariabackup.xb_page_compress : MDEV-14810 - status: 1, errno: 11 -mariabackup.xb_partition : MDEV-17584 - Crash on shutdown +mariabackup.apply-log-only : MDEV-20135 - Timeout +mariabackup.backup_ssl : MDEV-24073 - Server crash upon shutdown +mariabackup.data_directory : MDEV-15270 - Error on exec +mariabackup.ddl_incremental_encrypted : Added in 10.2.35 +mariabackup.full_backup : MDEV-16571 - Wrong result +mariabackup.huge_lsn : MDEV-17286 - SSL error +mariabackup.incremental_backup : MDEV-21222 - Memory allocation failure +mariabackup.incremental_ddl_during_backup : Modified in 10.2.35 +mariabackup.incremental_encrypted : MDEV-15667 - Timeout +mariabackup.innodb_redo_overwrite : Added in 10.2.35 +mariabackup.mdev-14447 : MDEV-15201 - Timeout +mariabackup.mlog_index_load : Modified in 10.2.35 +mariabackup.partial_exclude : MDEV-15270 - Error on exec +mariabackup.rpl_slave_info : Added in 10.2.35 +mariabackup.unencrypted_page_compressed : Include file modified in 10.2.35 +mariabackup.xb_compressed_encrypted : MDEV-14812 - Segmentation fault +mariabackup.xb_page_compress : MDEV-14810 - status: 1, errno: 11 +mariabackup.xb_partition : MDEV-17584 - Crash on shutdown #----------------------------------------------------------------------- @@ -473,23 +459,17 @@ multi_source.status_vars : MDEV-4632 - failed while waiting for Slave_received_h #----------------------------------------------------------------------- -parts.longname : Modified in 10.2.33 -parts.partition_alter2_2_maria : MDEV-14364 - Lost connection to MySQL server during query -parts.partition_auto_increment_archive : MDEV-16491 - Marked as crashed and should be repaired; include file modified in 10.2.33 -parts.partition_auto_increment_blackhole : Include file modified in 10.2.33 -parts.partition_auto_increment_innodb : Include file modified in 10.2.33 -parts.partition_auto_increment_maria : MDEV-14430 - Extra warning; include file modified in 10.2.33 -parts.partition_auto_increment_memory : Include file modified in 10.2.33 -parts.partition_auto_increment_myisam : Include file modified in 10.2.33 -parts.partition_debug : Modified in 10.2.33 -parts.partition_debug_innodb : MDEV-10891 - Can't create UNIX socket; MDEV-15095 - Table doesn't exist -parts.partition_exch_qa_10 : MDEV-11765 - wrong result -parts.partition_innodb_status_file : MDEV-12901 - Valgrind -parts.partition_special_innodb : MDEV-16942 - Timeout +parts.partition_alter2_2_maria : MDEV-14364 - Lost connection to MySQL server during query +parts.partition_auto_increment_archive : MDEV-16491 - Marked as crashed and should be repaired +parts.partition_auto_increment_maria : MDEV-14430 - Extra warning +parts.partition_debug_innodb : MDEV-10891 - Can't create UNIX socket; MDEV-15095 - Table doesn't exist +parts.partition_exch_qa_10 : MDEV-11765 - wrong result +parts.partition_innodb_status_file : MDEV-12901 - Valgrind +parts.partition_special_innodb : MDEV-16942 - Timeout #----------------------------------------------------------------------- -percona.* : MDEV-10997 - Not maintained +percona.* : MDEV-10997 - Not maintained (Fixed in 10.3+) #----------------------------------------------------------------------- @@ -504,6 +484,7 @@ perfschema.hostcache_ipv6_addrinfo_again_allow : MDEV-12752 - Crash perfschema.hostcache_ipv6_addrinfo_bad_allow : MDEV-13260 - Crash perfschema.hostcache_ipv6_ssl : MDEV-10696 - Crash perfschema.privilege_table_io : MDEV-13184 - Extra lines +perfschema.relaylog : MDEV-24075 - Extra warning perfschema.rpl_gtid_func : MDEV-16897 - Wrong result perfschema.socket_instances_func : MDEV-20140 - Wrong result perfschema.socket_summary_by_event_name_func : MDEV-10622 - Wrong result @@ -520,10 +501,9 @@ perfschema_stress.* : MDEV-10996 - Not maintained #----------------------------------------------------------------------- -plugins.audit_null_debug : Modified in 10.2.33 plugins.feedback_plugin_send : MDEV-7932, MDEV-11118 - Connection problems and such plugins.processlist : MDEV-16574 - Wrong result -plugins.server_audit : MDEV-9562 - crashes on sol10-sparc; modified in 10.2.32 +plugins.server_audit : MDEV-9562 - crashes on sol10-sparc; modified in 10.2.35 plugins.thread_pool_server_audit : MDEV-14295 - Wrong result #----------------------------------------------------------------------- @@ -559,113 +539,107 @@ rocksdb_rpl.rpl_binlog_xid_count : MDEV-16644 - Server crash #----------------------------------------------------------------------- -roles.create_and_grant_role : MDEV-11772 - wrong result -roles.drop_current_role : Added in 10.2.33 -roles.set_default_role_invalid : Modified in 10.2.33 +roles.create_and_grant_role : MDEV-11772 - wrong result #----------------------------------------------------------------------- -rpl.circular_serverid0 : MDEV-19372 - ASAN heap-use-after-free; modified in 10.2.32 -rpl.create_or_replace2 : MDEV-19412 - Lost connection to MySQL server -rpl.create_or_replace_mix : MDEV-20523 - Wrong result -rpl.create_or_replace_statement : MDEV-20523 - Wrong result -rpl.create_select : MDEV-14121 - Assertion failure -rpl.last_insert_id : MDEV-10625 - warnings in error log -rpl.rpl_auto_increment : MDEV-10417 - Fails on Mips -rpl.rpl_auto_increment_bug45679 : MDEV-10417 - Fails on Mips -rpl.rpl_auto_increment_update_failure : MDEV-10625 - warnings in error log -rpl.rpl_binlog_dump_slave_gtid_state_info : Added in 10.2.33 -rpl.rpl_binlog_errors : MDEV-12742 - Crash; include file modified in 10.2.32 -rpl.rpl_binlog_index : MDEV-9501 - Failed registering on master -rpl.rpl_bug41902 : Configuration deleted in 10.2.32 -rpl.rpl_checksum_cache : MDEV-22510 - Server crash -rpl.rpl_colSize : MDEV-16112 - Server crash -rpl.rpl_conditional_comments : Modified in 10.2.32 -rpl.rpl_corruption : Include file modified in 10.2.32 -rpl.rpl_ctype_latin1 : MDEV-14813 - Wrong result on Mac -rpl.rpl_ddl : MDEV-10417 - Fails on Mips -rpl.rpl_domain_id_filter_io_crash : MDEV-12729 - Timeout in include file, MDEV-13677 - Server crash; modified in 10.2.32 -rpl.rpl_domain_id_filter_master_crash : MDEV-19043 - Warnings/errors -rpl.rpl_domain_id_filter_restart : MDEV-10684 - Wrong result -rpl.rpl_drop_db_fail : MDEV-16898 - Slave fails to start -rpl.rpl_dump_request_retry_warning : Added in 10.2.33 -rpl.rpl_extra_col_master_innodb : MDEV-16570 - Extra warning -rpl.rpl_fail_register : Modified in 10.2.33 -rpl.rpl_flushlog_loop : MDEV-21570 - Server crash -rpl.rpl_get_lock : MDEV-19368 - mysqltest failed but provided no output -rpl.rpl_get_master_version_and_clock : Re-enabled in 10.2.32; include file modified in 10.2.32 -rpl.rpl_gtid_basic : MDEV-10681 - server startup problem -rpl.rpl_gtid_crash : MDEV-9501 - Failed registering on master, MDEV-13643 - Lost connection -rpl.rpl_gtid_delete_domain : MDEV-14463 - Timeout; MDEV-23103 - Could not delete gtid domain -rpl.rpl_gtid_errorhandling : MDEV-13261 - Crash -rpl.rpl_gtid_mdev9033 : MDEV-10680 - warnings -rpl.rpl_gtid_reconnect : MDEV-14497 - Crash -rpl.rpl_gtid_startpos : MDEV-20141 - mysqltest failed but provided no output -rpl.rpl_gtid_stop_start : MDEV-10629 - Crash on shutdown, MDEV-12629 - Valgrind warnings -rpl.rpl_gtid_strict : Modified in 10.2.32 -rpl.rpl_gtid_until : MDEV-10625 - warnings in error log -rpl.rpl_innodb_bug30888 : MDEV-10417 - Fails on Mips -rpl.rpl_insert : MDEV-9329 - Fails on Ubuntu/s390x -rpl.rpl_insert_delayed : MDEV-9329 - Fails on Ubuntu/s390x -rpl.rpl_insert_id : MDEV-15197 - Wrong result -rpl.rpl_insert_id_pk : MDEV-16567 - Assertion failure -rpl.rpl_insert_ignore : MDEV-14365 - Lost connection to MySQL server during query -rpl.rpl_invoked_features : MDEV-10417 - Fails on Mips -rpl.rpl_mariadb_slave_capability : MDEV-11018 - Extra lines in binlog -rpl.rpl_mdev12179 : MDEV-19043 - Warnings/errors -rpl.rpl_mdev6020 : MDEV-15272 - Server crash -rpl.rpl_mixed_mixing_engines : MDEV-21266 - Timeout -rpl.rpl_non_direct_row_mixing_engines : MDEV-16561 - Timeout in master_pos_wait -rpl.rpl_parallel : MDEV-10653 - Timeouts -rpl.rpl_parallel2 : MDEV-23089 - Server hang -rpl.rpl_parallel_conflicts : MDEV-15272 - Server crash -rpl.rpl_parallel_mdev6589 : MDEV-12979 - Assertion failure -rpl.rpl_parallel_multilevel2 : MDEV-14723 - Timeout -rpl.rpl_parallel_optimistic : MDEV-15278 - Failed to sync with master -rpl.rpl_parallel_optimistic_nobinlog : MDEV-15278 - Failed to sync with master -rpl.rpl_parallel_optimistic_until : MDEV-23021 - Query didn't return a result set; added in 10.2.33 -rpl.rpl_parallel_retry : MDEV-11119 - Crash; MDEV-17109 - Timeout -rpl.rpl_parallel_temptable : MDEV-10356 - Crash; MDEV-19076 - Wrong result -rpl.rpl_partition_innodb : MDEV-10417 - Fails on Mips -rpl.rpl_password_boundaries : MDEV-11534 - Slave IO warnings -rpl.rpl_row_001 : MDEV-16653 - Internal check fails -rpl.rpl_row_basic_11bugs : MDEV-12171 - Server failed to start -rpl.rpl_row_basic_2myisam : MDEV-13875 - command "diff_files" failed -rpl.rpl_row_corruption : MDEV-21569 - mutex: LOCK_global_system_variables unlocking; modified in 10.2.32 -rpl.rpl_row_drop_create_temp_table : MDEV-14487 - Wrong result -rpl.rpl_row_img_blobs : MDEV-13875 - command "diff_files" failed -rpl.rpl_row_img_eng_min : MDEV-13875 - diff_files failed -rpl.rpl_row_img_eng_noblob : MDEV-13875 - command "diff_files" failed -rpl.rpl_row_index_choice : MDEV-15196 - Slave crash -rpl.rpl_row_sp001 : MDEV-9329 - Fails on Ubuntu/s390x -rpl.rpl_row_until : MDEV-14052 - Master will not send events with checksum -rpl.rpl_row_virt : Added in 10.2.33 -rpl.rpl_semi_sync : MDEV-11220 - Wrong result -rpl.rpl_semi_sync_after_sync : MDEV-14366 - Wrong result -rpl.rpl_semi_sync_after_sync_row : MDEV-14366 - Wrong result -rpl.rpl_semi_sync_event_after_sync : MDEV-11806 - warnings -rpl.rpl_semi_sync_uninstall_plugin : MDEV-7140 - Assorted failures -rpl.rpl_semi_sync_wait_point : MDEV-11807 - timeout in wait condition -rpl.rpl_show_slave_hosts : MDEV-10681 - Crash -rpl.rpl_skip_replication : MDEV-23372 - Extra warning -rpl.rpl_slave_grp_exec : MDEV-10514 - Deadlock -rpl.rpl_slow_query_log : MDEV-13250 - Test abort -rpl.rpl_sp_effects : MDEV-13249 - Crash -rpl.rpl_start_stop_slave : MDEV-13567 - Sync slave timeout -rpl.rpl_stm_multi_query : MDEV-9501 - Failed registering on master -rpl.rpl_stm_relay_ign_space : MDEV-14360 - Test assertion -rpl.rpl_stm_stop_middle_group : MDEV-13791 - Server crash; include file modified in 10.2.32 -rpl.rpl_temporal_mysql56_to_mariadb53 : MDEV-9501 - Failed registering on master -rpl.rpl_temporary_error2 : MDEV-10634 - Wrong number of retries -rpl.rpl_test_framework : MDEV-19368 - mysqltest failed but provided no output -rpl.rpl_trigger : MDEV-18055 - Wrong result -rpl.rpl_truncate_3innodb : MDEV-19454 - Sporadic syntax error -rpl.rpl_user_variables : MDEV-20522 - Wrong result -rpl.sec_behind_master-5114 : MDEV-13878 - Wrong result +rpl.circular_serverid0 : MDEV-19372 - ASAN heap-use-after-free +rpl.create_or_replace2 : MDEV-19412 - Lost connection to MySQL server +rpl.create_or_replace_mix : MDEV-20523 - Wrong result +rpl.create_or_replace_statement : MDEV-20523 - Wrong result +rpl.create_select : MDEV-14121 - Assertion failure +rpl.last_insert_id : MDEV-10625 - warnings in error log +rpl.rpl_auto_increment : MDEV-10417 - Fails on Mips +rpl.rpl_auto_increment_bug45679 : MDEV-10417 - Fails on Mips +rpl.rpl_auto_increment_update_failure : MDEV-10625 - warnings in error log +rpl.rpl_binlog_errors : MDEV-12742 - Crash +rpl.rpl_binlog_index : Modified in 10.2.35 +rpl.rpl_checksum_cache : MDEV-22510 - Server crash +rpl.rpl_colSize : MDEV-16112 - Server crash +rpl.rpl_ctype_latin1 : MDEV-14813 - Wrong result on Mac +rpl.rpl_ddl : MDEV-10417 - Fails on Mips +rpl.rpl_domain_id_filter_io_crash : MDEV-12729 - Timeout in include file, MDEV-13677 - Server crash +rpl.rpl_domain_id_filter_master_crash : MDEV-19043 - Warnings/errors +rpl.rpl_domain_id_filter_restart : MDEV-10684 - Wrong result +rpl.rpl_drop_db_fail : MDEV-16898 - Slave fails to start +rpl.rpl_extra_col_master_innodb : MDEV-16570 - Extra warning +rpl.rpl_filter_tables_dynamic : Modified in 10.2.35 +rpl.rpl_filter_wild_tables_dynamic : Modified in 10.2.35 +rpl.rpl_flushlog_loop : MDEV-21570 - Server crash +rpl.rpl_get_lock : MDEV-19368 - mysqltest failed but provided no output +rpl.rpl_gtid_basic : MDEV-10681 - server startup problem +rpl.rpl_gtid_crash : MDEV-13643 - Lost connection; modified in 10.2.35 +rpl.rpl_gtid_delete_domain : MDEV-14463 - Timeout; MDEV-23103 - Could not delete gtid domain; modified in 10.2.35 +rpl.rpl_gtid_errorhandling : MDEV-13261 - Crash +rpl.rpl_gtid_mdev9033 : MDEV-10680 - warnings +rpl.rpl_gtid_reconnect : MDEV-14497 - Crash +rpl.rpl_gtid_startpos : MDEV-20141 - mysqltest failed but provided no output +rpl.rpl_gtid_stop_start : MDEV-10629 - Crash on shutdown, MDEV-12629 - Valgrind warnings +rpl.rpl_gtid_until : MDEV-10625 - warnings in error log +rpl.rpl_innodb_bug30888 : MDEV-10417 - Fails on Mips +rpl.rpl_insert : MDEV-9329 - Fails on Ubuntu/s390x +rpl.rpl_insert_delayed : MDEV-9329 - Fails on Ubuntu/s390x +rpl.rpl_insert_id : MDEV-15197 - Wrong result +rpl.rpl_insert_id_pk : MDEV-16567 - Assertion failure +rpl.rpl_insert_ignore : MDEV-14365 - Lost connection to MySQL server during query +rpl.rpl_invoked_features : MDEV-10417 - Fails on Mips +rpl.rpl_mariadb_slave_capability : MDEV-11018 - Extra lines in binlog +rpl.rpl_mdev12179 : MDEV-19043 - Warnings/errors +rpl.rpl_mdev6020 : MDEV-23426 - Server crash, ASAN failures; MDEV-15272 - Server crash +rpl.rpl_mixed_mixing_engines : MDEV-21266 - Timeout +rpl.rpl_mysql_upgrade : Modified in 10.2.35 +rpl.rpl_non_direct_row_mixing_engines : MDEV-16561 - Timeout in master_pos_wait +rpl.rpl_parallel : MDEV-10653 - Timeouts +rpl.rpl_parallel2 : Modified in 10.2.35 +rpl.rpl_parallel_conflicts : MDEV-15272 - Server crash +rpl.rpl_parallel_mdev6589 : MDEV-12979 - Assertion failure +rpl.rpl_parallel_multilevel2 : MDEV-14723 - Timeout +rpl.rpl_parallel_optimistic : MDEV-15278 - Failed to sync with master +rpl.rpl_parallel_optimistic_nobinlog : MDEV-15278 - Failed to sync with master +rpl.rpl_parallel_optimistic_until : MDEV-23021 - Query didn't return a result set +rpl.rpl_parallel_retry : MDEV-11119 - Crash; MDEV-17109 - Timeout +rpl.rpl_parallel_temptable : MDEV-10356 - Crash; MDEV-19076 - Wrong result +rpl.rpl_partition_innodb : MDEV-10417 - Fails on Mips +rpl.rpl_password_boundaries : MDEV-11534 - Slave IO warnings +rpl.rpl_rewrt_db : MDEV-24060 - Server did not start +rpl.rpl_row_001 : MDEV-16653 - Internal check fails +rpl.rpl_row_basic_11bugs : MDEV-12171 - Server failed to start +rpl.rpl_row_basic_2myisam : MDEV-13875 - command "diff_files" failed +rpl.rpl_row_corruption : MDEV-21569 - mutex: LOCK_global_system_variables unlocking +rpl.rpl_row_drop_create_temp_table : MDEV-14487 - Wrong result +rpl.rpl_row_img_blobs : MDEV-13875 - command "diff_files" failed +rpl.rpl_row_img_eng_min : MDEV-13875 - diff_files failed +rpl.rpl_row_img_eng_noblob : MDEV-13875 - command "diff_files" failed +rpl.rpl_row_index_choice : MDEV-15196 - Slave crash +rpl.rpl_row_sp001 : MDEV-9329 - Fails on Ubuntu/s390x +rpl.rpl_row_until : MDEV-14052 - Master will not send events with checksum +rpl.rpl_semi_sync : MDEV-11220 - Wrong result +rpl.rpl_semi_sync_after_sync : MDEV-14366 - Wrong result +rpl.rpl_semi_sync_after_sync_row : MDEV-14366 - Wrong result +rpl.rpl_semi_sync_event_after_sync : MDEV-11806 - warnings +rpl.rpl_semi_sync_uninstall_plugin : MDEV-7140 - Assorted failures +rpl.rpl_semi_sync_wait_point : MDEV-11807 - timeout in wait condition +rpl.rpl_show_slave_hosts : MDEV-10681 - Crash +rpl.rpl_skip_replication : MDEV-23372 - Extra warning +rpl.rpl_slave_grp_exec : MDEV-10514 - Deadlock; ; modified in 10.2.35 +rpl.rpl_slave_load_tmpdir_not_exist : MDEV-23372 - Extra warning +rpl.rpl_slow_query_log : MDEV-13250 - Test abort +rpl.rpl_sp_effects : MDEV-13249 - Crash +rpl.rpl_start_stop_slave : MDEV-13567 - Sync slave timeout; modified in 10.2.35 +rpl.rpl_stm_relay_ign_space : MDEV-14360 - Test assertion +rpl.rpl_stm_stop_middle_group : MDEV-13791 - Server crash +rpl.rpl_sync : MDEV-10633 - Database page corruption +rpl.rpl_temporary_error2 : MDEV-10634 - Wrong number of retries +rpl.rpl_test_framework : MDEV-19368 - mysqltest failed but provided no output +rpl.rpl_trigger : MDEV-18055 - Wrong result +rpl.rpl_truncate_3innodb : MDEV-19454 - Sporadic syntax error +rpl.rpl_user_variables : MDEV-20522 - Wrong result +rpl.sec_behind_master-5114 : MDEV-13878 - Wrong result +rpl.show_status_stop_slave_race-7126 : Modified in 10.2.35 #----------------------------------------------------------------------- -rpl-tokudb.* : MDEV-14354 - Tests fail with tcmalloc +rpl-tokudb.* : MDEV-14354 - Tests failing with tcmalloc #----------------------------------------------------------------------- @@ -682,15 +656,12 @@ spider.basic_sql : MDEV-11186 - Internal check fails #----------------------------------------------------------------------- -spider/bg.direct_aggregate : MDEV-7098 - Packets out of order -spider/bg.direct_aggregate_part : MDEV-7098 - Trying to unlock mutex that wasn't locked -spider/bg.ha : MDEV-9329 - failures on s390x -spider/bg.ha_part : MDEV-9329 - Fails on Ubuntu/s390x -spider/bg.spider3_fixes : MDEV-12639 - Syntax error -spider/bg.spider3_fixes_part : MDEV-7098 - Trying to unlock mutex -spider/bg.spider_fixes : MDEV-7098 -Mutex problem, MDEV-9329 - failures on s390x -spider/bg.spider_fixes_part : MDEV-7098 - Trying to unlock mutex that wasn't locked -spider/bg.vp_fixes : MDEV-9329 - Fails on Ubuntu/s390x +spider/bg.* : MDEV-24059 - Timeout +spider/bg.ha : MDEV-9329 - failures on s390x +spider/bg.ha_part : MDEV-9329 - Fails on Ubuntu/s390x +spider/bg.spider3_fixes : MDEV-12639 - Syntax error +spider/bg.spider_fixes : MDEV-9329 - failures on s390x +spider/bg.vp_fixes : MDEV-9329 - Fails on Ubuntu/s390x #----------------------------------------------------------------------- @@ -702,9 +673,7 @@ storage_engine.* : Tests are not always timely maintained #----------------------------------------------------------------------- -stress.* : Added to default set in 10.2.33 stress.ddl_innodb : MDEV-10635 - Testcase timeout -stress.misc : Added in 10.2.33 #----------------------------------------------------------------------- @@ -713,12 +682,14 @@ sys_vars.innodb_buffer_pool_dump_at_shutdown_basic : MDEV-14280 - Unexpected err sys_vars.innodb_checksum_algorithm_basic : MDEV-21568 - Errno: 2000 sys_vars.keep_files_on_create_basic : MDEV-10676 - timeout sys_vars.log_slow_admin_statements_func : MDEV-12235 - Server crash -sys_vars.max_sort_length_basic : Modified in 10.2.33 -sys_vars.optimizer_switch_basic : Modified in 10.2.33 -sys_vars.rpl_init_slave_func : MDEV-10149 - Test assertion +sys_vars.replicate_do_db_basic : Modified in 10.2.35 +sys_vars.rpl_init_slave_func : Modified in 10.2.35 +sys_vars.session_track_system_variables_basic : Modified in 10.2.35 sys_vars.slow_query_log_func : MDEV-14273 - Wrong result sys_vars.thread_cache_size_func : MDEV-11775 - Wrong result sys_vars.wait_timeout_func : MDEV-12896 - Wrong result +sys_vars.wsrep_cluster_address_basic : Modified in 10.2.35 +sys_vars.wsrep_on_basic : Configuration deleted in 10.2.35 #----------------------------------------------------------------------- @@ -763,8 +734,7 @@ tokudb_bugs.xa : MDEV-11804 - Lock wait timeout #----------------------------------------------------------------------- -tokudb_parts.partition_alter4_tokudb : MDEV-12640 - Lost connection -tokudb_parts.partition_auto_increment_tokudb : Include file modified in 10.2.33 +tokudb_parts.partition_alter4_tokudb : MDEV-12640 - Lost connection #----------------------------------------------------------------------- @@ -790,16 +760,14 @@ unit.mf_iocache : MDEV-20952 - Buffer overflow vcol.not_supported : MDEV-10639 - Testcase timeout vcol.vcol_keys_innodb : MDEV-10639 - Testcase timeout -vcol.vcol_keys_myisam : Modified in 10.2.33 -vcol.vcol_misc : MDEV-16651 - Wrong error message; modified in 10.2.33 +vcol.vcol_misc : MDEV-16651 - Wrong error message; modified in 10.2.35 #----------------------------------------------------------------------- wsrep.foreign_key : MDEV-14725 - WSREP has not yet prepared node wsrep.mdev_6832 : MDEV-14195 - Check testcase failed wsrep.pool_of_threads : MDEV-17345 - WSREP has not yet prepared node for application use -wsrep.trans : Modified in 10.2.32 -wsrep.variables : MDEV-17585 - Deadlock +wsrep.variables : Modified in 10.2.35 #----------------------------------------------------------------------- From 19a847d40c03213fd05693b1b43d974ce0bfe6bf Mon Sep 17 00:00:00 2001 From: Oleksandr Byelkin Date: Thu, 5 Nov 2020 17:37:55 +0100 Subject: [PATCH 2/6] MDEV-19838: followup to make happy following protocol implementations: - mysqlnd from PHP < 7.3 - mysql-connector-python any version - mysql-connector-java any version Relaxed check about garbage at the end of the packet in case of no parameters. Added check for array binding. Fixed test according to the new paradigm (allow junk at the end of the packet) --- sql/sql_prepare.cc | 21 +++++++++++++++++---- tests/mysql_client_test.c | 7 +++++-- 2 files changed, 22 insertions(+), 6 deletions(-) diff --git a/sql/sql_prepare.cc b/sql/sql_prepare.cc index 11edd577309..4bf8142959d 100644 --- a/sql/sql_prepare.cc +++ b/sql/sql_prepare.cc @@ -3271,10 +3271,19 @@ void mysqld_stmt_execute(THD *thd, char *packet_arg, uint packet_length) void mysqld_stmt_bulk_execute(THD *thd, char *packet_arg, uint packet_length) { uchar *packet= (uchar*)packet_arg; // GCC 4.0.1 workaround + DBUG_ENTER("mysqld_stmt_execute_bulk"); + + const uint packet_header_lenght= 4 + 2; //ID & 2 bytes of flags + + if (packet_length < packet_header_lenght) + { + my_error(ER_MALFORMED_PACKET, MYF(0)); + DBUG_VOID_RETURN; + } + ulong stmt_id= uint4korr(packet); uint flags= (uint) uint2korr(packet + 4); uchar *packet_end= packet + packet_length; - DBUG_ENTER("mysqld_stmt_execute_bulk"); if (!(thd->client_capabilities & MARIADB_CLIENT_STMT_BULK_OPERATIONS)) @@ -3282,16 +3291,18 @@ void mysqld_stmt_bulk_execute(THD *thd, char *packet_arg, uint packet_length) DBUG_PRINT("error", ("An attempt to execute bulk operation without support")); my_error(ER_UNSUPPORTED_PS, MYF(0)); + DBUG_VOID_RETURN; } /* Check for implemented parameters */ if (flags & (~STMT_BULK_FLAG_CLIENT_SEND_TYPES)) { DBUG_PRINT("error", ("unsupported bulk execute flags %x", flags)); my_error(ER_UNSUPPORTED_PS, MYF(0)); + DBUG_VOID_RETURN; } /* stmt id and two bytes of flags */ - packet+= 4 + 2; + packet+= packet_header_lenght; mysql_stmt_execute_common(thd, stmt_id, packet, packet_end, 0, TRUE, (flags & STMT_BULK_FLAG_CLIENT_SEND_TYPES)); DBUG_VOID_RETURN; @@ -3368,9 +3379,11 @@ stmt_execute_packet_sanity_check(Prepared_statement *stmt, { /* If there is no parameters, this should be normally already end - of the packet. If it's not - then error + of the packet, but it is not a problem if something left (popular + mistake in protocol implementation) because we will not read anymore + from the buffer. */ - return (packet_end > packet); + return false; } return false; } diff --git a/tests/mysql_client_test.c b/tests/mysql_client_test.c index 058168eedd5..93f23236dbc 100644 --- a/tests/mysql_client_test.c +++ b/tests/mysql_client_test.c @@ -20032,8 +20032,11 @@ static void test_mdev19838() " VALUES " "(0x1111111111111111)", -1); - /* Expecting an error if parameters are sent */ - DIE_UNLESS(rc != 0 || paramCount == 0); + /* + We allow junk at the end of the packet in case of + no parameters. So it will succeed. + */ + DIE_UNLESS(rc == 0); } mysql_stmt_close(stmt); From 2845b656a3ed058bc424ca371760fb17b2a28703 Mon Sep 17 00:00:00 2001 From: Oleksandr Byelkin Date: Thu, 5 Nov 2020 17:49:58 +0100 Subject: [PATCH 3/6] Bump the version --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index a1f0ad08a61..b451aa8a789 100644 --- a/VERSION +++ b/VERSION @@ -1,3 +1,3 @@ MYSQL_VERSION_MAJOR=10 MYSQL_VERSION_MINOR=2 -MYSQL_VERSION_PATCH=35 +MYSQL_VERSION_PATCH=36 From f81eef62e7742806e5e74b5f37f35b7cd2f82291 Mon Sep 17 00:00:00 2001 From: Sergei Petrunia Date: Mon, 9 Nov 2020 18:47:55 +0300 Subject: [PATCH 4/6] MDEV-24117: Memory management problem in statistics state for ... IN Part#1: Revert the patch that caused it: commit 291be494744abe90f4bdf6b5a35c4c26ee8ddda5 Author: Igor Babaev Date: Thu Sep 24 22:02:00 2020 -0700 MDEV-23811: With large number of indexes optimizer chooses an inefficient plan --- mysql-test/r/range.result | 74 +------------------ mysql-test/r/range_mrr_icp.result | 74 +------------------ .../r/range_vs_index_merge_innodb.result | 2 +- mysql-test/t/range.test | 42 ----------- sql/opt_range.cc | 20 ++--- 5 files changed, 11 insertions(+), 201 deletions(-) diff --git a/mysql-test/r/range.result b/mysql-test/r/range.result index 7299982e72d..26ea2c6d323 100644 --- a/mysql-test/r/range.result +++ b/mysql-test/r/range.result @@ -1274,7 +1274,7 @@ SELECT * FROM t1 WHERE 5 <= a AND b = 3 OR 3 <= a; id select_type table type possible_keys key key_len ref rows Extra -1 SIMPLE t1 range a a 5 NULL 3 Using where; Using index +1 SIMPLE t1 range a a 5 NULL 4 Using where; Using index SELECT * FROM t1 WHERE 3 <= a AND a <= 5 OR 5 <= a AND b = 3 OR @@ -3054,77 +3054,5 @@ a b set eq_range_index_dive_limit=default; drop table t1; # -# MDEV-23811: Both disjunct of WHERE condition contain range conditions -# for the same index such that the second range condition -# fully covers the first one. Additionally one of the disjuncts -# contains a range condition for the other index. -# -create table t1 ( -pk int primary key auto_increment, a int, b int, -index idx1(a), index idx2(b) -); -insert into t1(a,b) values -(5,50), (1,10), (3,30), (7,70), (8,80), (4,40), (2,20), (6,60); -insert into t1(a,b) select a+10, b+100 from t1; -insert into t1(a,b) select a+20, b+200 from t1; -insert into t1(a,b) select a+30, b+300 from t1; -insert into t1(a,b) select a,b from t1; -analyze table t1; -Table Op Msg_type Msg_text -test.t1 analyze status OK -explain select * from t1 where ((a between 3 and 4) and b < 100) or (a between 2 and 5); -id select_type table type possible_keys key key_len ref rows Extra -1 SIMPLE t1 range idx1,idx2 idx1 5 NULL 11 Using index condition; Using where -select * from t1 where ((a between 3 and 4) and b < 100) or (a between 2 and 5); -pk a b -7 2 20 -71 2 20 -3 3 30 -67 3 30 -6 4 40 -70 4 40 -1 5 50 -65 5 50 -explain select * from t1 where (a between 2 and 5) or ((a between 3 and 4) and b < 100); -id select_type table type possible_keys key key_len ref rows Extra -1 SIMPLE t1 range idx1,idx2 idx1 5 NULL 11 Using index condition; Using where -select * from t1 where (a between 2 and 5) or ((a between 3 and 4) and b < 100); -pk a b -7 2 20 -71 2 20 -3 3 30 -67 3 30 -6 4 40 -70 4 40 -1 5 50 -65 5 50 -explain select * from t1 where (a between 3 and 4) or ((a between 2 and 5) and b < 100); -id select_type table type possible_keys key key_len ref rows Extra -1 SIMPLE t1 range idx1,idx2 idx1 5 NULL 11 Using index condition; Using where -select * from t1 where (a between 3 and 4) or ((a between 2 and 5) and b < 100); -pk a b -7 2 20 -71 2 20 -3 3 30 -67 3 30 -6 4 40 -70 4 40 -1 5 50 -65 5 50 -explain select * from t1 where ((a between 2 and 5) and b < 100) or (a between 3 and 4); -id select_type table type possible_keys key key_len ref rows Extra -1 SIMPLE t1 range idx1,idx2 idx1 5 NULL 11 Using index condition; Using where -select * from t1 where ((a between 2 and 5) and b < 100) or (a between 3 and 4); -pk a b -7 2 20 -71 2 20 -3 3 30 -67 3 30 -6 4 40 -70 4 40 -1 5 50 -65 5 50 -drop table t1; -# # End of 10.2 tests # diff --git a/mysql-test/r/range_mrr_icp.result b/mysql-test/r/range_mrr_icp.result index cdaaa5e8ab7..fe4eb99f31f 100644 --- a/mysql-test/r/range_mrr_icp.result +++ b/mysql-test/r/range_mrr_icp.result @@ -1276,7 +1276,7 @@ SELECT * FROM t1 WHERE 5 <= a AND b = 3 OR 3 <= a; id select_type table type possible_keys key key_len ref rows Extra -1 SIMPLE t1 range a a 5 NULL 3 Using where; Using index +1 SIMPLE t1 range a a 5 NULL 4 Using where; Using index SELECT * FROM t1 WHERE 3 <= a AND a <= 5 OR 5 <= a AND b = 3 OR @@ -3066,78 +3066,6 @@ a b set eq_range_index_dive_limit=default; drop table t1; # -# MDEV-23811: Both disjunct of WHERE condition contain range conditions -# for the same index such that the second range condition -# fully covers the first one. Additionally one of the disjuncts -# contains a range condition for the other index. -# -create table t1 ( -pk int primary key auto_increment, a int, b int, -index idx1(a), index idx2(b) -); -insert into t1(a,b) values -(5,50), (1,10), (3,30), (7,70), (8,80), (4,40), (2,20), (6,60); -insert into t1(a,b) select a+10, b+100 from t1; -insert into t1(a,b) select a+20, b+200 from t1; -insert into t1(a,b) select a+30, b+300 from t1; -insert into t1(a,b) select a,b from t1; -analyze table t1; -Table Op Msg_type Msg_text -test.t1 analyze status OK -explain select * from t1 where ((a between 3 and 4) and b < 100) or (a between 2 and 5); -id select_type table type possible_keys key key_len ref rows Extra -1 SIMPLE t1 range idx1,idx2 idx1 5 NULL 11 Using index condition; Using where; Rowid-ordered scan -select * from t1 where ((a between 3 and 4) and b < 100) or (a between 2 and 5); -pk a b -1 5 50 -3 3 30 -6 4 40 -7 2 20 -65 5 50 -67 3 30 -70 4 40 -71 2 20 -explain select * from t1 where (a between 2 and 5) or ((a between 3 and 4) and b < 100); -id select_type table type possible_keys key key_len ref rows Extra -1 SIMPLE t1 range idx1,idx2 idx1 5 NULL 11 Using index condition; Using where; Rowid-ordered scan -select * from t1 where (a between 2 and 5) or ((a between 3 and 4) and b < 100); -pk a b -1 5 50 -3 3 30 -6 4 40 -7 2 20 -65 5 50 -67 3 30 -70 4 40 -71 2 20 -explain select * from t1 where (a between 3 and 4) or ((a between 2 and 5) and b < 100); -id select_type table type possible_keys key key_len ref rows Extra -1 SIMPLE t1 range idx1,idx2 idx1 5 NULL 11 Using index condition; Using where; Rowid-ordered scan -select * from t1 where (a between 3 and 4) or ((a between 2 and 5) and b < 100); -pk a b -1 5 50 -3 3 30 -6 4 40 -7 2 20 -65 5 50 -67 3 30 -70 4 40 -71 2 20 -explain select * from t1 where ((a between 2 and 5) and b < 100) or (a between 3 and 4); -id select_type table type possible_keys key key_len ref rows Extra -1 SIMPLE t1 range idx1,idx2 idx1 5 NULL 11 Using index condition; Using where; Rowid-ordered scan -select * from t1 where ((a between 2 and 5) and b < 100) or (a between 3 and 4); -pk a b -1 5 50 -3 3 30 -6 4 40 -7 2 20 -65 5 50 -67 3 30 -70 4 40 -71 2 20 -drop table t1; -# # End of 10.2 tests # set optimizer_switch=@mrr_icp_extra_tmp; diff --git a/mysql-test/r/range_vs_index_merge_innodb.result b/mysql-test/r/range_vs_index_merge_innodb.result index 916c30bb770..581f512768c 100644 --- a/mysql-test/r/range_vs_index_merge_innodb.result +++ b/mysql-test/r/range_vs_index_merge_innodb.result @@ -369,7 +369,7 @@ WHERE ((ID < 200) AND (Name LIKE 'Ha%' OR (Country > 'A' AND Country < 'ARG'))) OR ((ID BETWEEN 100 AND 200) AND (Name LIKE 'Pa%' OR (Population > 103000 AND Population < 104000))); id select_type table type possible_keys key key_len ref rows Extra -1 SIMPLE City range PRIMARY,Population,Country,Name PRIMARY 4 NULL 200 Using where +1 SIMPLE City index_merge PRIMARY,Population,Country,Name Name,Population,PRIMARY 39,4,4 NULL 307 Using sort_union(Name,Population,PRIMARY); Using where SELECT * FROM City USE INDEX () WHERE ((ID < 10) AND (Name LIKE 'H%' OR (Country > 'A' AND Country < 'ARG'))) OR ((ID BETWEEN 100 AND 110) AND diff --git a/mysql-test/t/range.test b/mysql-test/t/range.test index 0d2fbe24835..67d876d5f10 100644 --- a/mysql-test/t/range.test +++ b/mysql-test/t/range.test @@ -2095,48 +2095,6 @@ set eq_range_index_dive_limit=default; drop table t1; ---echo # ---echo # MDEV-23811: Both disjunct of WHERE condition contain range conditions ---echo # for the same index such that the second range condition ---echo # fully covers the first one. Additionally one of the disjuncts ---echo # contains a range condition for the other index. ---echo # - -create table t1 ( - pk int primary key auto_increment, a int, b int, - index idx1(a), index idx2(b) -); -insert into t1(a,b) values - (5,50), (1,10), (3,30), (7,70), (8,80), (4,40), (2,20), (6,60); -insert into t1(a,b) select a+10, b+100 from t1; -insert into t1(a,b) select a+20, b+200 from t1; -insert into t1(a,b) select a+30, b+300 from t1; -insert into t1(a,b) select a,b from t1; - -analyze table t1; - -let $q1= -select * from t1 where ((a between 3 and 4) and b < 100) or (a between 2 and 5); -eval explain $q1; -eval $q1; - -let $q2= -select * from t1 where (a between 2 and 5) or ((a between 3 and 4) and b < 100); -eval explain $q2; -eval $q2; - -let $q3= -select * from t1 where (a between 3 and 4) or ((a between 2 and 5) and b < 100); -eval explain $q3; -eval $q3; - -let $q4= -select * from t1 where ((a between 2 and 5) and b < 100) or (a between 3 and 4); -eval explain $q4; -eval $q4; - -drop table t1; - --echo # --echo # End of 10.2 tests --echo # diff --git a/sql/opt_range.cc b/sql/opt_range.cc index cd58202ef5f..e933d2af355 100644 --- a/sql/opt_range.cc +++ b/sql/opt_range.cc @@ -1852,9 +1852,6 @@ SEL_ARG::SEL_ARG(SEL_ARG &arg) :Sql_alloc() next_key_part=arg.next_key_part; max_part_no= arg.max_part_no; use_count=1; elements=1; - next= 0; - if (next_key_part) - ++next_key_part->use_count; } @@ -8872,15 +8869,9 @@ tree_or(RANGE_OPT_PARAM *param,SEL_TREE *tree1,SEL_TREE *tree2) } bool no_imerge_from_ranges= FALSE; - SEL_TREE *rt1= tree1; - SEL_TREE *rt2= tree2; /* Build the range part of the tree for the formula (1) */ if (sel_trees_can_be_ored(param, tree1, tree2, &ored_keys)) { - if (no_merges1) - rt1= new SEL_TREE(tree1, TRUE, param); - if (no_merges2) - rt2= new SEL_TREE(tree2, TRUE, param); bool must_be_ored= sel_trees_must_be_ored(param, tree1, tree2, ored_keys); no_imerge_from_ranges= must_be_ored; @@ -8938,6 +8929,12 @@ tree_or(RANGE_OPT_PARAM *param,SEL_TREE *tree1,SEL_TREE *tree2) else if (!no_ranges1 && !no_ranges2 && !no_imerge_from_ranges) { /* Build the imerge part of the tree for the formula (1) */ + SEL_TREE *rt1= tree1; + SEL_TREE *rt2= tree2; + if (no_merges1) + rt1= new SEL_TREE(tree1, TRUE, param); + if (no_merges2) + rt2= new SEL_TREE(tree2, TRUE, param); if (!rt1 || !rt2 || result->merges.push_back(imerge_from_ranges) || imerge_from_ranges->or_sel_tree(param, rt1) || @@ -9600,11 +9597,10 @@ key_or(RANGE_OPT_PARAM *param, SEL_ARG *key1,SEL_ARG *key2) if (!tmp->next_key_part) { - SEL_ARG *key2_next= key2->next; if (key2->use_count) { SEL_ARG *key2_cpy= new SEL_ARG(*key2); - if (!key2_cpy) + if (key2_cpy) return 0; key2= key2_cpy; } @@ -9625,7 +9621,7 @@ key_or(RANGE_OPT_PARAM *param, SEL_ARG *key1,SEL_ARG *key2) Move on to next range in key2 */ key2->increment_use_count(-1); // Free not used tree - key2=key2_next; + key2=key2->next; continue; } else From 1404f3bea796c8479cf401cb36d518658600ddca Mon Sep 17 00:00:00 2001 From: Sergei Petrunia Date: Mon, 9 Nov 2020 19:27:56 +0300 Subject: [PATCH 5/6] MDEV-24117: Memory management problem ...: Add a testcase Add a testcase. --- mysql-test/r/range.result | 33 ++++++++++++++++++++++ mysql-test/r/range_mrr_icp.result | 33 ++++++++++++++++++++++ mysql-test/t/range.test | 46 +++++++++++++++++++++++++++++++ 3 files changed, 112 insertions(+) diff --git a/mysql-test/r/range.result b/mysql-test/r/range.result index 26ea2c6d323..b3324601e47 100644 --- a/mysql-test/r/range.result +++ b/mysql-test/r/range.result @@ -3054,5 +3054,38 @@ a b set eq_range_index_dive_limit=default; drop table t1; # +# MDEV-24117: Memory management problem in statistics state... +# (just the testcase) +# +create table t0(a int); +insert into t0 values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9); +create table t1(a int); +insert into t1 +select A.a + B.a* 10 + C.a * 100 + D.a * 1000 +from t0 A, t0 B, t0 C, t0 D +where D.a<4; +create table t2 ( +a int, +b int, +key(a) +); +insert into t2 values (1,1),(2,2),(3,3); +set @query=(select group_concat(a) from t1); +set @tmp_24117= @@max_session_mem_used; +# +# On debug build, the usage was +# - 2.8M without the bug +# - 1G with the bug. +set max_session_mem_used=64*1024*1024; +set @query=concat('explain select * from t2 where a in (', @query, ')'); +prepare s from @query; +# This should not fail with an error: +execute s; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t2 ALL a NULL NULL NULL 3 Using where +set max_session_mem_used=@tmp_24117; +deallocate prepare s; +drop table t0,t1,t2; +# # End of 10.2 tests # diff --git a/mysql-test/r/range_mrr_icp.result b/mysql-test/r/range_mrr_icp.result index fe4eb99f31f..d614a3397ee 100644 --- a/mysql-test/r/range_mrr_icp.result +++ b/mysql-test/r/range_mrr_icp.result @@ -3066,6 +3066,39 @@ a b set eq_range_index_dive_limit=default; drop table t1; # +# MDEV-24117: Memory management problem in statistics state... +# (just the testcase) +# +create table t0(a int); +insert into t0 values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9); +create table t1(a int); +insert into t1 +select A.a + B.a* 10 + C.a * 100 + D.a * 1000 +from t0 A, t0 B, t0 C, t0 D +where D.a<4; +create table t2 ( +a int, +b int, +key(a) +); +insert into t2 values (1,1),(2,2),(3,3); +set @query=(select group_concat(a) from t1); +set @tmp_24117= @@max_session_mem_used; +# +# On debug build, the usage was +# - 2.8M without the bug +# - 1G with the bug. +set max_session_mem_used=64*1024*1024; +set @query=concat('explain select * from t2 where a in (', @query, ')'); +prepare s from @query; +# This should not fail with an error: +execute s; +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t2 ALL a NULL NULL NULL 3 Using where +set max_session_mem_used=@tmp_24117; +deallocate prepare s; +drop table t0,t1,t2; +# # End of 10.2 tests # set optimizer_switch=@mrr_icp_extra_tmp; diff --git a/mysql-test/t/range.test b/mysql-test/t/range.test index 67d876d5f10..f34ac2049e1 100644 --- a/mysql-test/t/range.test +++ b/mysql-test/t/range.test @@ -2095,6 +2095,52 @@ set eq_range_index_dive_limit=default; drop table t1; +--echo # +--echo # MDEV-24117: Memory management problem in statistics state... +--echo # (just the testcase) +--echo # + +create table t0(a int); +insert into t0 values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9); + +create table t1(a int); + +# 4K rows +insert into t1 +select A.a + B.a* 10 + C.a * 100 + D.a * 1000 +from t0 A, t0 B, t0 C, t0 D +where D.a<4; + +create table t2 ( + a int, + b int, + key(a) +); + +insert into t2 values (1,1),(2,2),(3,3); + +set @query=(select group_concat(a) from t1); + +set @tmp_24117= @@max_session_mem_used; + +--echo # +--echo # On debug build, the usage was +--echo # - 2.8M without the bug +--echo # - 1G with the bug. + +set max_session_mem_used=64*1024*1024; + +set @query=concat('explain select * from t2 where a in (', @query, ')'); + +prepare s from @query; + +--echo # This should not fail with an error: +execute s; +set max_session_mem_used=@tmp_24117; + +deallocate prepare s; + +drop table t0,t1,t2; --echo # --echo # End of 10.2 tests --echo # From bea84aefb0563a10a310ea81d46c372919345c10 Mon Sep 17 00:00:00 2001 From: Igor Babaev Date: Mon, 9 Nov 2020 13:51:32 -0800 Subject: [PATCH 6/6] MDEV-23811: With large number of indexes optimizer chooses an inefficient plan This bug could manifest itself for a query with WHERE condition containing top level OR formula such that each conjunct contained a single-range condition supported by the same index. One of these range conditions must be fully covered by another range condition that is used later in the OR formula. Additionally at least one of these condition should be ANDed with a sargable range condition supported by a different index. There were several attempts to fix related problems for OR conditions after the backport of range optimizer code from MySQL (commit 0e19f3e36f7842583feb6bead2c2600cd620bced). Unfortunately the first of these fixes contained typo remained unnoticed until recently. This typo bug led to rejection of valid range accesses. This patch fixed this typo bug. The fix revealed another two bugs: one in a constructor for SEL_ARG, the other in the function tree_or(). Both are fixed in this patch. --- mysql-test/r/range.result | 72 +++++++++++++++++++ mysql-test/r/range_mrr_icp.result | 72 +++++++++++++++++++ .../r/range_vs_index_merge_innodb.result | 2 +- mysql-test/t/range.test | 42 +++++++++++ sql/opt_range.cc | 10 ++- 5 files changed, 194 insertions(+), 4 deletions(-) diff --git a/mysql-test/r/range.result b/mysql-test/r/range.result index b3324601e47..9ea0dc12a0b 100644 --- a/mysql-test/r/range.result +++ b/mysql-test/r/range.result @@ -3087,5 +3087,77 @@ set max_session_mem_used=@tmp_24117; deallocate prepare s; drop table t0,t1,t2; # +# MDEV-23811: Both disjunct of WHERE condition contain range conditions +# for the same index such that the second range condition +# fully covers the first one. Additionally one of the disjuncts +# contains a range condition for the other index. +# +create table t1 ( +pk int primary key auto_increment, a int, b int, +index idx1(a), index idx2(b) +); +insert into t1(a,b) values +(5,50), (1,10), (3,30), (7,70), (8,80), (4,40), (2,20), (6,60); +insert into t1(a,b) select a+10, b+100 from t1; +insert into t1(a,b) select a+20, b+200 from t1; +insert into t1(a,b) select a+30, b+300 from t1; +insert into t1(a,b) select a,b from t1; +analyze table t1; +Table Op Msg_type Msg_text +test.t1 analyze status OK +explain select * from t1 where ((a between 3 and 4) and b < 100) or (a between 2 and 5); +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t1 range idx1,idx2 idx1 5 NULL 11 Using index condition; Using where +select * from t1 where ((a between 3 and 4) and b < 100) or (a between 2 and 5); +pk a b +7 2 20 +71 2 20 +3 3 30 +67 3 30 +6 4 40 +70 4 40 +1 5 50 +65 5 50 +explain select * from t1 where (a between 2 and 5) or ((a between 3 and 4) and b < 100); +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t1 range idx1,idx2 idx1 5 NULL 11 Using index condition; Using where +select * from t1 where (a between 2 and 5) or ((a between 3 and 4) and b < 100); +pk a b +7 2 20 +71 2 20 +3 3 30 +67 3 30 +6 4 40 +70 4 40 +1 5 50 +65 5 50 +explain select * from t1 where (a between 3 and 4) or ((a between 2 and 5) and b < 100); +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t1 range idx1,idx2 idx1 5 NULL 11 Using index condition; Using where +select * from t1 where (a between 3 and 4) or ((a between 2 and 5) and b < 100); +pk a b +7 2 20 +71 2 20 +3 3 30 +67 3 30 +6 4 40 +70 4 40 +1 5 50 +65 5 50 +explain select * from t1 where ((a between 2 and 5) and b < 100) or (a between 3 and 4); +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t1 range idx1,idx2 idx1 5 NULL 11 Using index condition; Using where +select * from t1 where ((a between 2 and 5) and b < 100) or (a between 3 and 4); +pk a b +7 2 20 +71 2 20 +3 3 30 +67 3 30 +6 4 40 +70 4 40 +1 5 50 +65 5 50 +drop table t1; +# # End of 10.2 tests # diff --git a/mysql-test/r/range_mrr_icp.result b/mysql-test/r/range_mrr_icp.result index d614a3397ee..55613261ce9 100644 --- a/mysql-test/r/range_mrr_icp.result +++ b/mysql-test/r/range_mrr_icp.result @@ -3099,6 +3099,78 @@ set max_session_mem_used=@tmp_24117; deallocate prepare s; drop table t0,t1,t2; # +# MDEV-23811: Both disjunct of WHERE condition contain range conditions +# for the same index such that the second range condition +# fully covers the first one. Additionally one of the disjuncts +# contains a range condition for the other index. +# +create table t1 ( +pk int primary key auto_increment, a int, b int, +index idx1(a), index idx2(b) +); +insert into t1(a,b) values +(5,50), (1,10), (3,30), (7,70), (8,80), (4,40), (2,20), (6,60); +insert into t1(a,b) select a+10, b+100 from t1; +insert into t1(a,b) select a+20, b+200 from t1; +insert into t1(a,b) select a+30, b+300 from t1; +insert into t1(a,b) select a,b from t1; +analyze table t1; +Table Op Msg_type Msg_text +test.t1 analyze status OK +explain select * from t1 where ((a between 3 and 4) and b < 100) or (a between 2 and 5); +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t1 range idx1,idx2 idx1 5 NULL 11 Using index condition; Using where; Rowid-ordered scan +select * from t1 where ((a between 3 and 4) and b < 100) or (a between 2 and 5); +pk a b +1 5 50 +3 3 30 +6 4 40 +7 2 20 +65 5 50 +67 3 30 +70 4 40 +71 2 20 +explain select * from t1 where (a between 2 and 5) or ((a between 3 and 4) and b < 100); +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t1 range idx1,idx2 idx1 5 NULL 11 Using index condition; Using where; Rowid-ordered scan +select * from t1 where (a between 2 and 5) or ((a between 3 and 4) and b < 100); +pk a b +1 5 50 +3 3 30 +6 4 40 +7 2 20 +65 5 50 +67 3 30 +70 4 40 +71 2 20 +explain select * from t1 where (a between 3 and 4) or ((a between 2 and 5) and b < 100); +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t1 range idx1,idx2 idx1 5 NULL 11 Using index condition; Using where; Rowid-ordered scan +select * from t1 where (a between 3 and 4) or ((a between 2 and 5) and b < 100); +pk a b +1 5 50 +3 3 30 +6 4 40 +7 2 20 +65 5 50 +67 3 30 +70 4 40 +71 2 20 +explain select * from t1 where ((a between 2 and 5) and b < 100) or (a between 3 and 4); +id select_type table type possible_keys key key_len ref rows Extra +1 SIMPLE t1 range idx1,idx2 idx1 5 NULL 11 Using index condition; Using where; Rowid-ordered scan +select * from t1 where ((a between 2 and 5) and b < 100) or (a between 3 and 4); +pk a b +1 5 50 +3 3 30 +6 4 40 +7 2 20 +65 5 50 +67 3 30 +70 4 40 +71 2 20 +drop table t1; +# # End of 10.2 tests # set optimizer_switch=@mrr_icp_extra_tmp; diff --git a/mysql-test/r/range_vs_index_merge_innodb.result b/mysql-test/r/range_vs_index_merge_innodb.result index 581f512768c..916c30bb770 100644 --- a/mysql-test/r/range_vs_index_merge_innodb.result +++ b/mysql-test/r/range_vs_index_merge_innodb.result @@ -369,7 +369,7 @@ WHERE ((ID < 200) AND (Name LIKE 'Ha%' OR (Country > 'A' AND Country < 'ARG'))) OR ((ID BETWEEN 100 AND 200) AND (Name LIKE 'Pa%' OR (Population > 103000 AND Population < 104000))); id select_type table type possible_keys key key_len ref rows Extra -1 SIMPLE City index_merge PRIMARY,Population,Country,Name Name,Population,PRIMARY 39,4,4 NULL 307 Using sort_union(Name,Population,PRIMARY); Using where +1 SIMPLE City range PRIMARY,Population,Country,Name PRIMARY 4 NULL 200 Using where SELECT * FROM City USE INDEX () WHERE ((ID < 10) AND (Name LIKE 'H%' OR (Country > 'A' AND Country < 'ARG'))) OR ((ID BETWEEN 100 AND 110) AND diff --git a/mysql-test/t/range.test b/mysql-test/t/range.test index f34ac2049e1..264f7c784ce 100644 --- a/mysql-test/t/range.test +++ b/mysql-test/t/range.test @@ -2141,6 +2141,48 @@ set max_session_mem_used=@tmp_24117; deallocate prepare s; drop table t0,t1,t2; +--echo # +--echo # MDEV-23811: Both disjunct of WHERE condition contain range conditions +--echo # for the same index such that the second range condition +--echo # fully covers the first one. Additionally one of the disjuncts +--echo # contains a range condition for the other index. +--echo # + +create table t1 ( + pk int primary key auto_increment, a int, b int, + index idx1(a), index idx2(b) +); +insert into t1(a,b) values + (5,50), (1,10), (3,30), (7,70), (8,80), (4,40), (2,20), (6,60); +insert into t1(a,b) select a+10, b+100 from t1; +insert into t1(a,b) select a+20, b+200 from t1; +insert into t1(a,b) select a+30, b+300 from t1; +insert into t1(a,b) select a,b from t1; + +analyze table t1; + +let $q1= +select * from t1 where ((a between 3 and 4) and b < 100) or (a between 2 and 5); +eval explain $q1; +eval $q1; + +let $q2= +select * from t1 where (a between 2 and 5) or ((a between 3 and 4) and b < 100); +eval explain $q2; +eval $q2; + +let $q3= +select * from t1 where (a between 3 and 4) or ((a between 2 and 5) and b < 100); +eval explain $q3; +eval $q3; + +let $q4= +select * from t1 where ((a between 2 and 5) and b < 100) or (a between 3 and 4); +eval explain $q4; +eval $q4; + +drop table t1; + --echo # --echo # End of 10.2 tests --echo # diff --git a/sql/opt_range.cc b/sql/opt_range.cc index e933d2af355..798b1f284bc 100644 --- a/sql/opt_range.cc +++ b/sql/opt_range.cc @@ -1852,6 +1852,9 @@ SEL_ARG::SEL_ARG(SEL_ARG &arg) :Sql_alloc() next_key_part=arg.next_key_part; max_part_no= arg.max_part_no; use_count=1; elements=1; + next= 0; + if (next_key_part) + ++next_key_part->use_count; } @@ -9597,10 +9600,11 @@ key_or(RANGE_OPT_PARAM *param, SEL_ARG *key1,SEL_ARG *key2) if (!tmp->next_key_part) { - if (key2->use_count) + SEL_ARG *key2_next= key2->next; + if (key2_shared) { SEL_ARG *key2_cpy= new SEL_ARG(*key2); - if (key2_cpy) + if (!key2_cpy) return 0; key2= key2_cpy; } @@ -9621,7 +9625,7 @@ key_or(RANGE_OPT_PARAM *param, SEL_ARG *key1,SEL_ARG *key2) Move on to next range in key2 */ key2->increment_use_count(-1); // Free not used tree - key2=key2->next; + key2=key2_next; continue; } else