mypy: Fix types for redis.

Signed-off-by: Anders Kaseorg <anders@zulip.com>
This commit is contained in:
Anders Kaseorg
2020-10-19 18:08:26 -07:00
parent bcb571c187
commit dc84e9696c
2 changed files with 6 additions and 8 deletions

View File

@@ -21,7 +21,7 @@ class Command(BaseCommand):
help="Actually trim excess")
def _check_within_range(self, key: str, count_func: Callable[[], int],
trim_func: Optional[Callable[[str, int], None]]=None) -> None:
trim_func: Optional[Callable[[str, int], object]]=None) -> None:
user_id = int(key.split(':')[1])
user = get_user_profile_by_id(user_id)
entity = RateLimitedUser(user)
@@ -48,7 +48,7 @@ than max_api_calls! (trying to trim) %s %s", key, count)
wildcard_zset = "ratelimit:*:*:zset"
trim_func: Optional[
Callable[[str, int], None]
Callable[[str, int], object]
] = lambda key, max_calls: client.ltrim(key, 0, max_calls - 1)
if not options['trim']:
trim_func = None

View File

@@ -28,16 +28,14 @@ def move_missed_message_addresses_to_database(apps: StateApps, schema_editor: Da
redis_client.delete(key)
continue
result = redis_client.hmget(key, 'user_profile_id', 'recipient_id', 'subject')
if not all(val is not None for val in result):
user_profile_id, recipient_id, subject_b = redis_client.hmget(
key, 'user_profile_id', 'recipient_id', 'subject'
)
if user_profile_id is None or recipient_id is None or subject_b is None:
# Missing data, skip this key; this should never happen
redis_client.delete(key)
continue
user_profile_id: bytes
recipient_id: bytes
subject_id: bytes
user_profile_id, recipient_id, subject_b = result
topic_name = subject_b.decode('utf-8')
# The data model for missed-message emails has changed in two