2017-03-05 8 views
0

tokuDbエンジンのmariadbテーブルでは、私は以下のエラーを出しています - 削除ステートメントでも、バックグラウンドの挿入荷重があり、その逆もあります。tokuDbタイムアウトまでのタイムアウトの設定

Lock wait timeout exceeded; try restarting transaction

んtokuDbユーザーそれが文をtimesout前に待機する時間を決定するために更新することができます設定?

tokuDbドキュメントで回答が見つかりませんでした。 maria varaibleのデフォルト値は 'lock_wait_timeout'、 '31536000'ですが、タイムアウトは1年足らずで戻っています。タイムアウトは負荷テスト中に発生します。エラーの時間価値は見当たりませんでしたが、それは数秒のように感じます。タイムアウトが発生する前に最大で数分です。

おかげで、 ブレント

答えて

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; 
+0

これを呼び出す前に、長期実行クエリが何をしているのか真剣に考えてください。現在、最大4秒間ユーザーをストールさせても問題ないと言われています。長時間実行されるクエリを書き直すことはできますか? –

関連する問題