Skip to content
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

"Failed to make_join via any server" is not useful feedback to the user #17740

Open
benparsons opened this issue Jun 23, 2021 · 9 comments
Open
Labels
A-Error-Message O-Occasional Affects or can be seen by some users regularly or most users rarely S-Major Severely degrades major functionality or product features, with no satisfactory workaround T-Enhancement X-Spec-Changes Z-Synapse

Comments

@benparsons
Copy link
Member

I see this error very frequently:

Failed to join room
Failed to make_join via any server

It doesn't help me understand what the problem is or what I should do next.

@SimonBrandner
Copy link
Contributor

Related #12219

@SimonBrandner SimonBrandner added A-Error-Message P2 S-Major Severely degrades major functionality or product features, with no satisfactory workaround labels Jun 23, 2021
@benparsons
Copy link
Member Author

I'm still seeing this issue frequently. Logs sent. I'm unable to join rooms and have invites remaining in my client.

@t3chguy
Copy link
Member

t3chguy commented Aug 9, 2021

This'll require spec changes for a defined errcode

@benparsons
Copy link
Member Author

This looks like it's caused by matrix-org/synapse#10021

@lampholder
Copy link
Member

This is still a stupid error message.

We've got a couple of things here:

1. Thing the first: Probably Synapse error messages are unwieldy

I guess that Synapse offers up errors with just a string (i.e. no sort of unique error code independent of the HTTP response code). I guess that this should change but is a faff. I guess that until it does change, clients feel duty bound to offer up the broad spectrum, opaque, uninternationalisable string directly from the server to the user.

We could do better, though, since in this case I think almost anything is better. Many times when I see this error I actually have joined the room, but I guess something timed out - even the information that this might have happened would be better than this nonsense unfriendly message.

2. Thing the second: Element handles room joins badly

As per that last thing I said, sometimes I think the synchronous request times out, but ultimately I end up joined anyway. Room join requests are rate limited, but it's left to the user to retry manually, which is super annoying, esp. if I'm accepting a bunch of invites.

Why can't the client handle all of this for me? When I ask to join a room, put it in the roomlist with an indicator that it's joining and give it a real good go before giving up. If it's rate limited, retry for me. If it times out, try again later. We could even leave the room name in the room list as a dismissable notice that my request to join failed. The poxy "Failed to make_join via any server" notice doesn't even tell me which room failed to join, so if I tried to join a bunch I know don't even know where to start to find the thing I need to fix.

Right now my assumption is that I have to watch Element until the room is joined to guarantee that it actually does join - I don't even keep using the app until I'm confident I've joined. I would love for us to turn this around.

@SimonBrandner SimonBrandner added O-Occasional Affects or can be seen by some users regularly or most users rarely and removed P2 labels Dec 22, 2021
@viasux
Copy link

viasux commented Jan 16, 2022

Every time I join a room, I get "connection timed out," but there's still a wheel at the top left (with no text or context, also it's off-center) which means element is still joining the room lol, so I have to sit here for a long while until it decides to work. I just joined a large room, accidentally, and there not being a "cancel room join" button is worrying, because idk how well my server will handle joining such a large room.

Element_8AxZ65vfxA.mp4

@t3chguy
Copy link
Member

t3chguy commented Jan 17, 2022

and there not being a "cancel room join" button is worrying

There's no way for a client to request this from a server, if you want this I suggest a matrix-doc issue for the spec to grow support for it.

@lampholder
Copy link
Member

Does this issue have the right labels?

I'm worried that the current set will result in its not getting picked up in our UX improvement loops:
image

Specifically, it's not tagged as a bug, it's tagged as occasional (but over federation at least I would call it frequent), and it's tagged with X-Spec-Changes which makes it at least a little bit more intimidating to address.

@t3chguy
Copy link
Member

t3chguy commented Mar 23, 2022

Blindly hiding the underlying error with one which doesn't mean anything specific is trivial, having servers send more specific error codes which clients can rely on an specifically cater to requires Spec & Synapse work.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-Error-Message O-Occasional Affects or can be seen by some users regularly or most users rarely S-Major Severely degrades major functionality or product features, with no satisfactory workaround T-Enhancement X-Spec-Changes Z-Synapse
Projects
None yet
Development

No branches or pull requests

5 participants