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

Locally-rejected invites don't get passed on to the client #2181

Closed
richvdh opened this issue May 2, 2017 · 13 comments · Fixed by #7804
Closed

Locally-rejected invites don't get passed on to the client #2181

richvdh opened this issue May 2, 2017 · 13 comments · Fixed by #7804
Assignees
Labels
A-Stuck-Invite Incoming invitations that won't go away

Comments

@richvdh
Copy link
Member

richvdh commented May 2, 2017

After an invite is rejected locally, we don't update the clients about it via /sync

(riot-web bug: element-hq/element-web#3743)

@richvdh richvdh added the A-Stuck-Invite Incoming invitations that won't go away label May 3, 2017
@richvdh richvdh added the Z-Help-Wanted We know exactly how to fix this issue, and would be grateful for any contribution label Jan 29, 2018
@richvdh
Copy link
Member Author

richvdh commented Apr 27, 2018

To confirm if you are suffering from this bug: try telling your client to flush its cache. If the invite goes away, it is this bug.

@AdrienMatricon
Copy link

You're right. The invite does go away.

@aaronraimist
Copy link
Contributor

aaronraimist commented Feb 17, 2019

Is there any chance that this will get added to the holding pen so it is at least in the plan to fix this soon? This is one of the more annoying user facing bugs still present in Synapse.

@redsky17
Copy link

I can confirm that I experienced this bug recently as well. Clearing the cache in Riot web made the stuck invite go away.

@ara4n
Copy link
Member

ara4n commented Feb 17, 2019

cc @neilisfragile

@wayneoutthere
Copy link

I just had this with most recent version of riot web app. I had to:

  1. clear cache and reload in security/settings
  2. go to bottom of security/settings and apparently (and thankfully) there are 'Bulk Options' which included 'reject all 213 invites' <--- not sure how that even happened as it was one person inviting me...
  3. wait a really long time while it cleared
  4. log out
  5. Log back in

Unfortunately I had to do a similar activity on my mobile app as well but hopefully these steps help someone

@aaronraimist
Copy link
Contributor

I've added a $200 bounty to encourage a community member to work on this important Synapse issue. It expires 2020-01-01. https://freedomsponsors.org/issue/849/locally-rejected-invites-dont-get-passed-on-to-the-client?alert=SPONSOR#description

If a Synapse core team member solves the issue while at work, I will reallocate this bounty to another issue. If a core team member wants to solve this with their community hat on then they can choose to take the bounty.

@sunshineo
Copy link

Hi @aaronraimist, I made a Github bot and a website similar to the https://freedomsponsors.org/ you are using. The Github bot can automatically add a comment to every new issue with a link to a website that encourages people to add reward. (It adds a link to existing open issues when you install). It automatically comments on the issue and tag people when anyone gives a reward, claim the rewards, and approve a reward. Automatically label issues with rewards so you know what is really important for your users.

I wonder if you or the owner of this repo would like to try it. It's in beta now, I'm looking for people to give it a try.

@benbucksch
Copy link

benbucksch commented Feb 21, 2020

Could this be fixed, please? This causes a very prominent and serious issue in Riot, see element-hq/element-web#3743 (comment). That bug is literally "front and center", and there is no obvious recourse for a normal end user. In other words, the bug is persistent. (Reading bug reports for workaround and flushing caches does not count.) I ran into this after using Riot only twice. It makes a really immature impression of Riot and Matrix.

@miff2000
Copy link

miff2000 commented Mar 10, 2020

I just had this with most recent version of riot web app. I had to:

  1. clear cache and reload in security/settings
  2. go to bottom of security/settings and apparently (and thankfully) there are 'Bulk Options' which included 'reject all 213 invites' <--- not sure how that even happened as it was one person inviting me...
  3. wait a really long time while it cleared
  4. log out
  5. Log back in

Unfortunately I had to do a similar activity on my mobile app as well but hopefully these steps help someone

"Clear cache and reload" is now here under Help & About:
image

@benbucksch
Copy link

benbucksch commented Mar 10, 2020

That's nice, but it doesn't help affected users, because they cannot possibly know that this button is a workaround for this bug. Googling for bug reports is not a proper user interface.

@jryans jryans added the mozilla label Mar 11, 2020
@btittelbach
Copy link

I can also confirm that, once locally_rejected is set for a room in the database, the invite persists very prominently and annoyingly in all other clients, until "clear cache and reload" is used on every client.

I agree that this needs to be fixed urgently.

@benbucksch
Copy link

benbucksch commented Jun 18, 2020

As stated on element-hq/element-web#3743 (comment):
This bug is really annoying and can [make] one's life miserable if you get spammed by room invites (just saying). Any progress or estimates when it would be addressed?

@richvdh richvdh self-assigned this Jul 6, 2020
richvdh added a commit that referenced this issue Jul 8, 2020
Here is the core change which fixes #2181. When we have a remote invite to
reject, and we fail to reject it via the remote server, we generate our *own*
out-of-band membership event.
richvdh added a commit that referenced this issue Jul 8, 2020
This is the core change which fixes #2181. The basic premise is that, when we
fail to reject an invite via the remote server, we can generate our own
out-of-band leave event and persist it as an outlier, so that we have something
to send to the client.

This makes the old `locally_reject_invite` impl redundant; a future commit will
remove it.
richvdh added a commit that referenced this issue Jul 8, 2020
This is the core change which fixes #2181. The basic premise is that, when we
fail to reject an invite via the remote server, we can generate our own
out-of-band leave event and persist it as an outlier, so that we have something
to send to the client.

This makes the old `locally_reject_invite` impl redundant; a future commit will
remove it.
richvdh added a commit to matrix-org/sytest that referenced this issue Jul 8, 2020
richvdh added a commit that referenced this issue Jul 9, 2020
Fixes #2181. 

The basic premise is that, when we
fail to reject an invite via the remote server, we can generate our own
out-of-band leave event and persist it as an outlier, so that we have something
to send to the client.
richvdh added a commit to matrix-org/sytest that referenced this issue Jul 9, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
A-Stuck-Invite Incoming invitations that won't go away
Projects
None yet
Development

Successfully merging a pull request may close this issue.