web-dev-qa-db-ja.com

キャッシュテーブルのデッドロックdrupal

クライアントサイトに巨大なデータがあり、複数のユーザーがcsvファイルをダウンロードしようとするとエラーが発生し、Viewデータエクスポートモジュールを介してCSVにダウンロードしたい。

ログメッセージで次のようなエラーが表示されます-

PDOException: SQLSTATE[HY000]: General error: 1205 Lock wait timeout exceeded; try restarting transaction:

Mysqlengine innodb status\G;を使用してinnodbステータスを確認しようとすると、キャッシュテーブルへの挿入のデッドロックを示しています。

誰でもこれを手伝ってくれる?

1
user-pj

https://www.drupal.org/project/apdqc は、あなたが説明している問題のかなり良い解決策です。モジュールをインストールして、ステータスレポートページ(admin/reports/status);次に、さまざまなテストを実行し、settings.php、php.ini、およびmy.cnfファイルで変更することについてアドバイスを提供します。

ほとんどのキャッシュデッドロックの根本的な原因は、切り詰めクエリと挿入クエリが互いに競合していることです。

0
mikeytown2