mirror of
https://git.anonymousland.org/anonymousland/synapse.git
synced 2025-11-24 18:33:39 -05:00
Refactor how the `EventContext` class works, with the intention of reducing the amount of state we fetch from the DB during event processing. The idea here is to get rid of the cached `current_state_ids` and `prev_state_ids` that live in the `EventContext`, and instead defer straight to the database (and its caching). One change that may have a noticeable effect is that we now no longer prefill the `get_current_state_ids` cache on a state change. However, that query is relatively light, since its just a case of reading a table from the DB (unlike fetching state at an event which is more heavyweight). For deployments with workers this cache isn't even used. Part of #12684 |
||
|---|---|---|
| .. | ||
| databases | ||
| engines | ||
| schema | ||
| util | ||
| __init__.py | ||
| _base.py | ||
| background_updates.py | ||
| database.py | ||
| keys.py | ||
| persist_events.py | ||
| prepare_database.py | ||
| purge_events.py | ||
| push_rule.py | ||
| roommember.py | ||
| state.py | ||
| types.py | ||