WL#10300: Change Optimizer 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.

To reproduce, do:

./mtr --mem --charset-for-testdb=utf8mb4