lp:~akopytov/percona-server/bug1163439-5.5

Created by Alexey Kopytov and last modified
Get this branch:
bzr branch lp:~akopytov/percona-server/bug1163439-5.5
Only Alexey Kopytov can upload to this branch. If you are Alexey Kopytov please log in for upload directions.

Branch merges

Related bugs

Related blueprints

Branch information

Recent revisions

461. By Alexey Kopytov on 2013-04-02

Bug #1163439: Unnecessary log_sys->mutex reacquisition in
              mtr_log_reserve_and_write()

mtr_log_reserve_and_write() implements the following logic with respect
to log_sys->mutex: if the mini-transaction log contains a single block,
it calls log_reserve_and_write_fast() which acquires log_sys->mutex and
does a "fast" write by appending the new record to the current log
block. If the record does not fit in the current log block,
log_reserve_and_write_fast() releases log_sys->mutex and returns 0, in
which case mtr_log_reserve_and_write() immediately reacquires
log_sys->mutex by calling log_reserve_and_open() and proceeds with the
"slow" write procedure.

It doesn't make sense to release a mutex and reacquire it immediately
and benchmarks show that avoiding this helps to reduce log_sys->mutex
contention in some write-intensive workloads.

Fixed by implementing an alternative to log_reserve_and_open() which
doesn't acquire the mutex (log_open()), removing mutex_exit() from
log_reserve_and_write_fast() when the log record does not fit in the
current block, and using log_open() instead of log_reserve_and_open() in
mtr_log_reserve_and_write().

460. By <email address hidden> on 2013-02-28

Merge lp:~percona-core/percona-server/release-5.5.29-30.0

459. By <email address hidden> on 2013-02-27

Merge lp:~akopytov/percona-server/bug1123921

458. By <email address hidden> on 2013-02-27

Merge lp:~akopytov/percona-server/bug1132350

457. By <email address hidden> on 2013-02-27

Merge lp:~akopytov/percona-server/bug1132351

456. By <email address hidden> on 2013-02-27

Empty merge from Percona Server 5.1

455. By <email address hidden> on 2013-02-27

Empty merge from Percona Server 5.1

454. By <email address hidden> on 2013-02-26

Merge lp:~hrvojem/percona-server/rn-5.5.29-30.0-fix

453. By <email address hidden> on 2013-02-26

Merge lp:~akopytov/percona-server/bug1123915

452. By <email address hidden> on 2013-02-26

Merge lp:~akopytov/percona-server/bug1130655

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar repository format 2a (needs bzr 1.16 or later)
Stacked on:
lp:percona-server/5.6
This branch contains Public information 
Everyone can see this information.

Subscribers