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

Disallow_DML from readwritesplit or create a new router type for readonly

    XMLWordPrintable

Details

    • New Feature
    • Status: Open (View Workflow)
    • Major
    • Resolution: Unresolved
    • None
    • None
    • None
    • None

    Description

      Customers often confuse READ_ONLY on the database with what maxscale can actually do. They think that Maxscale can be used to create a read_only listener/service combination.

      It would not be difficult to add this feature. Readwritesplit router will block DML when it sees that all servers are currently with global READ_ONLY=ON. The warning on Maxscale is:

      2024-03-11 12:32:11   warning: (11131) [readwritesplit] Write query received from edward@192.168.8.211. 'delayed_retry_timeout' exceeded before a primary could be found. Closing client connection.
      

      This goal could be achieved by adding a variable in readwritesplit (such as disallow_dml=true), or by adding a whole new router. The expected behavior would be to send a warning or error to the client when a DML command is sent, but not disconnect the session.

      An added benefit would be to prevent DML under any circumstances, even for accounts with SUPER privilege.

      Attachments

        Activity

          People

            JoeCotellese Joe Cotellese
            edward Edward Stoever
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:

              Git Integration

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