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: Closed (View Workflow)
    • Major
    • Resolution: Won't Do
    • None
    • N/A
    • N/A
    • 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

        Issue Links

          Activity

            People

              johan.wikman Johan Wikman
              edward Edward Stoever
              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.