mirror of
https://github.com/MariaDB/server.git
synced 2025-08-01 03:47:19 +03:00
don't do ALTER IGNORE TABLE online
because online means we'll apply events from the binlog, and ignore means that bad rows will be skipped. So a bad Write_row_log_event will be skipped and a following Update_row_log_event will fail to apply.
This commit is contained in:
@ -10029,6 +10029,7 @@ bool mysql_alter_table(THD *thd, const LEX_CSTRING *new_db,
|
||||
if (alter_info->requested_lock > Alter_info::ALTER_TABLE_LOCK_NONE
|
||||
|| alter_info->flags & ALTER_DROP_SYSTEM_VERSIONING
|
||||
|| thd->lex->sql_command == SQLCOM_OPTIMIZE
|
||||
|| ignore
|
||||
|| alter_info->algorithm(thd) > Alter_info::ALTER_TABLE_ALGORITHM_COPY)
|
||||
online= false;
|
||||
|
||||
|
Reference in New Issue
Block a user