Open to-omer opened 4 years ago
想定していませんでした。並列で処理すると壊れます。 報告自体はありがたいですし、いつかは直したいバグですが、あまり優先度は高くないです。プルリクを出してもらえばすぐ直りますが、単純に難易度が高いのでおすすめはしません。
バグではあるが優先度が低い理由:
generate.py
も同時起動による並列実行はおそらく非想定なので「もう一方の実行が終了するのを待ってから実行する」という形の解決しかできない。つまり、エラーにならなくなるだけで速度は向上しない(ところで、そもそも並列実行はあまりおすすめできません。下手をするとサーバ側に DoS 攻撃 と認識されてトラブルに巻き込まれる可能性があります)
rustからoj-apiを呼び出してライブラリのテストをしようとしていましたが、rustではテストがデフォルトで並列に実行されるのでこのバグを踏んでしまった、というのが経緯でした。
generate.py
のことも考えると、おとなしく手元で同時呼び出ししないように排他制御するのがよさそうです。
あまり想定されない使い方かもしれませんが、一応。 Library-Checkerの問題を並列に取得しようとするとエラーが発生します。
OS: Windos 10 Python: 3.8 online-judge-tools: 10.0.8
oj-api get-problem https://judge.yosupo.jp/problem/aplusb
を同時に実行するとエラーが出る 以下実行結果ちなみに何度か試しましたがほとんど再現しませんでした (代わりにLibrary-Checkerのgenerate.py呼び出し中に衝突して死にましたが)