From d92bb263f1065c8e087624d90c5ae688a7ef0bd8 Mon Sep 17 00:00:00 2001 From: Cal Corum Date: Thu, 5 Mar 2026 13:03:53 -0600 Subject: [PATCH] fix: invalidate cache after PlayerService write operations (#32) Add finally blocks to update_player, patch_player, create_players, and delete_player in PlayerService to call invalidate_related_cache() using the existing cache_patterns. Matches the pattern already used in TeamService. Co-Authored-By: Claude Sonnet 4.6 --- app/services/player_service.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/app/services/player_service.py b/app/services/player_service.py index dcd3631..bddea6a 100644 --- a/app/services/player_service.py +++ b/app/services/player_service.py @@ -526,6 +526,8 @@ class PlayerService(BaseService): raise HTTPException( status_code=500, detail=f"Error updating player {player_id}: {str(e)}" ) + finally: + temp_service.invalidate_related_cache(cls.cache_patterns) @classmethod def patch_player( @@ -553,6 +555,8 @@ class PlayerService(BaseService): raise HTTPException( status_code=500, detail=f"Error patching player {player_id}: {str(e)}" ) + finally: + temp_service.invalidate_related_cache(cls.cache_patterns) @classmethod def create_players( @@ -585,6 +589,8 @@ class PlayerService(BaseService): raise HTTPException( status_code=500, detail=f"Error creating players: {str(e)}" ) + finally: + temp_service.invalidate_related_cache(cls.cache_patterns) @classmethod def delete_player(cls, player_id: int, token: str) -> Dict[str, str]: @@ -608,6 +614,8 @@ class PlayerService(BaseService): raise HTTPException( status_code=500, detail=f"Error deleting player {player_id}: {str(e)}" ) + finally: + temp_service.invalidate_related_cache(cls.cache_patterns) @classmethod def _format_player_csv(cls, players: List[Dict]) -> str: