-
-
Notifications
You must be signed in to change notification settings - Fork 2.1k
Faster joins: Update room stats once state re-sync completes #12814
Comments
Also: what do the room stats say during re-sync, and is that ok? |
Points of note:
|
Looking at the code, it seems that there are two tables that would need updating: |
Those are all the tables for this issue I believe. As for the approach: Non-faster joins operation
Faster joins operation So in single process mode, it looks like things might already just work? We'll want to write a complement test to confirm it. Worker mode I believe In summary, we might expect things to just work in single process mode. We'll want to write a complement test for it. Hopefully the above isn't too confusing or unclear. |
That's extremely clear, thank you very much! |
When finishing a partial state join to a room, we update the current state of the room without persisting additional events. Workers receive notice of the current state update over replication, but neglect to wake the room stats and user directory updaters, which then get incidentally triggered the next time an event is persisted or an unrelated event persister sends out a stream position update. We wake the room stats and user directory updaters at the appropriate time in this commit. Part of #12814 and #12815. Signed-off-by: Sean Quah <[email protected]>
When finishing a partial state join to a room, we update the current state of the room without persisting additional events. Workers receive notice of the current state update over replication, but neglect to wake the room stats and user directory updaters, which then get incidentally triggered the next time an event is persisted or an unrelated event persister sends out a stream position update. We wake the room stats and user directory updaters at the appropriate time in this commit. Part of #12814 and #12815. Signed-off-by: Sean Quah <[email protected]>
When finishing a partial state join to a room, we update the current state of the room without persisting additional events. Workers receive notice of the current state update over replication, but neglect to wake the room stats and user directory updaters, which then get incidentally triggered the next time an event is persisted or an unrelated event persister sends out a stream position update. We wake the room stats and user directory updaters at the appropriate time in this commit. Part of #12814 and #12815. Signed-off-by: Sean Quah <[email protected]>
During re-sync, the room stats reflect the current state of the room and exclude all remote users except new joiners. |
…n finishing join (#14874) * Faster joins: Update room stats and user directory on workers when done When finishing a partial state join to a room, we update the current state of the room without persisting additional events. Workers receive notice of the current state update over replication, but neglect to wake the room stats and user directory updaters, which then get incidentally triggered the next time an event is persisted or an unrelated event persister sends out a stream position update. We wake the room stats and user directory updaters at the appropriate time in this commit. Part of #12814 and #12815. Signed-off-by: Sean Quah <[email protected]> * fixup comment Signed-off-by: Sean Quah <[email protected]>
Potentially useful / possible blockers:
The text was updated successfully, but these errors were encountered: