• Marko Mäkelä's avatar
    MDEV-19241 InnoDB fails to write MLOG_INDEX_LOAD upon completing ALTER TABLE · 376bf4ed
    Marko Mäkelä authored
    Similar to what was done in commit aa3f7a10
    for FULLTEXT INDEX, we must ensure that MLOG_INDEX_LOAD records will always
    be written if redo logging was disabled.
    
    row_merge_build_indexes(): Invoke row_merge_write_redo() also when
    online operation is not being executed or an error occurs.
    In case of an error, invoke flush_observer->interrupted() so that
    the pages will not be flushed but merely evicted from the buffer pool.
    Before resuming redo logging, it is crucial for the correctness of
    mariabackup and InnoDB crash recovery to flush or evict all affected pages
    and to write MLOG_INDEX_LOAD records.
    376bf4ed
log_alter_table.test 1.48 KB