Follow-up from https://lemmy.dbzer0.com/post/15792108

I’ve spent a ton of hours trying to troubleshoot why lemmy.dbzer0.com is falling behind lemmy.world in federation. We have a good idea where it’s going wrong, but we have no idea why.

The problem is that once I receive an apub sync from l.w and send the request to the lemmy backend, it takes about 1 second to process an apub sync, which is way too long (is should typically be < 100ms).

We had a look at the DB and it was somewhat slow due to syncing commits to disk. OK we disabled that, and now it’s much faster (and less safe but whatever) but the sync times have not improved at all.

I’ve also made a lot of tests to ensure the problem is not coming from my loadbalancers and I am certain I’ve removed them from the equation. The issue is somewhere within the lemmy docker stuff and/or the postgresql DB.

Unfortunately I’m relying solely on other admins help on matrix, and at this point I’m being asked to recompile lemmy from scratch or deploy my own docker container with more debug instructions. Neither of these is within my skillset, so I’m struggling to make progress on this.

In the meantime we’re falling further and further behind in the lemmy.world federation queue, (along with a lot of other instances). To clarify, the problem is not lemmy.world. It takes my instance the same time to receive apub syncs from every other server. It’s just that the other servers don’t have as much traffic so 1/s is enough to keep up. But lemmy.world has so much constant changes, 1/s is not nearly fast enough.

I’m continuing to dig on this as much as I can. But I won’t lie that I could use some help.

I’ll keep you all updated in this thread.

  • db0OPM
    link
    fedilink
    103
    edit-2
    10 months ago

    Final Update: Problem has been resolved by migrating my lemmy backend. We are currently catching up to lemmy.world, which should probably take all the next day. But the “distance” is reducing by hundreds of syncs per minute.

    I will write a post-mortem soon

  • db0OPM
    link
    fedilink
    3510 months ago

    Update: Most likely culprit here is the distance between my backend and my DB. I am now planning a migration. I’ll keep you posted

  • db0OPM
    link
    fedilink
    2810 months ago

    Update: No appreciable change. I’ve now recompiled lemmy from scratch and added lemmy.world incoming apub federation to its own backend. Somehow that made the requests from LW 5x slower. This makes no sense…

    I’ve tried tweaking the DB connection pool, with no appreciable effect to performance.

    • @agent_flounder
      link
      English
      610 months ago

      Maybe this is a dumb question but is there any indication the server is cpu-, memory-, disk-, or network-bound?

  • @[email protected]
    link
    fedilink
    English
    19
    edit-2
    10 months ago

    I can help with docker and some linux stuff mainly, just PM me. I could also offer my instance (of 2 active users) for testing if needed.

      • db0OPM
        link
        fedilink
        1110 months ago

        Thanks peeps. I already figured out the docker stuff. What I need is help debugging lemmy internals

        • @[email protected]
          link
          fedilink
          410 months ago

          No help from Lemmy devs ? Sound they would be the only hope. Looks something deep in lemmy, is there a bug report open in their git ? sharing this and solving will help other instances in the future.

  • db0OPM
    link
    fedilink
    1510 months ago

    Update: I have to take pict-rs down while I migrate

  • @[email protected]
    link
    fedilink
    610 months ago

    This sounds so very complicated, I wish I had the expertise needed to help you out. I hope a fix can come soon.

    Thank you for all the time you’re dedicating towards this issue and for keeping us updated. You’re the best!