-
-
Notifications
You must be signed in to change notification settings - Fork 97
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
We need a way to be able to expire data from a HS. (SPEC-141) #35
Comments
Jira watchers: @ara4n |
Links exported from Jira: relates to SPEC-224 |
The "No longer store this room" use case is now important given the history of rooms we have left are now returned to clients - we need a way to tell the server "no, really, leave and forget this conversation forever please". -- @ara4n |
Bumping up the priority on this, as it's causing large homeserver admins (e.g. disroot.org) to consider discontinuing the service as their DB keeps growing and reaping it is hard. In practice, i think what's needed is a way for ops to specify the desired history retention scheme for a given room - and for server admins to specify a maximum history retention in general. (synapse bug matrix-org/synapse#1480) |
I like to request a warning of some sort for this feature, so people can export their chatlogs before the culling. |
This is solved by matrix-org/matrix-spec-proposals#1763, which is implemented in matrix-org/synapse#5815. This is currently being ported into mainline synapse. |
Does messages removed fully with all metadata (so no one record kept in database about that message was exist before), or only message content? |
Any progress on this? This is a big win for some for my usecases. |
It has been implemented upstream and can be set in the server config: https://github.com/matrix-org/synapse/blob/develop/docs/message_retention_policies.md |
I don't think Synapse is matrix-doc upstream and it's not the only server implementation either. |
As far as I know, this would be a custom development job, I don't see the entire Matrix ecosystem rolling this out. The closest you can get is with Synapse, you can configure server-wide retention policies: Actually, I'm seeing retention policy set on a per-room basis here: But it's not something you'd set from within Element. I think you'd need command line access to the server. |
I saw that the reason it is a server-specific option is because of some issues with possible database corruption. Has anyone looked into this and tried to fix it? Why is it still an issue years after it was implemented in synapse? |
Can you give more details about the alleged database corruption? I think the general challenge here is what happens if you have two entirely separate Matrix servers sharing the same room(s) and they don't "agree" on how long to retain messages. If you're in a closed ecosystem (e.g. no federation) this is probably less of an issue. |
matrix-org/synapse#13476 is the corruption issue. |
Interesting. I wonder if that's where having multiple matrix servers meshed together would save from that corruption issue, or does it make it worse? |
This could be implementation-specific, or via a standard admin API or per-room state configuration.
Eitherway, we need a way to tell HSes to:
(Imported from https://matrix.org/jira/browse/SPEC-141)
(Reported by @ara4n)
The text was updated successfully, but these errors were encountered: