diff options
author | Sean Quah <8349537+squahtx@users.noreply.github.com> | 2023-01-22 19:19:31 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-01-22 19:19:31 +0000 |
commit | d329a566df6ff2b635a375bf1b2c8ed3b2c9815d (patch) | |
tree | 15f6dc33cf97bc5ec8d5a3372f9c820ecacee5fe /changelog.d | |
parent | Fix type hints for Monthly Active Users tests (#14889) (diff) | |
download | synapse-d329a566df6ff2b635a375bf1b2c8ed3b2c9815d.tar.xz |
Faster joins: Fix incompatibility with restricted joins (#14882)
* Avoid clearing out forward extremities when doing a second remote join When joining a restricted room where the local homeserver does not have a user able to issue invites, we perform a second remote join. We want to avoid clearing out forward extremities in this case because the forward extremities we have are up to date and clearing out forward extremities creates a window in which the room can get bricked if Synapse crashes. Signed-off-by: Sean Quah <seanq@matrix.org> * Do a full join when doing a second remote join into a full state room We cannot persist a partial state join event into a joined full state room, so we perform a full state join for such rooms instead. As a future optimization, we could always perform a partial state join and compute or retrieve the full state ourselves if necessary. Signed-off-by: Sean Quah <seanq@matrix.org> * Add lock around partial state flag for rooms Signed-off-by: Sean Quah <seanq@matrix.org> * Preserve partial state info when doing a second partial state join Signed-off-by: Sean Quah <seanq@matrix.org> * Add newsfile * Add a TODO(faster_joins) marker Signed-off-by: Sean Quah <seanq@matrix.org>
Diffstat (limited to 'changelog.d')
-rw-r--r-- | changelog.d/14882.bugfix | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/changelog.d/14882.bugfix b/changelog.d/14882.bugfix new file mode 100644 index 0000000000..1fda344361 --- /dev/null +++ b/changelog.d/14882.bugfix @@ -0,0 +1 @@ +Faster joins: Fix incompatibility with joins into restricted rooms where no local users have the ability to invite. |