sqlite3でエラーになる原因がほぼ特定できて、エラー処理を全面見直しました。
・棋譜追加処理のトランザクションのCOMMITの際にBUSY状態の継続を検出した時は、
ロールバックして再度更新をやり直すという形に変更。棋譜とBOOKの整合性を保つため
にも、速度面でもトランザクションは必須。
・SQL文の事前コンパイルであるprepareでもBUSYが発生する事がわかったので、エラー
処理を行ってBUSY検出して成功するまで繰り返す事で、prepareの完了を保証する
これらにより2プロセスまでのデッドロックは何度も検出してロールバックしてやり直しが
完遂するのが確認できています。
が、3つ以上の棋譜作成プロセスを同時に動かした時に、たまたま棋譜追加のタイミングが
3つ揃うと三すくみ的なデッドロック的状況になってしまうようで、ロールバックしてリトライが
3プロセスで順番に発生して無限ループに的に繰り返される状態になってしまう…。
2プロセスでは起きた事は無いのですが、3つだと起きる模様。
まだまだsqlite3の理解が足りないようです。
ニュース
- 【次の一手】台湾問題で小林よしのり氏が私見「まさに戦争前夜」「ただちに徴兵制を敷いて、高市支持者を最前線へ」… ★5 [BFU★]
- 【野球】大谷翔平、佐々木朗希、山本由伸らがWBC辞退なら広がる不協和音… 『過去イチ盛り上がらない大会』になる可能性も★2 [冬月記者★]
- 【国際】ロシアはすでに戦争準備段階――ポーランド軍トップが警告 [ぐれ★]
- 【news23】小川彩佳アナ「ここまでの広がりになるということを、高市総理はどれだけ想像できていたんでしょうね」 日中問題特集で [冬月記者★]
- 「町中華」の“息切れ倒産”が増加 ブームにも支えられ職人技で踏ん張ってきたが… 大手チェーンは値上げでも絶好調 [ぐれ★]
- 毛寧(もう・ねい)報道官「中国に日本の水産品の市場は無い」 高市首相の国会答弁に「中国民衆の強い怒り」 ★2 [ぐれ★]
- ヤフコメ「中国への輸出がなくなる事で、日本国内で美味しくいただける事に感謝します」👈やたら政権寄りなのはなぜ?(´・ω・`) [399259198]
- 【高市売り】円安、止まらず!凄い勢いで暴落中。157円へ [219241683]
- ファブルに出てくる貝沼君ってのがお前らにそっくりなんだよ
- 俺「お湯を流してと…」シンク「ボンッw」
- 【悲報】ヤフコメ民「中国が水産物を輸入禁止にするなら、日本国民向けに安く販売すればいい。中国依存から脱するべき」 [153736977]
- paypayで支払いするの便利すぎワロッタwwwwwwwwwwwwwww
