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

if all users leave a room, the room should not wink out of existence. (SPEC-211) #95

Open
matrixbot opened this issue Aug 20, 2015 · 13 comments
Labels
A-Client-Server Issues affecting the CS API feature Suggestion for a significant extension which needs considerable consideration

Comments

@matrixbot
Copy link
Member

Submitted by @​matthew:matrix.org
we need to keep a HS or two in the room somehow to 'keep the lights on' and preserve history even if all the participating users leave. this would also be helpful as a way for ASes to interact with rooms without needing an explicit AS user joined.

(Imported from https://matrix.org/jira/browse/SPEC-211)

Attachments:

https://matrix.org/jira/secure/attachment/10210/public-rooms.png

@matrixbot
Copy link
Member Author

Jira watchers: @ara4n

@matrixbot
Copy link
Member Author

matrixbot commented Aug 20, 2015

Links exported from Jira:

duplicates SPEC-147
relates to https://github.com/matrix-org/matrix-doc/issues/544
relates to SPEC-224
relates to https://github.com/matrix-org/matrix-doc/issues/450

@matrixbot
Copy link
Member Author

matrixbot commented Sep 19, 2015

The idea of letting ASes participate in a room without explicitly joining is finally specced in https://github.com/matrix-org/matrix-doc/issues/544

-- @ara4n

@matrixbot
Copy link
Member Author

matrixbot commented Sep 25, 2015

Could SPEC-216 help with this? If the act of leaving a room doesn't actually part the user from it entirely, can these 'left' users keep the room alive? Only if the users explicitly discard the room and its history (as per SPEC-224) would the server stop participating - and if all the users discarded it the room would wink out of existence, which is probably what's wanted in that instance.

-- @ara4n

@matrixbot
Copy link
Member Author

I'm assuming this is the same thing, but if someone can check:

rgh
I've set up a home server but I'm seeing some very odd behaviour. I can create a room but if I leave the room I can't get back into it.
I get the following error message in the log: "RuntimeError: Failed to send to any server"

Matthew (@​matthew:matrix.org)
erm, how very strange
can you pastebin more context from the logs somewhere?
or send it to me 1:1

rgh
Matthew (@​matthew:matrix.org): Yeah, I can. Give me a couple of minutes.
@​matthew:matrix.org: Here's a gist: https://gist.github.com/filterfish/8d7ff314fe50a53097f9

rgh
I've added as much info as I can think of. Hopefully it's clear what each bit is!

-- @ara4n

@matrixbot
Copy link
Member Author

  1. Create a room, exit it, try to rejoin and you get "interneal server error" in Vector (shouldn't be a better way to indicate non-existing room?)
  2. Try to recreate the room and you get "M_UNKNOWN: Room alias already taken".

One can probably live with 1, but 2 is really annoying.

-- Alien A

@matrixbot matrixbot changed the title if all users leave a room, the room should not wink out of existence. if all users leave a room, the room should not wink out of existence. (SPEC-211) Oct 31, 2016
@matrixbot matrixbot added the spec-bug Something which is in the spec, but is wrong label Nov 7, 2016
@richvdh richvdh added feature Suggestion for a significant extension which needs considerable consideration and removed spec-bug Something which is in the spec, but is wrong labels Apr 20, 2017
@ara4n
Copy link
Member

ara4n commented Apr 20, 2017

@huguesdk
Copy link

We’re currently searching for an alternative to XMPP at our company, and I suggested Matrix as I’m using it personally and I am very satisfied.

A sysadmin from our company launched a Synapse test server and asked me to join. We chatted a little with the default client provided by Synapse (Matrix Console Web). He did several leave/rejoin tests and was at first happy to see that the history was preserved. Then he kicked me out of the room and left the room himself. We were now unable to rejoin the room or to recreate the room with the same alias. He was directly put off because of this and stopped considering Matrix as a possible solution. :(

For invite-only rooms, it makes sense of course, but this is also the case for public rooms.

Even though users should normally not leave a room if they want to keep its history (they stay in the room even when not connected), I think this issue is a serious barrier for people testing out Synapse like this. In this test case, it is a private, non-federated server, so it would be logical that it keeps the room alive if it is public. Deleting the room (and all of its history) should require an additional step.

@ara4n
Copy link
Member

ara4n commented Jan 6, 2019

@huguesdk totally agreed. it's embarrassing that it's taken us this long to fix; thank you for the datapoint. matrix-org/matrix-spec-proposals#1777 is the proposed solution here.

@AndrewKvalheim
Copy link

Try to recreate the room and you get "M_UNKNOWN: Room alias already taken".

Deleting the empty room seems to have allowed me to reuse its alias. It can be tricky to identify the correct room though since the rooms list no longer shows the alias.

@diego-treitos
Copy link

Try to recreate the room and you get "M_UNKNOWN: Room alias already taken".

Deleting the empty room seems to have allowed me to reuse its alias. It can be tricky to identify the correct room though since the rooms list no longer shows the alias.

This only works if you are the admin of the server.

I lost access to a public room I created in matrix.org. I was the admin and now I cannot join and I cannot recreate it, so I guess that the room alias, the one that I published to some contacts it is lost and unusable.

This is truly quite bad because:

  1. Nobody expects it to behave this way
  2. Once it happens, you can spend days wondering what happened and where to get information about it
  3. Once you know it was an intempted behavior, you consider stop using matrix.

@t3chguy
Copy link
Member

t3chguy commented Aug 7, 2021

so I guess that the room alias, the one that I published to some contacts it is lost and unusable.

Not quite, you should still be able to remove that alias from pointing at your old room, there'd just be no UI in Element Web to do such (unless you count finding it in the room directory and shift clicking it, the easter egg method, as UI)

@diego-treitos
Copy link

diego-treitos commented Aug 7, 2021

so I guess that the room alias, the one that I published to some contacts it is lost and unusable.

Not quite, you should still be able to remove that alias from pointing at your old room, there'd just be no UI in Element Web to do such (unless you count finding it in the room directory and shift clicking it, the easter egg method, as UI)

Thank you for your reply. The room does not appear anymore in the public list. It does not appear anywhere. But if I try to create a room with the same ID, it won't let me, saying that the room already exists.

I only see the "delete room" method in the Admin API. So you say that I can do it using the API as a regular user? (quite user friendly, on the other hand)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-Client-Server Issues affecting the CS API feature Suggestion for a significant extension which needs considerable consideration
Projects
None yet
Development

No branches or pull requests

8 participants