Is it possible or does it present difficulties with federation?

I’m asking because today Vlemmy seems dead and people are speculating it has something to do with losing the domain name. So I want to know if there is a possibility the same server could come up again under a different domain but keeping the same accounts and content stored or if they will need to set up a new server and thus it’s just better to move on to another instance.

  • MentalEdge@sopuli.xyz
    link
    fedilink
    arrow-up
    17
    ·
    edit-2
    1 year ago

    Not sure…

    With matrix, which is also federated, this cannot be done. In any way. At all.

    You could attempt editing the database directly, but this is a bad, superbad, idea.

    This is because the domain of the original server was part of the usernames and chat room names, and all of that would be in the database, for the server, and other servers, to know what goes together with what.

    If you change your domain, your server wont know who the users logging in with the new domain are. Other servers wont know who they are, or what chat rooms they should be in.

    I imagine it’s much the same with the fediverse. Changing your domain would break everything, where the databases are concerned.

    And even if you could edit your database to swap out all mentions of the old domain, you could never do so for all other servers out there with federation database entries for your old domain.

    • Kissaki@feddit.de
      link
      fedilink
      English
      arrow-up
      5
      ·
      edit-2
      1 year ago

      You’re saying matrix stores channel name as name + instance even for local channels? That it’s not using standard practice of denormalizing data?

      What you see in the frontend or API isn’t necessarily how it’s stored.

      • MentalEdge@sopuli.xyz
        link
        fedilink
        English
        arrow-up
        5
        ·
        edit-2
        1 year ago

        There is no such thing as a local matrix channel. Just one which is set to not allow off-instance accounts access.

        The reason the domain has to be appended to everything in federated systems, is that its the only way to make sure you don’t get name collision when federating. So that when servers talk to each other about stuff, everything has a unique identifier.

        You can have dibs on your domain. You cannot have dibs on just random data labels. But if you do random label+domain, you can be sure no-one else on any other server can use that exact same id.

        Also I do know.

        I’ve attempted the changing of a matrix server’s domain, without a database purge. It was a waste of time, the instance was only a day old anyway, so I just started over in the end.

        • Em Adespoton@lemmy.ca
          link
          fedilink
          arrow-up
          3
          ·
          1 year ago

          That seems somewhat silly.

          With email servers, local messages are passed without the domain. Same with HTML. It’s only when “federating” to other servers that a domain is required. I can’t really see why ActivityPub would be any different in what it requires.

          If Matrix is requiring the domain, that’s likely to do with encryption and validation, which has always been an issue with Internet 1.0 services. But it seems to me it should still be possible, just not done with current server implementations.

        • Kissaki@feddit.de
          link
          fedilink
          English
          arrow-up
          1
          arrow-down
          1
          ·
          1 year ago

          You mean local matrix channels don’t exist in storage schema, right? Not that they don’t exist or make sense conceptually?

          Because a channel is always hosted on one owning instance.

      • dan@lemm.ee
        link
        fedilink
        English
        arrow-up
        3
        ·
        edit-2
        1 year ago

        *Normalising

        Denormalising is the other way around, ie accepting duplicated or less than optimally organised data for some other reason (eg for performance or to reduce complexity for your filthy human brain - but usually performance)

        Sorry I know that’s a very minor nitpick.

      • deejay4am@lemmy.world
        link
        fedilink
        arrow-up
        1
        ·
        1 year ago

        Data normalization has nothing to do with it.

        All Matrix channels are a channel name and a domain. That’s a unique identifier. You need unique identifiers. Matrix is not designed to exist in an vacuum (even if you can make it work that way). Locality is dictated by policy not by the data model.

  • henfredemars@infosec.pub
    link
    fedilink
    English
    arrow-up
    5
    arrow-down
    2
    ·
    edit-2
    1 year ago

    Absolutely. It should be trivially easy for the owner to get a new name and point it at the server if it still exists and is working. However, I understand that we know very few facts about the situation.

    Don’t let that discourage you from having accounts on other instances. One shouldn’t get too tied to a specific one IMHO.

    EDIT: Should be. Not sure what happens with usernames.

    • MentalEdge@sopuli.xyz
      link
      fedilink
      English
      arrow-up
      5
      ·
      edit-2
      1 year ago

      I’m not so sure.

      The reason the domain is part of our usernames, is so that there can’t be two users with exactly the same name.

      If a server could change its domain name after initial setup, that would break.

        • MentalEdge@sopuli.xyz
          link
          fedilink
          English
          arrow-up
          2
          ·
          1 year ago

          Yes they do. At least with matrix, shit goes SUPER WRONG with the local database if you try to change your domain.

          To the point that the only way to really change it is to purge the whole thing and start over.

      • henfredemars@infosec.pub
        link
        fedilink
        English
        arrow-up
        2
        ·
        edit-2
        1 year ago

        I never thought of that. I’m not so sure how the net would take it. I don’t know the code closely enough to answer that question. I’ll edit my answer to reflect that.

    • elkaki@lemmy.dbzer0.comOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      1 year ago

      I take it as it doesnt mess with federation? So people that subscribed to communities there would remain subscribed? I had thought that the path changing would mess things up.

      As for having accounts on multiple instances, its just not my style really, I like having a single instance to focus entirely (I interact with few communities so making multiple accounts is pointless) and I was on board with the idea of the admin of not defederating unless absolutely necessary, as I prefer to be the one blocking communities and instances rather than another person. As I said I liked the owner and now I will probably have to investigate for a few hours again to find another instance, I dont really care to change instances if one goes down, but I do like having only one or at max two accounts any single time, it is a bummer because I was having conversations on DM’s and I dont remember the other person.

      • °˖✧ ipha ✧˖°@lemmy.world
        link
        fedilink
        English
        arrow-up
        3
        ·
        1 year ago

        It will absolutely mess with federation. Accounts on the instance that moved should be relevantly unaffected, but anyone from external instances subscribed to local communities will need to subscribe to the new domain.

  • Kissaki@feddit.de
    link
    fedilink
    English
    arrow-up
    2
    ·
    1 year ago

    I don’t have specific product knowledge but if they have the data it should be trivial to start the server under a different name.

    Links will of course be broken.

    Other instances should notice the old instance gone and discard data as appropriate.

    Other instances will get to know the new instance like any other new instance.