Skip to content
Snippets Groups Projects
  • Richard van der Hoff's avatar
    a139420a
    Fix races in room stats (and other) updates. (#6187) · a139420a
    Richard van der Hoff authored
    Hopefully this will fix the occasional failures we were seeing in the room directory.
    
    The problem was that events are not necessarily persisted (and `current_state_delta_stream` updated) in the same order as their stream_id. So for instance current_state_delta 9 might be persisted *before* current_state_delta 8. Then, when the room stats saw stream_id 9, it assumed it had done everything up to 9, and never came back to do stream_id 8.
    
    We can solve this easily by only processing up to the stream_id where we know all events have been persisted.
    Fix races in room stats (and other) updates. (#6187)
    Richard van der Hoff authored
    Hopefully this will fix the occasional failures we were seeing in the room directory.
    
    The problem was that events are not necessarily persisted (and `current_state_delta_stream` updated) in the same order as their stream_id. So for instance current_state_delta 9 might be persisted *before* current_state_delta 8. Then, when the room stats saw stream_id 9, it assumed it had done everything up to 9, and never came back to do stream_id 8.
    
    We can solve this easily by only processing up to the stream_id where we know all events have been persisted.