Skip to content
Snippets Groups Projects
  • Erik Johnston's avatar
    c72d26c1
    Refactor `EventContext` (#12689) · c72d26c1
    Erik Johnston authored
    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
    c72d26c1
    History
    Refactor `EventContext` (#12689)
    Erik Johnston authored
    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