Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-41960

Replication to Pre-fetch Pages for Large Row Transactions

    XMLWordPrintable

Details

    Description

      For workloads with mixed transaction sizes (small/large), a bottleneck
      is often group-commit, where future small transactions must wait for a
      previous large transaction to commit, before they can commit. Speeding
      up the execution of a large transaction can significantly help the
      overall throughput of a slave for such workloads.

      One idea is to add a new type of thread to the parallel replication
      framework to pre-fetch pages into the InnoDB Buffer Pool before a worker
      thread begins execution of an Update/Delete Rows Log Event. These
      prefetch threads would read ahead of where the slave worker thread is
      at, store the keys of the updated/deleted data, and find those rows.
      Then when the worker thread is ready to execute at that point, the data
      wouldn't need to be loaded from disk, it would be ready in the buffer
      pool.

      Attachments

        Activity

          People

            Unassigned Unassigned
            bnestere Brandon Nesterenko
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:

              Time Tracking

                Estimated:
                Original Estimate - 30d Original Estimate - 30d
                30d
                Remaining:
                Remaining Estimate - 30d
                30d
                Logged:
                Remaining Estimate - 30d
                1h

                Git Integration

                  Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.