• Marko Mäkelä's avatar
    MDEV-30100 preparation: Simplify InnoDB transaction commit further · 5fea8ffc
    Marko Mäkelä authored
    trx_commit_complete_for_mysql(): Remove some conditions.
    We will rely on trx_flush_log_if_needed().
    
    trx_t::must_flush_log_later: Remove. trx_commit_complete_for_mysql()
    can simply check for trx_t::flush_log_later.
    
    trx_t::commit_in_memory(): Treat flush_log_later as input and output.
    
    trx_flush_log_if_needed_low(): Renamed to trx_flush_log_if_needed().
    Assert that innodb_flush_log_at_trx_commit!=0 was checked by
    the caller and that the transaction is not in XA PREPARE state.
    
    trx_write_serialisation_history(): Move some code from
    trx_purge_add_undo_to_history().
    
    trx_prepare(): Invoke log_write_up_to() directly if needed.
    
    innobase_commit_ordered_2(): Remove a condition, and do not reset
    trx_t::flush_log_later, because it must be passed from
    trx_t::commit_in_memory() to trx_commit_complete_for_mysql().
    5fea8ffc
ha_innodb.cc 615 KB