Skip to content
This repository has been archived by the owner on Apr 26, 2024. It is now read-only.

incremental /sync may give incomplete results when rejoining a room #3305

Closed
richvdh opened this issue May 29, 2018 · 0 comments · Fixed by #12319
Closed

incremental /sync may give incomplete results when rejoining a room #3305

richvdh opened this issue May 29, 2018 · 0 comments · Fixed by #12319
Labels
A-Sync defects related to /sync S-Minor Blocks non-critical functionality, workarounds exist. T-Defect Bugs, crashes, hangs, security vulnerabilities, or other reported issues.

Comments

@richvdh
Copy link
Member

richvdh commented May 29, 2018

I rather hope this will get fixed when we make depth not be a thing, but:

  • incremental /sync looks for rooms you have joined since your previous sync
  • it does this by looking at your membership state in each room at your 'since' token (
    old_state_ids = yield self.get_state_at(room_id, since_token)
    ish), and looking for those that are not 'join'
  • however, get_state_at uses get_recent_events_for_room which returns the event with the greatest depth, so if somebody has been playing silly buggers with the depth, you may end up looking at a point in the graph where you were a member, even though at the point of the 'since' token you were not.
@neilisfragile neilisfragile added z-p2 (Deprecated Label) z-minor (Deprecated Label) labels Jun 4, 2018
@richvdh richvdh added A-Sync defects related to /sync T-Defect Bugs, crashes, hangs, security vulnerabilities, or other reported issues. S-Minor Blocks non-critical functionality, workarounds exist. and removed z-p2 (Deprecated Label) z-minor (Deprecated Label) labels Dec 24, 2021
erikjohnston pushed a commit that referenced this issue Apr 13, 2022
Discovered after much in-depth investigation in #12281.

Closes: #12281
Closes: #3305

Signed off by: Nick Mills-Barrett nick@beeper.com
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
A-Sync defects related to /sync S-Minor Blocks non-critical functionality, workarounds exist. T-Defect Bugs, crashes, hangs, security vulnerabilities, or other reported issues.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants