This repository has been archived by the owner on Apr 26, 2024. It is now read-only.
Synapse relies on unspecced behaviour for the remote server to resync device lists after prune_outbound_device_list_pokes
#7173
Labels
A-Device-List-Tracking
Telling clients about other devices. Often related to E2EE.
A-Federation
A-Spec-Compliance
places where synapse does not conform to the spec
O-Frequent
Affects or can be seen by most users regularly or impacts most users' first experience
S-Major
Major functionality / product severely impaired, no satisfactory workaround.
T-Defect
Bugs, crashes, hangs, security vulnerabilities, or other reported issues.
z-p2
(Deprecated Label)
Background: each
m.device_list_update
EDU has astream_id
; receiving servers can check that they haven't missed any in the sequence. If a receiving server receives an update with aprev_id
it doesn't recognise, it should do a full resync for that user.We use this behaviour to prune device list updates for offline server.
However, synapse currently relies on the unspecced behaviour that the remote server will do a full resync if the
prev_id
is empty. This is wrong - an emptyprev_id
means 'this is the first ever update', so there should be no need for the remote server to resync.The text was updated successfully, but these errors were encountered: