Description:
Test ndb.ndbinfo_upgrade passes but fails the post test run checks:
Check of testcase failed for: ndb.ndbinfo_upgrade.
This since after the call to mysql_upgrade all ndbinfo tables are created with character set utf8mb4 instead of the original latin1.
A workaround is to add --default-character-set=latin1 to the call of mysql_upgrade, but that feels like the wrong approach.
One can also note that the the ndbinfo database default charset is latin1:
show create database ndbinfo;
Database Create Database
ndbinfo CREATE DATABASE `ndbinfo` /*!40100 DEFAULT CHARACTER SET latin1 */
How to repeat:
Run: ./mtr ndb.ndbinfo_upgrade
ndb.ndbinfo_upgrade [ pass ] 969
MTR's internal check of the test case 'ndb.ndbinfo_upgrade' failed.
This means that the test case does not preserve the state that existed
before the test case was executed. Most likely the test case did not
do a proper clean-up. It could also be caused by the previous test run
by this thread, if the server wasn't restarted.
This is the diff of the states of the servers before and after the
test case was executed:
mysqltest: Logging to '/home/msundell/dev/mysql-7.5-wl8817/bld/mysql-test/var/tmp/check-mysqld_1_1.log'.
mysqltest: Results saved in '/home/msundell/dev/mysql-7.5-wl8817/bld/mysql-test/var/tmp/check-mysqld_1_1.result'.
mysqltest: Connecting to server localhost:13001 (socket /home/msundell/dev/mysql-7.5-wl8817/bld/mysql-test/var/tmp/mysqld.1.1.sock) as 'root', connection 'default', attempt 0 ...
mysqltest: ... Connected.
mysqltest: Start processing test commands from './include/check-testcase.test' ...
mysqltest: ... Done processing test commands.
--- /home/msundell/dev/mysql-7.5-wl8817/bld/mysql-test/var/tmp/check-mysqld_1_1.result 2016-02-05 22:14:12.948482255 +0300
+++ /home/msundell/dev/mysql-7.5-wl8817/bld/mysql-test/var/tmp/check-mysqld_1_1.reject 2016-02-05 22:14:16.103482386 +0300
@@ -2961,34 +2961,34 @@
1 row in set (0.00 sec)
mysql.sys@localhost utf8 utf8_general_ci utf8_general_ci
TABLE_CATALOG TABLE_SCHEMA TABLE_NAME VIEW_DEFINITION CHECK_OPTION IS_UPDATABLE DEFINER SECURITY_TYPE CHARACTER_SET_CLIENT COLLATION_CONNECTION
-def ndbinfo arbitrator_validity_detail ... ot@localhost INVOKER latin1 latin1_swedish_ci
-def ndbinfo arbitrator_validity_summary ... ot@localhost INVOKER latin1 latin1_swedish_ci
-def ndbinfo blocks select `ndbinfo`.`nd ... ot@localhost INVOKER latin1 latin1_swedish_ci
-def ndbinfo cluster_operations select ` ... ot@localhost INVOKER latin1 latin1_swedish_ci
-def ndbinfo cluster_transactions select ... ot@localhost INVOKER latin1 latin1_swedish_ci
-def ndbinfo config_params select `ndbin ... ot@localhost INVOKER latin1 latin1_swedish_ci
-def ndbinfo config_values select `ndbin ... ot@localhost INVOKER latin1 latin1_swedish_ci
-def ndbinfo counters select `c`.`node_i ... ot@localhost INVOKER latin1 latin1_swedish_ci
-def ndbinfo dict_obj_types select `ndbi ... ot@localhost INVOKER latin1 latin1_swedish_ci
-def ndbinfo disk_write_speed_aggregate ... ot@localhost INVOKER latin1 latin1_swedish_ci
-def ndbinfo disk_write_speed_aggregate_ ... ot@localhost INVOKER latin1 latin1_swedish_ci
-def ndbinfo disk_write_speed_base selec ... ot@localhost INVOKER latin1 latin1_swedish_ci
-def ndbinfo diskpagebuffer select `ndbi ... ot@localhost INVOKER latin1 latin1_swedish_ci
-def ndbinfo logbuffers select `ndbinfo` ... ot@localhost INVOKER latin1 latin1_swedish_ci
-def ndbinfo logspaces select `ndbinfo`. ... ot@localhost INVOKER latin1 latin1_swedish_ci
-def ndbinfo membership select `ndbinfo` ... ot@localhost INVOKER latin1 latin1_swedish_ci
-def ndbinfo memory_per_fragment select ... ot@localhost INVOKER latin1 latin1_swedish_ci
-def ndbinfo memoryusage select `ndbinfo ... ot@localhost INVOKER latin1 latin1_swedish_ci
-def ndbinfo nodes select `ndbinfo`.`ndb ... ot@localhost INVOKER latin1 latin1_swedish_ci
-def ndbinfo operations_per_fragment sel ... ot@localhost INVOKER latin1 latin1_swedish_ci
-def ndbinfo resources select `ndbinfo`. ... ot@localhost INVOKER latin1 latin1_swedish_ci
-def ndbinfo restart_info select `ndbinf ... ot@localhost INVOKER latin1 latin1_swedish_ci
-def ndbinfo server_operations select `m ... ot@localhost INVOKER latin1 latin1_swedish_ci
-def ndbinfo server_transactions select ... ot@localhost INVOKER latin1 latin1_swedish_ci
-def ndbinfo tc_time_track_stats select ... ot@localhost INVOKER latin1 latin1_swedish_ci
-def ndbinfo threadblocks select `t`.`no ... ot@localhost INVOKER latin1 latin1_swedish_ci
-def ndbinfo threadstat select `ndbinfo` ... ot@localhost INVOKER latin1 latin1_swedish_ci
-def ndbinfo transporters select `ndbinf ... ot@localhost INVOKER latin1 latin1_swedish_ci
+def ndbinfo arbitrator_validity_detail ... @localhost INVOKER utf8mb4 utf8mb4_general_ci
+def ndbinfo arbitrator_validity_summary ... @localhost INVOKER utf8mb4 utf8mb4_general_ci
+def ndbinfo blocks select `ndbinfo`.`nd ... @localhost INVOKER utf8mb4 utf8mb4_general_ci
+def ndbinfo cluster_operations select ` ... @localhost INVOKER utf8mb4 utf8mb4_general_ci
+def ndbinfo cluster_transactions select ... @localhost INVOKER utf8mb4 utf8mb4_general_ci
+def ndbinfo config_params select `ndbin ... @localhost INVOKER utf8mb4 utf8mb4_general_ci
+def ndbinfo config_values select `ndbin ... @localhost INVOKER utf8mb4 utf8mb4_general_ci
+def ndbinfo counters select `c`.`node_i ... @localhost INVOKER utf8mb4 utf8mb4_general_ci
+def ndbinfo dict_obj_types select `ndbi ... @localhost INVOKER utf8mb4 utf8mb4_general_ci
+def ndbinfo disk_write_speed_aggregate ... @localhost INVOKER utf8mb4 utf8mb4_general_ci
+def ndbinfo disk_write_speed_aggregate_ ... @localhost INVOKER utf8mb4 utf8mb4_general_ci
+def ndbinfo disk_write_speed_base selec ... @localhost INVOKER utf8mb4 utf8mb4_general_ci
+def ndbinfo diskpagebuffer select `ndbi ... @localhost INVOKER utf8mb4 utf8mb4_general_ci
+def ndbinfo logbuffers select `ndbinfo` ... @localhost INVOKER utf8mb4 utf8mb4_general_ci
+def ndbinfo logspaces select `ndbinfo`. ... @localhost INVOKER utf8mb4 utf8mb4_general_ci
+def ndbinfo membership select `ndbinfo` ... @localhost INVOKER utf8mb4 utf8mb4_general_ci
+def ndbinfo memory_per_fragment select ... @localhost INVOKER utf8mb4 utf8mb4_general_ci
+def ndbinfo memoryusage select `ndbinfo ... @localhost INVOKER utf8mb4 utf8mb4_general_ci
+def ndbinfo nodes select `ndbinfo`.`ndb ... @localhost INVOKER utf8mb4 utf8mb4_general_ci
+def ndbinfo operations_per_fragment sel ... @localhost INVOKER utf8mb4 utf8mb4_general_ci
+def ndbinfo resources select `ndbinfo`. ... @localhost INVOKER utf8mb4 utf8mb4_general_ci
+def ndbinfo restart_info select `ndbinf ... @localhost INVOKER utf8mb4 utf8mb4_general_ci
+def ndbinfo server_operations select `m ... @localhost INVOKER utf8mb4 utf8mb4_general_ci
+def ndbinfo server_transactions select ... @localhost INVOKER utf8mb4 utf8mb4_general_ci
+def ndbinfo tc_time_track_stats select ... @localhost INVOKER utf8mb4 utf8mb4_general_ci
+def ndbinfo threadblocks select `t`.`no ... @localhost INVOKER utf8mb4 utf8mb4_general_ci
+def ndbinfo threadstat select `ndbinfo` ... @localhost INVOKER utf8mb4 utf8mb4_general_ci
+def ndbinfo transporters select `ndbinf ... @localhost INVOKER utf8mb4 utf8mb4_general_ci
Suggested fix:
Make sure mysql_upgrade and mysql_install_db and other ways to create the ndbinfo tables uses the same table default character sets.