Unnecessary log_flush_order_mutex acquisition
reduce contention on log_sys->mutex. On a mini-transaction commit
InnoDB adds modified pages to the flush list and uses
flush list in the correct LSN order.
One thing that was handled inefficiently wrt. that mutex is that it was
acquired even if no modifications from a mini-transaction had to be
added to flush list, i.e. when an mtr has only modified dirty pages
(if any). This unnecessarily increased contention on
write-intensive workloads, because the former is acquired with the
The problem is fixed in MySQL 5.6 with the following revision:
This report is to backport that change to Percona Server 5.5.
- Laurynas Biveinis: Approve on 2013-04-03
- Registry Administrators: Pending requested 2013-04-02
Diff: 137 lines (+56/-4)4 files modifiedPercona-Server/storage/innobase/include/buf0flu.ic (+1/-1)