mirror of
https://github.com/MariaDB/server.git
synced 2025-11-28 17:36:30 +03:00
a. The change makes `mariadb-upgrade` detect if `MYSQL_JSON` data type is needed. b. Install the data type if it's not installed. c. Uninstalls the data type once finished. d. Create `.opt` and `.inc` files `have_type_mysql_json` and adapt the tests Reviewed by: vicentiu@mariadb.org
96 lines
3.8 KiB
Plaintext
96 lines
3.8 KiB
Plaintext
#
|
|
# MDEV-24093: Detect during mysql_upgrade if type_mysql_json.so
|
|
# is needed and load it
|
|
#
|
|
SET NAMES utf8;
|
|
call mtr.add_suppression("Table rebuild required");
|
|
show create table mysql_json_test;
|
|
ERROR HY000: Table rebuild required. Please do "ALTER TABLE `test.mysql_json_test` FORCE" or dump/reload to fix it!
|
|
Phase 1/7: Checking and upgrading mysql database
|
|
Processing databases
|
|
mysql
|
|
mysql.column_stats OK
|
|
mysql.columns_priv OK
|
|
mysql.db OK
|
|
mysql.event OK
|
|
mysql.func OK
|
|
mysql.global_priv OK
|
|
mysql.gtid_slave_pos OK
|
|
mysql.help_category OK
|
|
mysql.help_keyword OK
|
|
mysql.help_relation OK
|
|
mysql.help_topic OK
|
|
mysql.index_stats OK
|
|
mysql.innodb_index_stats
|
|
Error : Unknown storage engine 'InnoDB'
|
|
error : Corrupt
|
|
mysql.innodb_table_stats
|
|
Error : Unknown storage engine 'InnoDB'
|
|
error : Corrupt
|
|
mysql.plugin OK
|
|
mysql.proc OK
|
|
mysql.procs_priv OK
|
|
mysql.proxies_priv OK
|
|
mysql.roles_mapping OK
|
|
mysql.servers OK
|
|
mysql.table_stats OK
|
|
mysql.tables_priv OK
|
|
mysql.time_zone OK
|
|
mysql.time_zone_leap_second OK
|
|
mysql.time_zone_name OK
|
|
mysql.time_zone_transition OK
|
|
mysql.time_zone_transition_type OK
|
|
mysql.transaction_registry
|
|
Error : Unknown storage engine 'InnoDB'
|
|
error : Corrupt
|
|
|
|
Repairing tables
|
|
mysql.innodb_index_stats
|
|
Error : Unknown storage engine 'InnoDB'
|
|
error : Corrupt
|
|
mysql.innodb_table_stats
|
|
Error : Unknown storage engine 'InnoDB'
|
|
error : Corrupt
|
|
mysql.transaction_registry
|
|
Error : Unknown storage engine 'InnoDB'
|
|
error : Corrupt
|
|
Phase 2/7: Installing used storage engines... Skipped
|
|
Phase 3/7: Fixing views
|
|
mysql.user OK
|
|
Phase 4/7: Running 'mysql_fix_privilege_tables'
|
|
Phase 5/7: Fixing table and database names
|
|
Phase 6/7: Checking and upgrading tables
|
|
Processing databases
|
|
information_schema
|
|
mtr
|
|
mtr.global_suppressions OK
|
|
mtr.test_suppressions OK
|
|
performance_schema
|
|
test
|
|
test.mysql_json_test Needs upgrade
|
|
test.mysql_json_test_big Needs upgrade
|
|
|
|
Repairing tables
|
|
test.mysql_json_test OK
|
|
test.mysql_json_test_big OK
|
|
Phase 7/7: Running 'FLUSH PRIVILEGES'
|
|
OK
|
|
show create table mysql_json_test;
|
|
Table Create Table
|
|
mysql_json_test CREATE TABLE `mysql_json_test` (
|
|
`description` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
|
`expected` longtext COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
|
`actual` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL
|
|
) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
|
|
show create table mysql_json_test_big;
|
|
Table Create Table
|
|
mysql_json_test_big CREATE TABLE `mysql_json_test_big` (
|
|
`description` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
|
`expected` longtext COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
|
`actual` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL
|
|
) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
|
|
select * from mysql.plugin;
|
|
name dl
|
|
drop table mysql_json_test;
|
|
drop table mysql_json_test_big;
|