• Marko Mäkelä's avatar
    MDEV-14905 Fulltext index modification committed during shutdown · 7baea2ef
    Marko Mäkelä authored
    If CREATE TABLE...FULLTEXT INDEX was initiated right before shutdown,
    then the function fts_load_stopword() could commit modifications
    after shutdown was initiated, causing an assertion failure in
    the function trx_purge_add_update_undo_to_history().
    
    Mark as internal all the read/write transactions that
    modify fulltext indexes, so that they will be ignored by
    the assertion that guards against transaction commits
    after shutdown has been initiated.
    
    fts_optimize_free(): Invoke trx_commit_for_mysql() just in case,
    because in fts_optimize_create() we started the transaction as
    internal, and fts_free_for_backgruond() would assert that the
    flag is clear. Transaction commit would clear the flag.
    7baea2ef
fts0fts.cc 193 KB