7.3.7.3.6. -34: GRN_RESOURCE_DEADLOCK_AVOIDED
#
7.3.7.3.6.1. 主な原因#
Groongaは load
や delete
等を実行するときにオブジェクトへの書き込みをブロックするためにロックを取得します。その時、既にロックが取得されている場合、Groongaはロックが開放されるのを待ちます。このエラーは、約3時間の間Groongaがロックを取得できなかったときに発生します。
7.3.7.3.6.2. 主な対策#
このエラーが発生した場合、Groongaのデータやインデックスは破損している可能性が高いです。
Groongaのデータベースが壊れているかどうかを確認します。
Groongaを停止します。(この手順は非常に重要です。この手順は必ず実施してください。)
Groongaのデータベースに対して
grndb check DATABASE_PATH
を実行します。grndb
については、 ::doc::/reference/executables/grndb.html を参照してください。Groongaのデータベースが復旧できるかどうかを
grndb check
のログで確認します。Groongaのデータベースが復旧できる場合は、
grndb recover DATABASE_PATH
を実行します。Groongaのデータベースが復旧できない場合は、Groongaのデータベースをバックアップから復旧します。