following-cache-anyway-found

This commit is contained in:
2024-05-05 20:16:45 +03:00
parent cfe9ac1005
commit 3ab42ecb72
4 changed files with 14 additions and 16 deletions

View File

@@ -137,7 +137,7 @@ async def cache_topic(topic_dict: dict):
follower_follows_topics_str = await redis.execute(
"GET", f"author:{follower_id}:follows-topics"
)
if isinstance(follower_follows_topics, str):
if isinstance(follower_follows_topics_str, str):
follower_follows_topics = json.loads(follower_follows_topics_str)
c = 0
for old_topic in follower_follows_topics:
@@ -149,7 +149,7 @@ async def cache_topic(topic_dict: dict):
# topic not found in the list, so add the new topic with the updated stat field
follower_follows_topics.append(topic_dict)
await redis.set(
await redis.execute('SET',
"SET",
f"author:{follower_id}:follows-topics",
json.dumps(follower_follows_topics),

View File

@@ -109,34 +109,35 @@ def after_author_update(_mapper, _connection, author: Author):
result = get_with_stat(q)
if result:
[author_with_stat] = result
asyncio.create_task(cache_author(author_with_stat.dict()))
if author_with_stat:
_task = asyncio.create_task(cache_author(author_with_stat.dict()))
def after_topic_follower_insert(_mapper, _connection, target: TopicFollower):
logger.info(target)
asyncio.create_task(
handle_topic_follower_change(target.topic, target.follower, True)
handle_topic_follower_change(target.topic, target.follower, True) # type: ignore
)
def after_topic_follower_delete(_mapper, _connection, target: TopicFollower):
logger.info(target)
asyncio.create_task(
handle_topic_follower_change(target.topic, target.follower, False)
handle_topic_follower_change(target.topic, target.follower, False) # type: ignore
)
def after_author_follower_insert(_mapper, _connection, target: AuthorFollower):
logger.info(target)
asyncio.create_task(
handle_author_follower_change(target.author, target.follower, True)
handle_author_follower_change(target.author, target.follower, True) # type: ignore
)
def after_author_follower_delete(_mapper, _connection, target: AuthorFollower):
logger.info(target)
asyncio.create_task(
handle_author_follower_change(target.author, target.follower, False)
handle_author_follower_change(target.author, target.follower, False) # type: ignore
)