Mariadb tokuDb设置语句超时的时间

Mariadb tokuDb设置语句超时的时间,mariadb,tokudb,Mariadb,Tokudb,在带有托克达发动机的mariadb表中;我遇到以下错误-要么在delete语句中;同时存在背景插入负载,反之亦然 超过锁定等待超时时间;尝试重新启动事务 tokuDb用户是否有一个可以更新的设置,以确定在语句超时之前等待的时间 我在tokuDb文档中找不到答案。maria varaible仍然是它的默认值:“lock\u wait\u timeout”,“31536000”-但是我的超时在不到一年的时间里又回来了。在负载测试期间出现超时;我还没有发现错误中的时间值——但感觉像是几秒钟;在引发超时

在带有托克达发动机的mariadb表中;我遇到以下错误-要么在delete语句中;同时存在背景插入负载,反之亦然

超过锁定等待超时时间;尝试重新启动事务

tokuDb用户是否有一个可以更新的设置,以确定在语句超时之前等待的时间

我在tokuDb文档中找不到答案。maria varaible仍然是它的默认值:“lock\u wait\u timeout”,“31536000”-但是我的超时在不到一年的时间里又回来了。在负载测试期间出现超时;我还没有发现错误中的时间值——但感觉像是几秒钟;在引发超时之前最多到分钟

谢谢, Brent

TokuDB有自己的,
TokuDB_lock_timeout
,它以毫秒为单位测量,默认值为
4000
(4秒),符合您的观察结果。它可以在会话和全局级别进行修改,也可以在.cnf文件中进行配置

请记住,当为同时具有两个作用域的变量设置全局值时,它只会影响将来的会话(连接),而不会影响现有会话

-- for the current session
SET SESSION tokudb_lock_timeout = 60000;

-- for future sessions
SET GLOBAL tokudb_lock_timeout = 60000;

在提出查询之前,请认真考虑长时间运行的查询正在做什么。它目前表示可以暂停用户最多4秒。也许可以重写长时间运行的查询?