• 0 Posts
  • 29 Comments
Joined 5 months ago
cake
Cake day: March 24th, 2024

help-circle

  • it seems to have become more frequent recently.

    i’ve been experiencing the same on firefox and i’ve also heard other people report the same on firefox, which happened around the time of the firefox 129 release. i didn’t see anything noteworthy in the release notes though that’d explain this. it seems like it might be related to enhanced tracking protection and cookie isolation.





  • cleaning up dead communities isn’t a great experience as it is today.

    admins could purge communities, but this can cause unexpected breakages with other activitypub software that is more strict about cryptographic verification, as purging a community erases all information about it from the local instance, including the cryptographic private key. purging a community also only removes it on the local instance, so other instances would still have a cached (although possibly marked as deleted) copy of it. this would be the only method that frees up the name to allow creating a new community under the same name later on. locally this would also remove all posts and comments associated in that community, but other instances may think that they have users subscribed to the community and may still have posts and comments in there. this also means if a new community is created with the same name again, the local instance will still not know about older posts, but users on other instances might see them still, and the local moderator might be unable to interact with them at all, e.g. to potentially remove old problematic content.

    the next option is removing a community as (instance-)moderator action. this will only mark the community as removed without further impact. regular users won’t be able to access the community on the local or any other instance anymore, but its contents are preserved in case it gets restored at a later point in time. the name is not released and there isn’t even an error message shown when trying to create a new community with the same name.

    another option could be to “take over” the community and delete it, which is the act of the top community mod deleting the community (not a moderation action). in this case only the same top community moderator can restore it. this behaves mostly the same as removing it.

    none of these options are good to use. imo purging should be avoided in any case, and the other options both require admin intervention to release a community later on and have no user feedback in lemmy-ui at this time, at least on 0.19.5.

    for communities entirely without posts it is probably ok to just remove them and restore and transfer them if someone requests them. for communities with content the next best thing might be locking the community, potentially locking all posts if it’s just a small number, to prevent unmoderated new content in that community, and put up a pinned post asking people to reach out if they want to take over the community. otherwise, if the community was removed or deleted, all the posts and comments within them would also be taken down with the community.






  • Posts have a canonical reference to the originating instance, e.g. this post contains <link data-inferno-helmet="true" rel="canonical" href="https://aussie.zone/post/11962005"> for me. This is a hint for search engines to ignore this post and instead index the original one instead. The same also already works for communities, this community containing <link data-inferno-helmet="true" rel="canonical" href="https://aussie.zone/c/meta">. Not sure if DDG is just ignoring this or there’s another reason for it to show up multiple times.










  • lemmy’s current federation implementation works with a sending queue, so it stores a list of activities to be sent in its database. there is a worker running for each linked instance checking if an activity should be sent to that instance, and if it should, then send it. due to how this is currently implemented, this is always only sending a single activity at a time, waiting for this activity to be successfully sent (or rejected), then sending the next one.

    an activity is any federation message when an instance informs another instance about something happening. this includes posts, comments, votes, reports, private messages, moderation actions, and a few others.

    let’s assume an activity is generated on lemmy.world every second. now every second this worker will send this activity from helsinki to sydney and wait for the response, then wait for the next activity to be available. to simplify things, i’ll skip processing time in this example and just work with raw latency, based on the number you provided. now lemmy.world has to send an activity to sydney. this takes approximately 160ms. aussie.zone immediately responds, which takes 160ms for the response to get back to helsinki. in sum this means the entire process took 320ms. as long as only one activity is generated per second, this is easy to keep up with. still assuming there is no other time needed for any processing, this means about 3.125 activities can be transmitted from lemmy.world to aussie.zone on average.

    the real activity generation rate on lemmy.world is quite a bit higher than 3.125 activities per second, and in reality there are also other things that take up some time during this process. over the last 7 days, lemmy.world had an average activity generation rate of about 5.45 activities per second. it is important to note here that not all activities generated on an instance will be sent to all other linked instance, so this isn’t a reliable number of how many activities are actually supposed to be sent to aussie.zone every second, rather an upper limit. for example, for content in a community, lemmy will only send these activities to other instances that have at least one subscriber on the remote instance. although only a fraction of the activities, private messages are another example of an activity that is only sent to a single linked instance.

    to answer the original question: the week of delay is simply built up over time, as the amount of lag just keeps growing.

    additionally, lemmy also discards its queued activities that are older than a week once a week, so if you go over 7 days of lag for too long you will start completely missing activities that were over the limit. as previously explained, this can be any kind of federated content. it can be posts, comments, votes, which are usually not that important, but it can also affect private messages, which are then just lost without the sender ever knowing.