[MXS-2793] preferred_server doesn't work with multi-table queries Created: 2019-12-10  Updated: 2020-08-25  Resolved: 2020-02-12

Status: Closed
Project: MariaDB MaxScale
Component/s: schemarouter
Affects Version/s: 2.4.4
Fix Version/s: 2.5.0

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

Sprint: MXS-SPRINT-99

 Description   

Given the following query:

SELECT a.data, b.data FROM shared.t1 AS a JOIN private.t1 AS b ON (a.id = b.id);

If the database shared is located on all servers but private is located only on one server, the query will be routed to the preferred server. This happens because the shard location information contains only the chosen location, not the actual locations where the database exists. The act of choosing the shard location is done too early when there is a conflict and as a result of this the query is routed to the preferred server.



 Comments   
Comment by markus makela [ 2020-02-11 ]

The shard location lookup is now done at routing time instead of doing it during database discovery.

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