Lustre ファイルシステムを使用するクラスターで、多くの (18k) バッチ ジョブを実行しています。ジョブは同時に投入され、それぞれ約 3 秒かかり、sqlite3
python モジュールを使用して結果を書き込みます。コードの書き込み部分は非常に単純です。
with sqlite3.connect(name, timeout=900) as conn:
conn.execute(
"insert into someTable values (?, ?)", (value1, value2))
しかし、多くのジョブは例外をスローします:
sqlite3.DatabaseError: database disk image is malformed
そして時折
sqlite3.OperationalError: unable to open database file
sqlite3
これは、書き込み時にファイルにロックをかける多くのジョブと関係があると思いますが、ファイルが解放されるまで辛抱強く待つことを知っておく必要があるというのが私の印象でした。私のエラーは、同時書き込みが多すぎることが原因である可能性がありますか? どうすれば修正できますか?