[MDEV-27131] Add option for SQL thread to kill any blocking local activity Created: 2021-11-27  Updated: 2023-12-22

Status: Open
Project: MariaDB Server
Component/s: Replication
Fix Version/s: 11.5

Type: New Feature Priority: Major
Reporter: Valerii Kravchuk Assignee: Andrei Elkin
Resolution: Unresolved Votes: 1
Labels: None

Issue Links:
Duplicate
is duplicated by MDEV-29569 Add option for SQL thread to terminat... Closed

 Description   

DDL executed on primary may be blocked by any long running SELECT on replica, thus breaking the "high availability" of this setup. It seems there is no way even to force limited wait time for DDL on replica.

Please, add server variable to force priority for SQL thread in such cases, similar to what happens in Galera.

UPDATE:
from MDEV-29569, which is the same request, but has one additional information:
"Proper logging options (similar to those we have in Galera) should also be added, to help understand the reason of error local connection to slave may get."



 Comments   
Comment by Andrei Elkin [ 2022-03-18 ]

ralf.gebhardt@mariadb.com, the plan has been to implement a similar to an existing thd_rpl_deadlock_check() extension to MDL deadlock mechanism.
The replicated DDL that is MDL requestor would effectively kill a local connection in its way.
I made some experimenting to prove the concept.

Generated at Thu Feb 08 09:50:34 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.