summary refs log tree commit diff
path: root/synapse/storage/_base.py
diff options
context:
space:
mode:
authorEric Eastwood <eric.eastwood@beta.gouv.fr>2024-08-30 02:53:57 -0500
committerGitHub <noreply@github.com>2024-08-30 08:53:57 +0100
commit26f81fb5be5c090af70986815a2795ea0713eede (patch)
tree65a3b140f88479ede828ea7fc78d59c55f4141de /synapse/storage/_base.py
parentFix background update for sliding sync (find previous membership) (#17632) (diff)
downloadsynapse-26f81fb5be5c090af70986815a2795ea0713eede.tar.xz
Sliding Sync: Fix outlier re-persisting causing problems with sliding sync tables (#17635)
Fix outlier re-persisting causing problems with sliding sync tables

Follow-up to https://github.com/element-hq/synapse/pull/17512

When running on `matrix.org`, we discovered that a remote invite is
first persisted as an `outlier` and then re-persisted again where it is
de-outliered. The first the time, the `outlier` is persisted with one
`stream_ordering` but when persisted again and de-outliered, it is
assigned a different `stream_ordering` that won't end up being used.
Since we call `_calculate_sliding_sync_table_changes()` before
`_update_outliers_txn()` which fixes this discrepancy (always use the
`stream_ordering` from the first time it was persisted), we're working
with an unreliable `stream_ordering` value that will possibly be unused
and not make it into the `events` table.
Diffstat (limited to 'synapse/storage/_base.py')
0 files changed, 0 insertions, 0 deletions