WL#10296: Change replication tests to run with new default charset
Affects: Server-8.0
—
Status: Complete
WL#7554 added a workaround to make some tests pass with utf8mb4. This WL will remove the workaround and fix the tests in replication and binlog suites.
User Documentation
Work was done for test suite. No user documentation required.
- There shall be no workarounds to make tests pass with the new default charset utf8mb4
LLD has list of tests that have the workaround. Remove the workarounds and make changes needed for test to pass
Tests to be migrated
Tests that use alter table :
- mysql-test/suite/rpl/t/rpl_bug26395.test
- mysql-test/suite/rpl/t/rpl_binlog_errors.test
- mysql-test/suite/rpl/t/rpl_xa_survive_crash_debug.test
- mysql-test/suite/rpl_gtid/t/rpl_gtid_delete_memory_table_after_start_server.test
- mysql-test/suite/rpl_gtid/t/rpl_gtids_table.test
- mysql-test/suite/rpl_nogtid/t/default_row_format_02.test
- mysql-test/suite/rpl_nogtid/t/rpl_mixed_implicit_commit_binlog.test
- mysql-test/suite/rpl_nogtid/t/rpl_row_create_select.test
- mysql-test/suite/rpl_nogtid/t/rpl_row_implicit_commit_binlog.test
- mysql-test/suite/rpl_nogtid/t/rpl_stm_implicit_commit_binlog.test
- mysql-test/suite/binlog_gtid/t/binlog_gtid_next_partially_failed_stmts.test
- mysql-test/suite/binlog_nogtid/t/binlog_mysqlbinlog_start_stop_slave_server_id.test
- mysql-test/suite/binlog_nogtid/t/binlog_old_versions.test
- mysql-test/suite/binlog_nogtid/t/binlog_stm_mix_innodb_myisam.test
- mysql-test/suite/binlog_nogtid/t/binlog_unsafe.test
- internal/mysql-test/suite/i_binlog_nogtid/t/binlog_corrupted_field_length.test
- mysql-test/suite/binlog/t/binlog_drop_if_exists.test
- mysql-test/suite/binlog/t/binlog_stm_blackhole.test
Tests that set character-set-server at bootstrap in opt file:
- None
Original list of failing tests
The list of following tests fail due to result content mismatch in the charset value, which is expected. The result file needs to be updated, after verifying the charset value.
S.No | Test name | Reason of failure | Details | Developer Notes |
---|---|---|---|---|
1 | binlog_gtid.binlog_gtid_stm_ctype_ucs | Result content mismatch | Mismatch in collation_server printed by mysqlbinlog.inc. Result file needs to be recorded. | Result recorded |
2 | binlog_gtid.binlog_gtid_mysqlbinlog_start_stop | Result content mismatch | Mismatch in collation_server printed by mysqlbinlog.inc. Result file needs to be recorded. | Result recorded |
3 | binlog_gtid.binlog_gtid_mysqlbinlog_row | Result content mismatch | Mismatch in collation_server printed by mysqlbinlog.inc. Result file needs to be recorded. | Result recorded |
4 | binlog_gtid.binlog_gtid_mysqlbinlog_row_innodb | Result content mismatch | Mismatch in collation_server printed by mysqlbinlog.inc. Result file needs to be recorded. | Result recorded |
5 | binlog_gtid.binlog_gtid_mysqlbinlog_row_myisam | Result content mismatch | Mismatch in collation_server printed by mysqlbinlog.inc. Result file needs to be recorded. | Result recorded |
6 | rpl.rpl_innodb_mixed_dml | Result content mismatch | Mismatch in the collation. Result needs to be recorded. | Result recorded |
7 | rpl_nogtid.rpl_sp_innodb | Result content mismatch | Mismatch in the collation. Result needs to be recorded. | Result recorded |
8 | rpl_nogtid.rpl_sp_myisam | Result content mismatch | Mismatch in the collation. Result needs to be recorded. | Result recorded |
9 | rpl_nogtid.rpl_row_ignorable_event | Result content mismatch | Mismatch in collation_server printed by mysqlbinlog.inc. Result file needs to be recorded. | Result recorded |
10 | rpl_nogtid.rpl_row_mysqlbinlog | Result content mismatch | Mismatch in collation_server printed by mysqlbinlog.inc. Result file needs to be recorded. | Result recorded |
11 | rpl_nogtid.rpl_create_if_not_exists | Result content mismatch | Mismatch in the collation. Result needs to be recorded. | Result recorded |
12 | rpl_nogtid.rpl_do_grant | Result content mismatch | Mismatch in the charset. Result needs to be updated. | Result recorded |
13 | rpl_nogtid.rpl_binlog_json | Result content mismatch | Mismatch in collation_server printed by mysqlbinlog.inc. Result file needs to be recorded. | Result recorded |
14 | rpl_nogtid.rpl_stm_innodb | Result content mismatch | Mismatch in the charset printed by SHOW CREATE TABLE. Result needs to be updated. | Result recorded |
15 | binlog_nogtid.binlog_mysqlbinlog_start_stop | Result content mismatch | Mismatch in collation_server printed by mysqlbinlog.inc. Result file needs to be recorded. | Result recorded |
16 | binlog_nogtid.binlog_mysqlbinlog_start_stop_slave_server_id | Result content mismatch | Mismatch in collation_server printed by mysqlbinlog.inc. Result file needs to be recorded. | Result recorded |
17 | binlog_nogtid.binlog_stm_ctype_ucs | Result content mismatch | Mismatch in collation_server printed by mysqlbinlog.inc. Result file needs to be recorded. | Result recorded |
18 | binlog_nogtid.binlog_mysqlbinlog_row | Result content mismatch | Mismatch in collation_server printed by mysqlbinlog.inc. Result file needs to be recorded. | Result recorded |
19 | binlog_nogtid.binlog_mysqlbinlog_row_innodb | Result content mismatch | Mismatch in collation_server printed by mysqlbinlog.inc. Result file needs to be recorded. | Result recorded |
20 | binlog_nogtid.binlog_mysqlbinlog_row_myisam | Result content mismatch | Mismatch in collation_server printed by mysqlbinlog.inc. Result file needs to be recorded. | Result recorded |
21 | binlog_nogtid.binlog_mysqlbinlog_row_trans | Result content mismatch | Mismatch in collation_server printed by mysqlbinlog.inc. Result file needs to be recorded. | Result recorded |
22 | binlog_nogtid.binlog_row_ctype_ucs | Result content mismatch | Mismatch in collation_server printed by mysqlbinlog.inc. Result file needs to be recorded. | Result recorded |
23 | i_rpl_nogtid.rpl_mixed_backtick_myisam | Result content mismatch | Mismatch in the charset printed by show_binlog_events.inc. Result needs to be updated. | Result recorded |
24 | i_rpl_nogtid.rpl_stm_backtick_myisam | Result content mismatch | Mismatch in the charset printed by show_binlog_events.inc. Result needs to be updated. | Result recorded |
25 | i_rpl_nogtid.rpl_mixed_backtick_innodb | Result content mismatch | Mismatch in the charset. Result needs to be updated. | Result recorded |
26 | i_rpl_nogtid.rpl_row_backtick_innodb | Result content mismatch | Mismatch in the charset. Result needs to be updated. | Result recorded |
27 | i_rpl_nogtid.rpl_row_backtick_myisam | Result content mismatch | Mismatch in the charset. Result needs to be updated. | Result recorded |
28 | i_rpl_nogtid.rpl_stm_backtick_innodb | Result content mismatch | Mismatch in the charset. Result needs to be updated. | Result recorded |
29 | i_rpl_gtid.rpl_gtid_mixed_backtick_innodb | Result content mismatch | Mismatch in the charset. Result needs to be updated. | Result recorded |
30 | i_rpl_gtid.rpl_gtid_stm_backtick_innodb | Result content mismatch | Mismatch in the charset. Result needs to be updated. | Result recorded |
31 | i_rpl_gtid.rpl_gtid_row_backtick_innodb | Result content mismatch | Mismatch in the charset. Result needs to be updated. | Result recorded |
32 | main.user_var-binlog | Result content mismatch | Mismatch in collation_server printed by mysqlbinlog.inc. Result file needs to be recorded. | Result recorded |
33 | i_rpl_nogtid.rpl_wl6292 | Result content mismatch | Mismatch in charset value. Result needs to be updated. | Result recorded |
34 | rpl.rpl_auto_increment | Result content mismatch | Mismatch in charset value. Result needs to be updated. | Result recorded |
35 | binlog_gtid.binlog_gtid_next_partially_failed_stmts | Result content mismatch | Mismatch in charset value. Result needs to be updated | Result recorded |
36 | rpl.rpl_partition_innodb | Result content mismatch | Mismatch in charset value. Result needs to be updated | Result recorded |
37 | rpl.rpl_innodb_bug28430 | Result content mismatch | Mismatch in charset value. Result needs to be updated | Result recorded |
38 | rpl.rpl_skip_error | Result content mismatch | Mismatch in charset value. Result needs to be updated | Result recorded |
39 | rpl.rpl_spec_variables | Result content mismatch | Mismatch in charset value. Result needs to be updated | Result recorded |
40 | rpl.rpl_bug26395 | Result content mismatch | Mismatch in charset value. Result needs to be updated | Result recorded |
41 | rpl.rpl_colSize | Result content mismatch | Mismatch in charset value. Result needs to be updated | Result recorded |
42 | rpl.rpl_gis_geometry | Result content mismatch | Mismatch in charset value. Result needs to be updated | Result recorded |
43 | rpl_nogtid.rpl_row_implicit_commit_binlog | Result content mismatch | Mismatch in charset value. Result needs to be updated | Result recorded |
44 | rpl_nogtid.rpl_mixed_implicit_commit_binlog | Result content mismatch | Mismatch in charset value. Result needs to be updated | Result recorded |
45 | rpl_nogtid.rpl_stm_implicit_commit_binlog | Result content mismatch | Mismatch in charset value. Result needs to be updated | Result recorded |
46 | rpl_nogtid.rpl_replicate_do | Result content mismatch | Mismatch in charset value. Result needs to be updated | Result recorded |
47 | rpl_nogtid.rpl_deadlock_innodb | Result content mismatch | Mismatch in charset value. Result needs to be updated | Result recorded |
48 | rpl.rpl_multi_engine | Result content mismatch | Mismatch in charset value. Result needs to be updated | Result recorded |
49 | binlog_nogtid.binlog_stm_mix_innodb_myisam | Result content mismatch | Mismatch in charset value. Result needs to be updated | Result recorded |
50 | rpl.rpl_ps | Result content mismatch | Mismatch in charset value. Result needs to be updated | Result recorded |
51 | rpl.rpl_multi_engine | Result content mismatch | Mismatch in charset value. Result needs to be updated | Result recorded |
52 | binlog.binlog_drop_if_exists | Result content mismatch | Mismatch in charset value. Result needs to be updated | Result recorded |
53 | rpl_nogtid.rpl_mixed_ddl_dml | Result content mismatch | Mismatch in charset value. Result needs to be updated | Result recorded |
54 | rpl.rpl_row_UUID | Result content mismatch | Mismatch in charset value. Result needs to be updated | Result recorded |
55 | rpl_nogtid.rpl_extra_col_slave_innodb | Result content mismatch | Mismatch in charset value. Result needs to be updated | Result recorded |
56 | rpl_nogtid.rpl_extra_col_slave_myisam | Result content mismatch | Mismatch in charset value. Result needs to be updated | Result recorded |
57 | rpl.rpl_row_basic_8partition | Result content mismatch | Mismatch in charset value. Result needs to be updated | Result recorded |
58 | rpl_nogtid.rpl_read_only | Result content mismatch | Mismatch in charset value. Result needs to be updated | Result recorded |
59 | main.no_binlog_gtid_next_partially_failed_stmts | Result content mismatch | Mismatch in charset value. Result needs to be updated | Result recorded |
60 | rpl_nogtid.rpl_trigger | Result content mismatch | Mismatch in charset value. Result needs to be updated | Result recorded |
61 | rpl_nogtid.rpl_no_gtid_split_statements | Result content mismatch | Mismatch in charset value. Result needs to be updated | Result recorded |
62 | rpl_nogtid.rpl_row_create_select | Result content mismatch | Mismatch in charset value. Result needs to be updated | Result recorded |
63 | rpl_gtid.rpl_gtid_split_statements | Result content mismatch | Mismatch in charset value. Result needs to be updated | Result recorded |
64 | i_rpl_nogtid.rpl_user_var_zero_length_name | Result content mismatch | Mismatch in charset value. Result needs to be updated | Result recorded |
65 | binlog.binlog_mysqlbinlog_filter | Result content mismatch | Mismatch in charset value. Result needs to be updated | Result recorded |
66 | binlog.binlog_xa_prepared_disconnect | Result content mismatch | Mismatch in charset value. Result needs to be updated | Result recorded |
67 | rpl.rpl_xa_survive_crash_debug | Result content mismatch | Mismatch in charset value. Result needs to be updated | Result recorded |
68 | rpl.rpl_xa_survive_disconnect | Result content mismatch | Mismatch in charset value. Result needs to be updated | Result recorded |
69 | rpl.rpl_xa_survive_disconnect_lsu_off | Result content mismatch | Mismatch in charset value. Result needs to be updated | Result recorded |
70 | rpl.rpl_xa_survive_disconnect_table | Result content mismatch | Mismatch in charset value. Result needs to be updated | Result recorded |
71 | rpl_gtid.rpl_gtids_table | Result content mismatch | Mismatch in charset value. Result needs to be updated | Result recorded |
72 | rpl_gtid.rpl_gtid_delete_memory_table_after_start_server | Result content mismatch | Mismatch in charset value. Result needs to be updated | Result recorded |
The remaining tests fail due to other reasons and need to be analyzed further:
S.No | Test name | Reason of failure | Details | Developer Notes |
---|---|---|---|---|
1 | rpl.rpl_special_charset | Query failed | INSERT failed. Incorrect string value for insert | Changed charset of table to latin1 |
2 | rpl.rpl_rewrt_db | Result content mismatch | Mismatch in warnings and result | Changed charset of table to latin1 |
3 | main.mysqlbinlog | Query failed | Query 'LOAD DATA INFILE' failed. Invalid utf8mb4 character string | Changed charset of table to latin1 |
4 | rpl_nogtid.default_row_format_02 | Query failed | CREATE TABLE failed because specified key was too long | Changed charset of column to latin1 |
5 | rpl.rpl_insert_id | Query failed | CREATE TABLE failed because specified key was too long | Reduced length of column |
6 | rpl.default_row_format_01 | Query failed | CREATE TABLE failed because specified key was too long | Changed charset of table to latin1 |
7 | rpl.rpl_row_corrupt | Query failed | CREATE TABLE failed because column length was too big | Changed charset of table to latin1 |
8 | rpl.rpl_binlog_errors | Query failed | CREATE TABLE failed because column length was too big | Reduced length of column |
9 | rpl.rpl_func_uuid | Query failed | INSERT failed. Incorrect string value for insert | Changed charset of column to binary |
10 | rpl.rpl_user_variables | Result content mismatch | Change in order of result | Changed charset of table to latin1 |
11 | rpl.rpl_loaddata_charset | Query failed | Query 'LOAD DATA INFILE' failed. Invalid utf8mb4 character string | Changed charset of table to latin1 |
12 | rpl_nogtid.rpl_stm_binlog_max_cache_size | Query failed | CREATE TABLE failed because column length was too big | Changed charset of table to latin1 |
13 | binlog_nogtid.binlog_unsafe | Query failed | INSERT failed. Incorrect string value for insert | Changed charset of table to latin1 |
14 | rpl_nogtid.rpl_mixed_binlog_max_cache_size | Query failed | CREATE TABLE failed because column length was too big | Changed charset of table to latin1 |
15 | binlog.binlog_stm_blackhole | Result content mismatch | Mismatch in sub_part | Changed charset of table to latin1 |
16 | binlog_nogtid.binlog_old_versions | Command failed | Command $MYSQL_BINLOG failed. | Set --slave_type_conversions=ALL_NON_LOSSY in opt file |
17 | i_binlog_nogtid.binlog_corrupted_field_length | Warnings/errors in server log | [ERROR] Slave SQL: Column 1 of table 'test.t1' cannot be converted from type 'varchar(1000)' to type 'varchar(1000)' | Set --slave_type_conversions=ALL_NON_LOSSY in opt file |
18 | rpl.rpl_row_tbl_metadata | Query failed | SELECT failed. Out of sort memory | Changed charset of table to latin1 |
Copyright (c) 2000, 2024, Oracle Corporation and/or its affiliates. All rights reserved.