Sourceforge Tracker Monitor
norep****@sourc*****
2003年 5月 5日 (月) 10:44:48 JST
Bugs item #2021, was opened at 2003-05-05 10:44 You can respond by visiting: https://sourceforge.jp/tracker/?func=detail&atid=1698&aid=2021&group_id=430 Category: バトル実行制御関連 Group: None Status: Open Resolution: None Priority: 5 Submitted By: Naoki Kurosawa (kurosawa) Assigned to: Naoki Kurosawa (kurosawa) Summary: 分散サーバからの実行結果送信が一度に来るとシーズンが終了しない Initial Comment: バトルの実行結果送信時、seasonsのcompleted_battlesに+1 していき、 そのシーズンのバトル数とcompleted_battlesが等しくなっ たらシーズン終了と判断している。 実行結果送信が一度に来た場合、 たとえば1シーズン内に5個バトルがあって、3個完了してお り、残り2個を2台の分散サーバが同時に完了して送信した場 合、 それぞれ3+1でcompleted_battlesに4と書き込んでしまい、 バトルがすべて完了しているのにcompleted_battlesが4のま まなのでシーズンが完了しない。 ということで、 3+1というロジックではなく、statusがCOMPLETEDになってい るバトル数をクエリでカウントし、代入するようにした。 こうすれば、そもそもbattlesテーブルへの結果書き込み時 点でロックがかかっているので、2つの結果送信リクエスト が同時に進行することがなくなり、この問題は解消されると 思われる。 ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.jp/tracker/?func=detail&atid=1698&aid=2021&group_id=430