This desperate toot by @prismo@mastodon.social has hit my timeline over the week-end:
I'm super sad to announce that in cause of bad server configuration, entire production database of prismo.news has been accidentally wiped out.
Without option to restore it. You can't imagine how angry i am right now but i assure you i'm gonna write an extended post about that incident with description of everything that happened and lessons learned.
I'm super sorry for your loss, i hope fediverse will forgive me one day.
@mxb@fediverse.blog has then published a detailed explanation of what has happened.
Beside good resolutions (yes, I should do more backups) this made me wonder if (and how) a federation such as the Fediverse could be more robust against this type of failure.
In the Fediverse where content is duplicated by design it doesn't seem so difficult to recover pieces that are stored somewhere after a failure.
Of course, the devil is in the detail and there would be a number of such details to fix:
- can you trust the federation when it would give you pieces back if activities are not signed ?
- what about stuff which aren't activities (such as the list of account I am following) ? should client applications be involved in keeping copies of these informations ?
- ...
However I think that a federation should be more than the sum of its members and that seems to be a nice step forward.
The next step being to consider how the federation could preserve content when a node disappears permanently...
Comments
April 28, 2019 07:43
Interesting. But I'm not so sure that the fediverse does really duplicate stuff: as far as I know, content is kept on the original node, that's at least how it works I think for peertube. But to be honest, I'm not completely sure about what is duplicated or not; may be Mastodon does indeed duplicate toots that appear in the "whole fediverse timeline" ?? There is also the question that when someone wants to remove one of his post, then there is a query that is sent to all nodes that federates to ask them to also remove it; so there should be some duplication.
However, I'm convinced that we should not entirely rely on the actual features of the fediverse for preserving stuff: I do think GIT is the tool to achieve this, and when considering the fediverse, it means deploying some kind of federated git, say based on gitea, which would indeed version, and duplicate on demand users' texts, such as the blogs on plume :-)
Minor detail: the "detailed explanation" link in your post is broken ;-)