[MXS-2009] Don't let session commands block new incoming queries Created: 2018-08-13  Updated: 2024-01-04  Resolved: 2019-10-04

Status: Closed
Project: MariaDB MaxScale
Component/s: readwritesplit
Affects Version/s: None
Fix Version/s: 2.5.0

Type: New Feature Priority: Major
Reporter: dapeng huang Assignee: markus makela
Resolution: Fixed Votes: 0
Labels: None

Epic Link: Router Improvements

 Description   

Some driver or framework will encapsulate all queries in prepare statement, it doesn't reuse the prepare stmt, just execute once then close it , then prepare it again;
We found that if there are many backends or some of backend is not health, because session command need route to all, and wait all complete, it will block incoming queries;we already have encountered this situation, that a user use go driver, and one of our backends is slow, so whole cluster is slow;

So we need a way don't let session commands block new incoming queries,



 Comments   
Comment by markus makela [ 2019-03-13 ]

The new lazy_connect feature in 2.4 should help with this problem.

Comment by markus makela [ 2019-10-01 ]

Changed the code so that new session commands are queued on all servers but only one response is expected. This should prevent slow servers from slowing down the whole connection.

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