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

Causal Read Relaxing GTID_WAIT per table consistancy

    XMLWordPrintable

Details

    • New Feature
    • Status: Closed (View Workflow)
    • Minor
    • Resolution: Won't Do
    • None
    • N/A
    • readwritesplit
    • None

    Description

      Based on the GTID list acquired from the master inside the generic causal read feature, some routing can be decided without usage of mater_gtid_wait by checking if all tables in a statement have not changed on the master after the last replication event reported on the selected slave

      Current implementation of per table consistency is not correct because it track master changes from the replication and that is wrong as replication asynchronous .
      This should be tracked inside the proxy :
      Proxy fetch GTID after every writes and affect GTID on a 2 dimensions table (backend - table), Proxy Replication Monitor do the same for every slave backend.

      For any READ statement
      For all tables in statement
      If Table GTID of the master <= table GTID of the slave

      It is safe to route that statement without waiting mater_gtid_wait

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              stephane@skysql.com VAROQUI Stephane
              Votes:
              0 Vote for this issue
              Watchers:
              3 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.