mirror of
https://github.com/MariaDB/server.git
synced 2025-07-23 08:45:18 +03:00
MDEV-32188 make TIMESTAMP use whole 32-bit unsigned range - Added --update-history option to mariadb-dump to change 2038 row_end timestamp to 2106. - Updated ALTER TABLE ... to convert old row_end timestamps to 2106 timestamp for tables created before MariaDB 11.4.0. - Fixed bug in CHECK TABLE where we wrongly suggested to USE REPAIR TABLE when ALTER TABLE...FORCE is needed. - mariadb-check printed table names that where used with REPAIR TABLE but did not print table names used with ALTER TABLE or with name repair. Fixed by always printing a table that is fixed if --silent is not used. - Added TABLE::vers_fix_old_timestamp() that will change max-timestamp for versioned tables when replication from a pre-11.4.0 server. A few test cases changed. This is caused by: - CHECK TABLE now prints 'Please do ALTER TABLE... instead of 'Please do REPAIR TABLE' when there is a problem with the information in the .frm file (for example a very old frm file). - mariadb-check now prints repaired table names. - mariadb-check also now prints nicer error message in case ALTER TABLE is needed to repair a table.
200 lines
9.1 KiB
Plaintext
200 lines
9.1 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/8: 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/8: Installing used storage engines... Skipped
|
|
Phase 3/8: Running 'mysql_fix_privilege_tables'
|
|
Phase 4/8: Fixing views
|
|
mysql.user OK
|
|
sys.host_summary OK
|
|
sys.host_summary_by_file_io OK
|
|
sys.host_summary_by_file_io_type OK
|
|
sys.host_summary_by_stages OK
|
|
sys.host_summary_by_statement_latency OK
|
|
sys.host_summary_by_statement_type OK
|
|
sys.innodb_buffer_stats_by_schema OK
|
|
sys.innodb_buffer_stats_by_table OK
|
|
sys.innodb_lock_waits OK
|
|
sys.io_by_thread_by_latency OK
|
|
sys.io_global_by_file_by_bytes OK
|
|
sys.io_global_by_file_by_latency OK
|
|
sys.io_global_by_wait_by_bytes OK
|
|
sys.io_global_by_wait_by_latency OK
|
|
sys.latest_file_io OK
|
|
sys.memory_by_host_by_current_bytes OK
|
|
sys.memory_by_thread_by_current_bytes OK
|
|
sys.memory_by_user_by_current_bytes OK
|
|
sys.memory_global_by_current_bytes OK
|
|
sys.memory_global_total OK
|
|
sys.metrics OK
|
|
sys.privileges_by_table_by_level OK
|
|
sys.processlist OK
|
|
sys.ps_check_lost_instrumentation OK
|
|
sys.schema_auto_increment_columns OK
|
|
sys.schema_index_statistics OK
|
|
sys.schema_object_overview OK
|
|
sys.schema_redundant_indexes OK
|
|
sys.schema_table_lock_waits OK
|
|
sys.schema_table_statistics OK
|
|
sys.schema_table_statistics_with_buffer OK
|
|
sys.schema_tables_with_full_table_scans OK
|
|
sys.schema_unused_indexes OK
|
|
sys.session OK
|
|
sys.session_ssl_status OK
|
|
sys.statement_analysis OK
|
|
sys.statements_with_errors_or_warnings OK
|
|
sys.statements_with_full_table_scans OK
|
|
sys.statements_with_runtimes_in_95th_percentile OK
|
|
sys.statements_with_sorting OK
|
|
sys.statements_with_temp_tables OK
|
|
sys.user_summary OK
|
|
sys.user_summary_by_file_io OK
|
|
sys.user_summary_by_file_io_type OK
|
|
sys.user_summary_by_stages OK
|
|
sys.user_summary_by_statement_latency OK
|
|
sys.user_summary_by_statement_type OK
|
|
sys.version OK
|
|
sys.wait_classes_global_by_avg_latency OK
|
|
sys.wait_classes_global_by_latency OK
|
|
sys.waits_by_host_by_latency OK
|
|
sys.waits_by_user_by_latency OK
|
|
sys.waits_global_by_latency OK
|
|
sys.x$host_summary OK
|
|
sys.x$host_summary_by_file_io OK
|
|
sys.x$host_summary_by_file_io_type OK
|
|
sys.x$host_summary_by_stages OK
|
|
sys.x$host_summary_by_statement_latency OK
|
|
sys.x$host_summary_by_statement_type OK
|
|
sys.x$innodb_buffer_stats_by_schema OK
|
|
sys.x$innodb_buffer_stats_by_table OK
|
|
sys.x$innodb_lock_waits OK
|
|
sys.x$io_by_thread_by_latency OK
|
|
sys.x$io_global_by_file_by_bytes OK
|
|
sys.x$io_global_by_file_by_latency OK
|
|
sys.x$io_global_by_wait_by_bytes OK
|
|
sys.x$io_global_by_wait_by_latency OK
|
|
sys.x$latest_file_io OK
|
|
sys.x$memory_by_host_by_current_bytes OK
|
|
sys.x$memory_by_thread_by_current_bytes OK
|
|
sys.x$memory_by_user_by_current_bytes OK
|
|
sys.x$memory_global_by_current_bytes OK
|
|
sys.x$memory_global_total OK
|
|
sys.x$processlist OK
|
|
sys.x$ps_digest_95th_percentile_by_avg_us OK
|
|
sys.x$ps_digest_avg_latency_distribution OK
|
|
sys.x$ps_schema_table_statistics_io OK
|
|
sys.x$schema_flattened_keys OK
|
|
sys.x$schema_index_statistics OK
|
|
sys.x$schema_table_lock_waits OK
|
|
sys.x$schema_table_statistics OK
|
|
sys.x$schema_table_statistics_with_buffer OK
|
|
sys.x$schema_tables_with_full_table_scans OK
|
|
sys.x$session OK
|
|
sys.x$statement_analysis OK
|
|
sys.x$statements_with_errors_or_warnings OK
|
|
sys.x$statements_with_full_table_scans OK
|
|
sys.x$statements_with_runtimes_in_95th_percentile OK
|
|
sys.x$statements_with_sorting OK
|
|
sys.x$statements_with_temp_tables OK
|
|
sys.x$user_summary OK
|
|
sys.x$user_summary_by_file_io OK
|
|
sys.x$user_summary_by_file_io_type OK
|
|
sys.x$user_summary_by_stages OK
|
|
sys.x$user_summary_by_statement_latency OK
|
|
sys.x$user_summary_by_statement_type OK
|
|
sys.x$wait_classes_global_by_avg_latency OK
|
|
sys.x$wait_classes_global_by_latency OK
|
|
sys.x$waits_by_host_by_latency OK
|
|
sys.x$waits_by_user_by_latency OK
|
|
sys.x$waits_global_by_latency OK
|
|
Phase 5/8: Fixing table and database names
|
|
Phase 6/8: Checking and upgrading tables
|
|
Processing databases
|
|
information_schema
|
|
mtr
|
|
mtr.global_suppressions OK
|
|
mtr.test_suppressions OK
|
|
performance_schema
|
|
sys
|
|
sys.sys_config OK
|
|
test
|
|
test.mysql_json_test Needs upgrade with ALTER TABLE FORCE
|
|
test.mysql_json_test_big Needs upgrade with ALTER TABLE FORCE
|
|
|
|
Repairing tables
|
|
`test`.`mysql_json_test` OK
|
|
`test`.`mysql_json_test_big` OK
|
|
Phase 7/8: uninstalling plugins
|
|
Phase 8/8: Running 'FLUSH PRIVILEGES'
|
|
OK
|
|
show create table mysql_json_test;
|
|
Table Create Table
|
|
mysql_json_test CREATE TABLE `mysql_json_test` (
|
|
`description` varchar(100) DEFAULT NULL,
|
|
`expected` longtext 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) DEFAULT NULL,
|
|
`expected` longtext 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;
|