[MXS-3565] COM_STMT_EXECUTE target selection is too restrictive when no metadata is provided Created: 2021-05-21  Updated: 2021-06-11  Resolved: 2021-05-25

Status: Closed
Project: MariaDB MaxScale
Component/s: readwritesplit
Affects Version/s: 2.5.11
Fix Version/s: 2.5.12

Type: Bug Priority: Major
Reporter: markus makela Assignee: markus makela
Resolution: Fixed Votes: 0
Labels: None

Issue Links:
Relates
relates to MXS-2750 COM_STMT_EXECUTE in transaction get u... Closed

 Description   

Whenever a COM_STMT_EXECUTE arrives with no metadata, previously it was required to be sent to the same server. With MXS-2750 fixed in 2.5, this restriction was lifted but some code was left over that still enforces the old requirement.

This can be reproduced by executing a COM_STMT_EXECUTE with parameters that is classified as a read and then putting the old target into maintenance mode. The next time the COM_STMT_EXECUTE is executed, the metadata won't be sent and MaxScale will close the connection.

The fix to this is simple, remove the code that treats a COM_STMT_EXECUTE with no metadata as a query that must be routed to the previous target.


Generated at Thu Feb 08 04:22:20 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.