WL#10319: Change X Plugin tests to run with new default charset

Affects: Server-8.0   —   Status: Complete   —   Priority: Medium

WL#9125 added a new utf8mb4 collation, utf8mb4_800_ci_ai, which implemented the latest UCA (Unicode Collation Algorithm), UCA8.0.0. MySQL will use utf8mb4 as the new default character set. Most of the existing test cases assume the default character set is latin1 and default collation is latin1_swedish_ci. These tests either need to be recorded again or modified accordingly to run with the new default value, or made to run with latin1 if they cannot run with utf8mb4.

User Documentation

Work was done for test suite. No user documentation needed.

The low level design specification contains the list of all the failing tests. These tests need to modified to successfully run with the new default charset. The following MTR setting can be made:

In the mysql-test/include/default_mysqld.cnf, the following setting needs to be added: character-set-server= utf8mb4.

And in mysql-test/include/default_client.cnf replace all instances of default-character-set=latin1 with default-character-set=utf8mb4.

The following tests fail due to mismatches in the charset value, which is expected. The result needs to be updated after it is verified.

S.No Test name Reason of failure Details
1 x.create_alter_sql Result content mismatch Result recorded
2 x.create_drop_collection_crud Result content mismatch Result recorded
3 x.crud_myisam_memory Result content mismatch Result recorded
4 x.drop_index_crud Result content mismatch Result recorded
5 x.crud_drop_view Result content mismatch Result recorded
6 x.crud_modify_view Result content mismatch Result recorded

These tests need to be recorded again, after checking whether the mismatch is expected or not.

S.No Test name Reason of failure Details
1 x.find_crud_conditionalclauses_o Result content mismatch Result recorded
2 x.stmtexecute_query_result Result content mismatch Result recorded
3 x.stmtexecute_status_vars Result content mismatch Result recorded
4 x.notice_warning Result content mismatch Result recorded
5 x.notices_disable Result content mismatch Result recorded
6 x.notices_enable Result content mismatch Result recorded
7 x.notices_enable_mysqlx Result content mismatch Passes now