Uploaded image for project: 'MariaDB MaxScale'
  1. MariaDB MaxScale
  2. MXS-6873

Design prepare for switchover by throttling writes

    XMLWordPrintable

Details

    • Task
    • Status: Closed (View Workflow)
    • Major
    • Resolution: Done
    • None
    • N/A
    • N/A
    • None
    • MXS-SPRINT-277

    Description

      Design

      Extend the mariadbmon async-switchover command to take extra arguments (MXS-6571).

      • Maximum acceptable replication lag, measured via self-reported replication lag from MariaDB
      • Maximum duration of write throttling after which the switchover is aborted if the lag is still too high
      • A boolean that inverts the timeout behavior to force a switchover even if the lag is high after the throttling duration is over

      For readwritesplit, detect the to-be-added TOO_MUCH_FLAG (MXS-6572) flag that the monitor sets. The first time a session notices that it's enabled, start throttling writes for all sessions that connect through the service by automatically turning on sync_transaction=soft. Add a new setting sync_transaction_throttle_rate (default 5ms) that overrides sync_transaction_timeout if throttling is enabled. If throttling is being done, the sync timeout is calculated as the throttle rate multiplied by the number of minutes that the throttling has been ongoing.

      Attachments

        Issue Links

          Activity

            People

              markus makela markus makela
              johan.wikman Johan Wikman
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - 3d
                  3d
                  Remaining:
                  0d
                  Logged:
                  Time Not Required
                  Not Specified

                  Git Integration

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