MDEV-25907: Assertion failed in dict_table_schema_check()
dict_table_schema_check(): Simply remove the debug assertion. We will still return a failure.
This commit is contained in:
parent
6ba938af62
commit
cb0cad8156
@ -1,5 +1,7 @@
|
|||||||
call mtr.add_suppression("InnoDB: Table .*innodb_index_stats.* not found");
|
call mtr.add_suppression("InnoDB: Table .*innodb_index_stats.* not found");
|
||||||
call mtr.add_suppression("InnoDB: Fetch of persistent statistics requested for table .*");
|
call mtr.add_suppression("InnoDB: Fetch of persistent statistics requested for table .*");
|
||||||
|
call mtr.add_suppression("InnoDB: Table mysql\\.innodb_index_stats has length mismatch in the column name stat_description\\. Please run mariadb-upgrade");
|
||||||
|
call mtr.add_suppression("InnoDB: Column stat_description in table mysql\\.innodb_index_stats is VARCHAR");
|
||||||
ALTER TABLE mysql.innodb_index_stats RENAME TO mysql.innodb_index_stats_;
|
ALTER TABLE mysql.innodb_index_stats RENAME TO mysql.innodb_index_stats_;
|
||||||
CREATE TABLE test_ps_create_on_corrupted
|
CREATE TABLE test_ps_create_on_corrupted
|
||||||
(a INT, PRIMARY KEY (a))
|
(a INT, PRIMARY KEY (a))
|
||||||
@ -17,6 +19,13 @@ avg_row_length 0
|
|||||||
max_data_length 0
|
max_data_length 0
|
||||||
index_length 0
|
index_length 0
|
||||||
ALTER TABLE mysql.innodb_index_stats_ RENAME TO mysql.innodb_index_stats;
|
ALTER TABLE mysql.innodb_index_stats_ RENAME TO mysql.innodb_index_stats;
|
||||||
|
SET old_mode='';
|
||||||
|
ALTER TABLE mysql.innodb_index_stats
|
||||||
|
MODIFY stat_description VARCHAR(1024) COLLATE utf8_bin;
|
||||||
|
CREATE TABLE t (a INT) ENGINE=InnoDB STATS_PERSISTENT=1;
|
||||||
|
ALTER TABLE mysql.innodb_index_stats
|
||||||
|
MODIFY stat_description VARCHAR(1024) COLLATE utf8mb3_bin NOT NULL;
|
||||||
|
DROP TABLE t;
|
||||||
# restart
|
# restart
|
||||||
SELECT seq_in_index, column_name, cardinality
|
SELECT seq_in_index, column_name, cardinality
|
||||||
FROM information_schema.statistics WHERE table_name = 'test_ps_create_on_corrupted'
|
FROM information_schema.statistics WHERE table_name = 'test_ps_create_on_corrupted'
|
||||||
|
@ -12,6 +12,8 @@
|
|||||||
|
|
||||||
call mtr.add_suppression("InnoDB: Table .*innodb_index_stats.* not found");
|
call mtr.add_suppression("InnoDB: Table .*innodb_index_stats.* not found");
|
||||||
call mtr.add_suppression("InnoDB: Fetch of persistent statistics requested for table .*");
|
call mtr.add_suppression("InnoDB: Fetch of persistent statistics requested for table .*");
|
||||||
|
call mtr.add_suppression("InnoDB: Table mysql\\.innodb_index_stats has length mismatch in the column name stat_description\\. Please run mariadb-upgrade");
|
||||||
|
call mtr.add_suppression("InnoDB: Column stat_description in table mysql\\.innodb_index_stats is VARCHAR");
|
||||||
|
|
||||||
-- vertical_results
|
-- vertical_results
|
||||||
|
|
||||||
@ -34,6 +36,15 @@ FROM information_schema.tables WHERE table_name = 'test_ps_create_on_corrupted';
|
|||||||
# restore the persistent storage
|
# restore the persistent storage
|
||||||
ALTER TABLE mysql.innodb_index_stats_ RENAME TO mysql.innodb_index_stats;
|
ALTER TABLE mysql.innodb_index_stats_ RENAME TO mysql.innodb_index_stats;
|
||||||
|
|
||||||
|
SET old_mode='';
|
||||||
|
ALTER TABLE mysql.innodb_index_stats
|
||||||
|
MODIFY stat_description VARCHAR(1024) COLLATE utf8_bin;
|
||||||
|
CREATE TABLE t (a INT) ENGINE=InnoDB STATS_PERSISTENT=1;
|
||||||
|
ALTER TABLE mysql.innodb_index_stats
|
||||||
|
MODIFY stat_description VARCHAR(1024) COLLATE utf8mb3_bin NOT NULL;
|
||||||
|
|
||||||
|
DROP TABLE t;
|
||||||
|
|
||||||
--source include/restart_mysqld.inc
|
--source include/restart_mysqld.inc
|
||||||
|
|
||||||
-- vertical_results
|
-- vertical_results
|
||||||
|
@ -405,7 +405,6 @@ dict_table_schema_check(
|
|||||||
|
|
||||||
/* check length for exact match */
|
/* check length for exact match */
|
||||||
if (req_schema->columns[i].len != table->cols[j].len) {
|
if (req_schema->columns[i].len != table->cols[j].len) {
|
||||||
ut_ad(table->cols[j].len < req_schema->columns[i].len);
|
|
||||||
sql_print_warning("InnoDB: Table %s has"
|
sql_print_warning("InnoDB: Table %s has"
|
||||||
" length mismatch in the"
|
" length mismatch in the"
|
||||||
" column name %s."
|
" column name %s."
|
||||||
|
Loading…
x
Reference in New Issue
Block a user