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

Implement async commit checkpoint in InnoDB and XtraDB

    XMLWordPrintable

Details

    • Task
    • Status: Closed (View Workflow)
    • Major
    • Resolution: Fixed
    • 10.0.1
    • None
    • None

    Description

      MDEV-232 introduces commit checkpoints in the storage engines. Such
      checkpoints can be performed fully asynchronous, but current implementation
      in InnoDB/XtraDB is mostly synchronous.

      This task is about improving this to a fully asynchronous implementation.

      In addition I want to extend the server layer binlog checkpointing so that it
      does the actual writing of checkpoint event to the binlog in a separate
      background thread:

      1. The commit_checkpoint_notify_ha() call may come from arbitrary thread in
      the storage engine which may not be prepared to have lengthy binlog sync or
      other stuff done in its own thread context.

      2. I need to use debug_sync in the test cases to make them deterministic, but
      this requires THD, and eg. innodb background log flush does not have THD.

      3. Such background binlog thread will later be useful to do binlog
      pre-allocation or rotation in the background, to further improve performance
      and reduce stalls.

      Attachments

        Issue Links

          Activity

            People

              knielsen Kristian Nielsen
              knielsen Kristian Nielsen
              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.