- session.add(game)\r
- session.flush()\r
- log.debug("Created game id {0} on server {1}, map {2} at \\r
- {3}".format(game.game_id, \r
- server_id, map_id, start_dt))\r
+ game.match_id = match_id\r
+\r
+ try:\r
+ session.query(Game).filter(Game.server_id==server_id).\\r
+ filter(Game.match_id==match_id).one()\r
+ # if a game under the same server and match_id found, \r
+ # this is a duplicate game and can be ignored\r
+ raise pyramid.httpexceptions.HTTPOk\r
+ except NoResultFound, e:\r
+ # server_id/match_id combination not found. game is ok to insert\r
+ session.add(game)\r
+ log.debug("Created game id {0} on server {1}, map {2} at \\r
+ {3}".format(game.game_id, \r
+ server_id, map_id, start_dt))\r