2017-12-14 28 views
0

Amazon RDSプラットフォームでMySQLデータベースをホストしています。ロックのために多くのデッドロックの問題が発生します。 - 「mysql tables in use 1, locked 1Amazon RDSのMySQLテーブルロック問題

上記のトレースで
2017-12-14 09:00:21 2ba3a5758700 
*** (1) TRANSACTION: 
TRANSACTION 1297355720, ACTIVE 0 sec inserting 
mysql tables in use 1, locked 1 
LOCK WAIT 7 lock struct(s), heap size 1184, 3 row lock(s), undo log entries 1 
MySQL thread id 9198894, OS thread handle 0x2ba0b33da700, query id 5198593130 

、第四行は言う:私は、大きく以下のロックの影響を受けた取引&何らなどを説明していないデッドロック・ダンプ・レポートを理解しようとすると、このようなトレースですよ。 「ロックされた1」とはどういう意味ですか?関連テーブルがトランザクション中に完全にロックされていることを意味しますか?

明示的にテーブルをロックしていません。 Django @ transaction.atomicを特定の場所で使用していますが、明示的なテーブルロックはありません。

テーブルロックの問題をどのようにデバッグすることができますか教えてください。

答えて

0

@ transaction.atomicを持つすべての場所を確認し、そのようなコードブロックで同じ順序でテーブルを変更するかどうかを確認します。そうでない場合、デッドロックが発生している可能性が最も高い場所です。

関連する問題