• alyaza [they/she]@beehaw.orgM
    link
    fedilink
    arrow-up
    14
    ·
    8 months ago

    I don’t follow the development super closely so I don’t know if those issues were resolved or not. I just remember a lot of discussion on it when I was first on Lemmy on a different instance.

    not that i’m aware of, and fixing a database schema once it’s already in place tends to be a clusterfuck so i’m very skeptical it will get better any time soon

    • Skull giver@popplesburger.hilciferous.nl
      link
      fedilink
      English
      arrow-up
      3
      ·
      8 months ago

      Deletions shouldn’t be difficult because of the schema. For instance, this query: select display_name, ('https://your.lemmy.host/pictrs/image/' || pictrs_alias) as image_url, pictrs_delete_token from image_upload iu inner join local_user u on u.id = iu.local_user_id inner join person p on p.id = u.person_id; will list all media, with the display name of the user who uploaded them, and the token that can be used to delete the image. Obviously, this needs a where u.id = ? parameter to only expose the list to the right user, but adding a “delete old media” page really shouldn’t be that hard. It’ll require time, though, and with one of the two devs taking parental leave soon, I don’t think there’s that much dev time for a while.

      The pieces are almost in place, they just need an API endpoint and some UI work.

      • PenguinCoder@beehaw.org
        link
        fedilink
        English
        arrow-up
        8
        ·
        8 months ago

        That query by itself in a vacuum is fine. Combined with many other triggers on the DB, and then federating that out before actually deleting from the local DB… well that is what creates all sorts of headaches.

        • Skull giver@popplesburger.hilciferous.nl
          link
          fedilink
          arrow-up
          3
          ·
          8 months ago

          Images aren’t federated through ActivityPub so I don’t really see how deleting media is supposed to work. Best you can do is delete media for deleted posts.

          The API call for deleting media already exists. It’s actually used in the comment compose screen (you can click the “click here to delete” popup after uploading media). So all you need to do with this info is send a POST request to the existing API endpoint.

          I don’t think the Lemmy database uses triggers on media uploads at all, I don’t think Diesel support those well?

          • Lionir [he/him]@beehaw.org
            link
            fedilink
            arrow-up
            2
            ·
            8 months ago

            Images aren’t federated through ActivityPub so I don’t really see how deleting media is supposed to work.

            Yes, they are. Every instance downloads everyone’s images for a “cached” version that is currently never used. This is what makes this problem especially insidious and straight up dangerous in cases like CSAM.