atproto_firehose._load_dids: if we crash, make sure we re-fetch everything

handles (but doesn't fix) https://console.cloud.google.com/errors/detail/CNezhfr029Lq9QE;time=P1D;locations=global?inv=1&invt=AbiGWw&project=bridgy-federated
pull/1542/head
Ryan Barrett 2024-11-21 15:52:54 -08:00
rodzic b77715fc3c
commit aea12c1e39
Nie znaleziono w bazie danych klucza dla tego podpisu
ID klucza GPG: 6BE31FDF4776E9D4
1 zmienionych plików z 8 dodań i 2 usunięć

Wyświetl plik

@ -87,15 +87,21 @@ def _load_dids():
atproto_query = ATProto.query(ATProto.enabled_protocols != None,
ATProto.updated > atproto_loaded_at)
atproto_loaded_at = ATProto.query().order(-ATProto.updated).get().updated
loaded_at = ATProto.query().order(-ATProto.updated).get().updated
new_atproto = [key.id() for key in atproto_query.iter(keys_only=True)]
atproto_dids.update(new_atproto)
# set *after* we populate atproto_dids so that if we crash earlier, we
# re-query from the earlier timestamp
atproto_loaded_at = loaded_at
bridged_query = AtpRepo.query(AtpRepo.status == None,
AtpRepo.created > bridged_loaded_at)
bridged_loaded_at = AtpRepo.query().order(-AtpRepo.created).get().created
loaded_at = AtpRepo.query().order(-AtpRepo.created).get().created
new_bridged = [key.id() for key in bridged_query.iter(keys_only=True)]
bridged_dids.update(new_bridged)
# set *after* we populate bridged_dids so that if we crash earlier, we
# re-query from the earlier timestamp
bridged_loaded_at = loaded_at
if not protocol_bot_dids:
bot_keys = [Web(id=domain).key for domain in PROTOCOL_DOMAINS]