Merge lp:~laurynas-biveinis/percona-server/bug1295268 into lp:percona-server/5.6

Proposed by Alexey Kopytov
Status: Merged
Approved by: Alexey Kopytov
Approved revision: no longer in the source branch.
Merged at revision: 570
Proposed branch: lp:~laurynas-biveinis/percona-server/bug1295268
Merge into: lp:percona-server/5.6
To merge this branch: bzr merge lp:~laurynas-biveinis/percona-server/bug1295268
Reviewer Review Type Date Requested Status
Alexey Kopytov (community) Approve
Review via email: mp+213209@code.launchpad.net

This proposal supersedes a proposal from 2014-03-28.

Description of the change

Fix bug 1295268 (Inadequate background LRU flushing for write
workloads with InnoDB compression).

If InnoDB compression is used and the workload has writes, the
following situation is possible. The LRU flusher issues an LRU flush
request for an instance. buf_do_LRU_batch decides to perform
unzip_LRU eviction and this eviction might fully satisfy the
request. Then buf_flush_LRU_tail checks the number of flushed pages in
the last iteration, finds it to be zero, and wrongly decides not to
flush that instance anymore.

Fixed by maintaining unzip_LRU eviction counter in struct
flush_counter_t variables, and checking it in buf_flush_LRU_tail when
deciding whether to stop flushing the current instance.

http://jenkins.percona.com/job/percona-server-5.6-param/565/

Borderline G1-G2 (the change is very simple, but there are also other options for it), so leaving both.

To post a comment you must log in.
Revision history for this message
Alexey Kopytov (akopytov) :
review: Approve

Subscribers

People subscribed via source and target branches