• unknown's avatar
    MDEV-4506: Parallel replication. Intermediate commit. · 7e5dc4f0
    unknown authored
    Implement facility for the commit in one thread to wait for the commit of
    another to complete first. The wait is done in a way that does not hinder
    that a waiter and a waitee can group commit together with a single fsync()
    in both binlog and InnoDB. The wait is done efficiently with respect to
    locking.
    
    The patch was originally made to support TaoBao parallel replication with
    in-order commit; now it will be adapted to also be used for parallel
    replication of group-committed transactions.
    
    A waiter THD registers itself with a prior waitee THD. The waiter will then
    complete its commit at the earliest in the same group commit of the waitee
    (when using binlog). The wait can also be done explicitly by the waitee.
    7e5dc4f0
ha_innodb.cc 406 KB