Browse Source

Limit concurrent event creation for a room to avoid state resolution when sending bursts of events to a local room (#14977)

tags/v1.78.0rc1
Shay 1 year ago
committed by GitHub
parent
commit
55e4d27b36
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 4 additions and 3 deletions
  1. +1
    -0
      changelog.d/14977.misc
  2. +3
    -3
      synapse/handlers/message.py

+ 1
- 0
changelog.d/14977.misc View File

@@ -0,0 +1 @@
Limit concurrent event creation for a room to avoid state resolution when sending bursts of events to a local room.

+ 3
- 3
synapse/handlers/message.py View File

@@ -499,9 +499,9 @@ class EventCreationHandler:

self.request_ratelimiter = hs.get_request_ratelimiter()

# We arbitrarily limit concurrent event creation for a room to 5.
# This is to stop us from diverging history *too* much.
self.limiter = Linearizer(max_count=5, name="room_event_creation_limit")
# We limit concurrent event creation for a room to 1. This prevents state resolution
# from occurring when sending bursts of events to a local room
self.limiter = Linearizer(max_count=1, name="room_event_creation_limit")

self._bulk_push_rule_evaluator = hs.get_bulk_push_rule_evaluator()



Loading…
Cancel
Save