Skip to content
  • Joao Gramacho's avatar
    9c08a08d
    BUG#24398760 GTIDS REDUCE PERFORMANCE ON WORKLOADS WITH MANY SMALL TRANSACTIONS · 9c08a08d
    Joao Gramacho authored
    The approach this patch is using is to do the commit stage update of the
    GTIDs in a single "batch" without releasing the sidno_lock.
    
    After the refactoring on the previous commit, this patch introduces the
    update_commit_group function that works similarly to update_on_commit and
    update_on_rollback functions, but doing the update on commit or rollback
    in a set of transactions that were grouped to commit together.
    
    This patch also introduced two new group commit versions of some functions
    that were introduced on the refactoring:
    - update_gtids_impl_lock_sidnos:
        Lock all the sidnos of all GTIDs to be updated in a given commit group;
    - update_gtids_impl_broadcast_and_unlock_sidnos:
        Unlock all previously locked sidnos after broadcasting their changes;
    9c08a08d
    BUG#24398760 GTIDS REDUCE PERFORMANCE ON WORKLOADS WITH MANY SMALL TRANSACTIONS
    Joao Gramacho authored
    The approach this patch is using is to do the commit stage update of the
    GTIDs in a single "batch" without releasing the sidno_lock.
    
    After the refactoring on the previous commit, this patch introduces the
    update_commit_group function that works similarly to update_on_commit and
    update_on_rollback functions, but doing the update on commit or rollback
    in a set of transactions that were grouped to commit together.
    
    This patch also introduced two new group commit versions of some functions
    that were introduced on the refactoring:
    - update_gtids_impl_lock_sidnos:
        Lock all the sidnos of all GTIDs to be updated in a given commit group;
    - update_gtids_impl_broadcast_and_unlock_sidnos:
        Unlock all previously locked sidnos after broadcasting their changes;
Loading