-
-
Notifications
You must be signed in to change notification settings - Fork 600
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Indexed DB can have inconsistency in membership event content #4198
Comments
For example: Element devtools & Indexed DB are showing the same event (as the room ID & event ID between the two are the same), but they each have a different value for The correct content is in the I assume that, unlike |
Just looking at this for triage, but how are you getting two tabs signed in as different users? I don't see how this would be possible since they share the same localstorage etc: they would be logged in as the same user. |
With Firefox container tabs. But since the repro steps involve only 2 users, an alternative to using container tabs is to have one of the 2 users in a private browsing / incognito window. |
This is potentially related. There was a switch from using a I tried refactoring this with the help of @t3chguy but there was more to do so the PR is currently put on ice. |
There is a new finding outlined here: State seems to be updated with older state. |
It's possible for the
sync
store to have incorrect content of am.room.member
event inroomsData.join.$roomID.state[*]
, but correct content for that same event inroomsData.join.$roomID.timeline[*]
.To reproduce:
m.room.member
> MXID of user who leftcontent.membership
="leave"
content.membership
in thetimeline
event for the same eventIDcontent.membership
="join"
in thestate
event for the same eventIDWith that said, any client that uses
timeline
to load state won't have any problems (and I assume Element Web does that, as it has accurate member lists in rooms). But if a client were read fromstate
, it would get incorrect data.The text was updated successfully, but these errors were encountered: