Keep track when we try and fail to process a pulled event (#13589)
We can follow-up this PR with: 1. Only try to backfill from an event if we haven't tried recently -> https://github.com/matrix-org/synapse/issues/13622 1. When we decide to backfill that event again, process it in the background so it doesn't block and make `/messages` slow when we know it will probably fail again -> https://github.com/matrix-org/synapse/issues/13623 1. Generally track failures everywhere we try and fail to pull an event over federation -> https://github.com/matrix-org/synapse/issues/13700 Fix https://github.com/matrix-org/synapse/issues/13621 Part of https://github.com/matrix-org/synapse/issues/13356 Mentioned in [internal doc](https://docs.google.com/document/d/1lvUoVfYUiy6UaHB6Rb4HicjaJAU40-APue9Q4vzuW3c/edit#bookmark=id.qv7cj51sv9i5)
Showing
- changelog.d/13589.feature 1 addition, 0 deletionschangelog.d/13589.feature
- synapse/handlers/federation_event.py 7 additions, 0 deletionssynapse/handlers/federation_event.py
- synapse/storage/databases/main/event_federation.py 45 additions, 0 deletionssynapse/storage/databases/main/event_federation.py
- synapse/storage/databases/main/events.py 23 additions, 9 deletionssynapse/storage/databases/main/events.py
- synapse/storage/schema/__init__.py 2 additions, 0 deletionssynapse/storage/schema/__init__.py
- synapse/storage/schema/main/delta/73/01event_failed_pull_attempts.sql 29 additions, 0 deletions...age/schema/main/delta/73/01event_failed_pull_attempts.sql
- tests/handlers/test_federation_event.py 222 additions, 0 deletionstests/handlers/test_federation_event.py
Loading
Please register or sign in to comment