tokuDb设置超时声明的时间

时间:2017-03-05 07:09:40

标签: mariadb tokudb

在带有tokuDb引擎的mariadb表中;我正在发生以下错误 - 要么删除声明;虽然有背景插入负载,反之亦然。

Lock wait timeout exceeded; try restarting transaction

tokuDb用户是否可以更新设置以确定在超时声明之前等待多长时间?

我无法在tokuDb文档中找到答案。玛丽亚变量仍处于默认值:' lock_wait_timeout',' 31536000' - 但是我的超时时间还不到一年。超时是在负载测试期间发生的;我没有在错误中发现时间价值 - 但感觉就像几秒钟;在超时被抛出之前最多几分钟。

谢谢, 布伦特

1 个答案:

答案 0 :(得分:0)

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

请记住,为具有两个范围的变量设置全局值时,它仅影响将来的会话(连接),而不影响现有的会话(连接)。

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

-- for future sessions
SET GLOBAL tokudb_lock_timeout = 60000;