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

Parallel slave speedup very limited when log_slave_updates=OFF

    XMLWordPrintable

Details

    Description

      Branching this off from MDEV-15173 (see that MDEV for all the details)

      Parallel slave (slave_parallel_mode=conservative does not provide a lot of speedup over single-threaded slave when log_slave_updates=OFF.

      When log_slave_updates=ON the performance is acceptable.

      Summary of the investigations from MDEV-15173:

      The reason is that with log_slave_updates=ON the server employs XA between the storage engine the binlog:

      • Prepare calls sync their effects to disk
        • They are are done in parallel, so they can take advantage of the group commit.
      • Commit calls are done one-after-another in order to commit in the master's binlog order
        • but they dont sync to disk and so are fast.

      With log_slave_updates=OFF :

      • XA is not used (as MyRocks is the only participant)
      • commit() calls are done one-after-another in the binlog order
      • The storage engine is instructed to sync.
      • The above two together mean that MyRocks' group commit does not function.

      Attachments

        Issue Links

          Activity

            People

              psergei Sergei Petrunia
              psergei Sergei Petrunia
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Git Integration

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