diff options
author | 2024-07-16 21:17:20 +0100 | |
---|---|---|
committer | 2024-07-16 21:17:36 +0100 | |
commit | 5023467ef1f47f97a0f45a91c4bc01509b2f04f8 (patch) | |
tree | 7894819ad31ec4ecf1d063f6d45174588d6df4aa | |
parent | Use redis for the discord member cache over mongo (diff) |
Simplify the logic for fetching from member cache
-rw-r--r-- | backend/discord.py | 18 |
1 files changed, 6 insertions, 12 deletions
diff --git a/backend/discord.py b/backend/discord.py index 855a606..192fc60 100644 --- a/backend/discord.py +++ b/backend/discord.py @@ -136,20 +136,14 @@ async def get_member( """ member_key = f"forms-backend:member_cache:{user_id}" - if force_refresh: - await constants.REDIS_CLIENT.delete(member_key) - - result = await constants.REDIS_CLIENT.get(member_key) - - if result is not None: - return models.DiscordMember(**json.loads(result)) + if not force_refresh: + result = await constants.REDIS_CLIENT.get(member_key) + if result: + return models.DiscordMember(**json.loads(result)) member = await _fetch_member_api(user_id) - - if not member: - return None - - await constants.REDIS_CLIENT.set(member_key, member.json(), ex=60 * 60) + if member: + await constants.REDIS_CLIENT.set(member_key, member.json(), ex=60 * 60) return member |