Nothing4You

  • 0 Posts
  • 109 Comments
Joined 1 year ago
cake
Cake day: March 24th, 2024

help-circle












  • Then I generated sql statements to remove duplicate posts that had higher ids than the other posts theyre a duplicate of

    i assume this was done after updating the other tables referencing this table, such as comments, votes, saved posts, as previously discussed on matrix?

    while it may be omitted here for simplicity, it can be dangerous to not mention that for others that might find this in the future if they experience index corruptions on their own if they don’t fix all references, as that would result in data loss.



  • Nothing4You
    cake
    toLemmy Support@lemmy.mlUser restrictions
    link
    fedilink
    English
    arrow-up
    2
    ·
    2 months ago

    you can only set a community to only allow local users, not prevent users from interacting with remote communities.

    you’d have to either disable federation or set up a script to automatically remove all remote communities, but that also won’t be a per user thing, just a per instance thing.


  • unfortunately restarting fediverse software on the same domain doesn’t really work well with all other software and without local fixes.

    activitypub uses cryptography for authentication and there isn’t a standard for changing keys / reusing identities, so different software will deal with this in different ways.

    reusing URLs for posts and comments is even more problematic and will definitely cause broken federation with other lemmy instances as well.

    if it was decided to recreate an instance from scratch in the future that’d best be done on a new (sub-)domain.

    if the database was saved it should work just fine to rebuild the instance from that, it’ll probably just take a few days to restart federation everywhere.

    I’m not suggesting either way, just providing some technical background.


  • You basically can’t if your instance was set up before 0.19.4, as there won’t be any association between users and uploads for older uploads. You also can’t do this without breaking thumbnails everywhere unfortunately.

    The latest Lemmy version has a fix where thumbnails now are actually stored at a reasonable resolution for thumbnails, but old thumbnails may be quite large, and this does not retroactively shrink older thumbnails.

    It’s possible to pull image aliases from the DB and ignore them when iterating over aliases within pict-rs, but you these will only be manual uploads, not automatic uploads like generated thumbnails. For posts by local users, deleting thumbnails will also end up breaking them for 0.19.5+ instances, as they should reuse the original thumbnail url.


  • fwiw, the estimate number only states the max amount of activities behind. the real number can be lower, but not higher (unless sending is entirely broken on the instance being checked).

    each activity being sent has a numeric id in the database. lemmy has an api that returns the id of the last activity that was either successfully sent to an instance or skipped when it didn’t need to get sent (e.g. pm to a user on a different instance). there may also be holes in activity ids due to postgres implementation details for auto-incrementing sequence ids.

    for determining the highest known activity id to compare it with the last activity id sent to a specific instance, you can just go through the successfully sent ids for all instances in the response and find the highest number across them all. then you can calculate the difference between the highest number and the number for the specific instance.

    depending on the lemmy version and timing of the action, it can take up to 30 seconds for the activity queue to deal with new activities, so on a somewhat busy instance the delta is likely rarely going to be zero.