- Sep 30, 2022
-
-
Erik Johnston authored
We move the expensive check of visibility to after calculating push actions, avoiding the expensive check for users who won't get pushed anyway. I think this should have a big impact on rooms with large numbers of local users that have pushed disabled.
-
David Robertson authored
Co-authored-by:
Patrick Cloke <clokep@users.noreply.github.com>
-
Dirk Klimpel authored
Signed-off-by:
Dirk Klimpel <dirk@klimpel.org>
-
Erik Johnston authored
Fixes #13942. Introduced in #13575. Basically, let's only get the ordered set of hosts out of the DB if we need an ordered set of hosts. Since we split the function up the caching won't be as good, but I think it will still be fine as e.g. multiple backfill requests for the same room will hit the cache.
-
David Robertson authored
* Reproduce bug * Compute `least_function` first * Substitute `least_function` with an f-string * Bugfix: avoid overflow Co-authored-by:
Eric Eastwood <erice@element.io>
-
Brendan Abolivier authored
-
- Sep 29, 2022
-
-
David Robertson authored
-
David Robertson authored
-
Erik Johnston authored
-
Nick Mills-Barrett authored
-
Brendan Abolivier authored
Allow admins to require a manual approval process before new accounts can be used (using MSC3866) (#13556)
-
Patrick Cloke authored
-
Hugh Nimmo-Smith authored
-
Patrick Cloke authored
By renaming it and updating the docstring. Additionally, refactors a method which is used only by tests.
-
Nicolas Werner authored
-
reivilibre authored
Co-authored-by:
Eric Eastwood <erice@element.io>
-
- Sep 28, 2022
-
-
Erik Johnston authored
-
Eric Eastwood authored
There is no need to grab thousands of backfill points when we only need 5 to make the `/backfill` request with. We need to grab a few extra in case the first few aren't visible in the history. Previously, we grabbed thousands of backfill points from the database, then sorted and filtered them in the app. Fetching the 4.6k backfill points for `#matrix:matrix.org` from the database takes ~50ms - ~570ms so it's not like this saves a lot of time
. But it might save us more time now that `get_backfill_points_in_room`/`get_insertion_event_backward_extremities_in_room` are more complicated after https://github.com/matrix-org/synapse/pull/13635 This PR moves the filtering and limiting to the SQL query so we just have less data to work with in the first place. Part of https://github.com/matrix-org/synapse/issues/13356 -
Patrick Cloke authored
-
Patrick Cloke authored
This reverts commit 7766bd5b (#13933). The unused column is actually used, but much further down in the function.
-
Patrick Cloke authored
-
Andrew Morgan authored
-
Andrew Morgan authored
-
Erik Johnston authored
c.f. #12993 (comment), point 3 This stores all device list updates that we receive while partial joins are ongoing, and processes them once we have the full state. Note: We don't actually process the device lists in the same ways as if we weren't partially joined. Instead of updating the device list remote cache, we simply notify local users that a change in the remote user's devices has happened. I think this is safe as if the local user requests the keys for the remote user and we don't have them we'll simply fetch them as normal.
-
Kateřina Churanová authored
-
Ashish Kumar authored
-
Shay authored
-
Shay authored
This PR begins work on batching up events during the creation of a room. The PR splits out the creation and sending/persisting of the events. The first three events in the creation of the room-creating the room, joining the creator to the room, and the power levels event are sent sequentially, while the subsequent events are created and collected to be sent at the end of the function. This is currently done by appending them to a list and then iterating over the list to send, the next step (after this PR) would be to send and persist the collected events as a batch.
-
- Sep 27, 2022
-
-
Eric Eastwood authored
Fix https://github.com/matrix-org/synapse/issues/13856 Fix https://github.com/matrix-org/synapse/issues/13865 > Discovered while trying to make Synapse fast enough for [this MSC2716 test for importing many batches](https://github.com/matrix-org/complement/pull/214#discussion_r741678240). As an example, disabling the `have_seen_event` cache saves 10 seconds for each `/messages` request in that MSC2716 Complement test because we're not making as many federation requests for `/state` (speeding up `have_seen_event` itself is related to https://github.com/matrix-org/synapse/issues/13625) > > But this will also make `/messages` faster in general so we can include it in the [faster `/messages` milestone](https://github.com/matrix-org/synapse/milestone/11). > > *-- https://github.com/matrix-org/synapse/issues/13856* ### The problem `_invalidate_caches_for_event` doesn't run in monolith mode which means we never even tried to clear the `have_seen_event` and other caches. And even in worker mode, it only runs on the workers, not the master (AFAICT). Additionally there was bug with the key being wrong so `_invalidate_caches_for_event` never invalidates the `have_seen_event` cache even when it does run. Because we were using the `@cachedList` wrong, it was putting items in the cache under keys like `((room_id, event_id),)` with a `set` in a `set` (ex. `(('!TnCIJPKzdQdUlIyXdQ:test', '$Iu0eqEBN7qcyF1S9B3oNB3I91v2o5YOgRNPwi_78s-k'),)`) and we we're trying to invalidate with just `(room_id, event_id)` which did nothing.
-
Eric Eastwood authored
* Emphasize the right reasons to use (room_id, event_id) Follow-up to: - https://github.com/matrix-org/synapse/pull/13701 - https://github.com/matrix-org/synapse/pull/13771
-
David Robertson authored
-
Patrick Cloke authored
Since MSC3715 has passed FCP, the stable parameter can be used. This currently falls back to the unstable parameter if the stable parameter is not provided (and MSC3715 support is enabled in the configuration).
-
Erik Johnston authored
Otherwise device list changes for large accounts can temporarily delay to-device messages.
-
David Robertson authored
-
David Robertson authored
* Update upgrade notes * Synapse Synapse Synapse Synapse Co-authored-by:
Andrew Morgan <1342360+anoadragon453@users.noreply.github.com> Co-authored-by:
Andrew Morgan <1342360+anoadragon453@users.noreply.github.com>
-
Mathieu Velten authored
Signed-off-by:
Mathieu Velten <mathieuv@matrix.org> Co-authored-by:
Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
-
Quentin Gliech authored
Since #11482, we're saving sessions IDs from upstream IdPs, but we've been losing them when the user goes through a user mapping session on account registration.
-
David Robertson authored
-
Erik Johnston authored
-