Details
-
New Feature
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Won't Do
-
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
Issue Links
- is duplicated by
-
MXS-5354 Filter for controlling what statements are allowed
- In Progress