I’ve been trying to upgrade from 10.10 to 10.11 for a while now, as the Android TV app keeps nagging me, and every attempt ended with impossibly long library scan times.

After some thorough investigation, it appeared that a Home Videos type collection causes unending scan (yet to be solved), but also that Jellyfin does a lot of writes to the config directory (either database or metadata or both). Mine’s on spinning media part of a ZFS pool. I tried a few performance tuning options, such as testing the config dir with recordsize (similar to block size) of 4K, 8K, 64K, 128K and library scans fell from 30-40 minutes down to 8-13min with 4K-64K. The ZFS tuning wiki suggest 64K recordsize with LZ4 compression for SQLite workloads such as Jellyfin. That seems to work as well as 4K and 8K but likely is faster when reading thumbnails and such.

Note that upgrading to 12-rc3, which is supposed to speed up library scans did not improve scan times for me. Optimizing config/database write speed did. I cross-checked the culprit by experimenting with moving the config dir to NVMe and RAM. Both of those got the scan times down to 8-9 minutes compared to the optimized spinning media’s 12-13.

So if you had upgraded (or about to) to 10.11 your library scans are (about to get) dog slow and your Jellyfin’s config dir resides on spinning media, optimize its write performance for SQLite.

  • DecronymB
    link
    fedilink
    English
    arrow-up
    2
    ·
    edit-2
    24 minutes ago

    Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I’ve seen in this thread:

    Fewer Letters More Letters
    DNS Domain Name Service/System
    NAT Network Address Translation
    Plex Brand of media server package
    VPN Virtual Private Network

    [Thread #66 for this comm, first seen 31st Jul 2026, 00:40] [FAQ] [Full list] [Contact] [Source code]

  • czl@lemmy.dbzer0.com
    link
    fedilink
    English
    arrow-up
    87
    ·
    11 hours ago

    Isn’t it ironic that you post this meme along with complex instructions to fixing a problem in jellyfin?

    • Avid Amoeba@lemmy.caOP
      link
      fedilink
      English
      arrow-up
      30
      ·
      edit-2
      9 hours ago

      With great power come great … uuh … :D

      Also the meme is just bait so you read abt the problem and see if you need to solve it for your setup.

      • Kairos@lemmy.today
        link
        fedilink
        English
        arrow-up
        40
        ·
        10 hours ago

        It’s a nonsensical statement. Jellyfin is accessed through a website. You’re responsible for routing to it.

        • fuckwit_mcbumcrumble@lemmy.dbzer0.com
          link
          fedilink
          English
          arrow-up
          14
          ·
          10 hours ago

          It’s a very sensical statement. I’m not exposing a whole ass website on my own network just for remote viewing. With plex you don’t need to do that.

          • black0ut@pawb.social
            link
            fedilink
            English
            arrow-up
            21
            ·
            9 hours ago

            You don’t need to do that with jellyfin either. It includes the website for convenience, but you can just disable it or completely remove it and have just the server.

            • fuckwit_mcbumcrumble@lemmy.dbzer0.com
              link
              fedilink
              English
              arrow-up
              5
              ·
              7 hours ago

              How do you communicate with the server outside of your network? You’d still need to expose those ports directly to the internet right? (excluding VPNs/reverse proxy etc)

              • KairuByte@lemmy.dbzer0.com
                link
                fedilink
                English
                arrow-up
                1
                ·
                1 hour ago

                I mean, if you put restrictions on the requirement sure. At that point it kinda becomes a loaded question though.

                If you remove the restriction, just use a cloudflare tunnel.

              • ragebutt@lemmy.dbzer0.com
                link
                fedilink
                English
                arrow-up
                19
                ·
                10 hours ago

                Outside the network you still have to open your server to allow plex cloud to access it and potentially tunnel your traffic through plex.tv if a direct connection doesn’t work. This happens automatically but it does happen

                With Jellyfin you just have to supply your own relay, like Tailscale or wireguard, which does require more setup but is completely free, means that you can stop your media traffic from being funneled through services that harvest your data (which plex absolutely does), and doesn’t go to shit if plex.tv goes down

                • chisel@piefed.social
                  link
                  fedilink
                  English
                  arrow-up
                  6
                  ·
                  9 hours ago

                  You can do the exact same thing with Plex, you just don’t need to since automatic remote streaming is built in. In fact, the article’s solution is literally Tailscale.

                  You can also bypass plex authentication on any ip range you choose, so if you add your local network and plex’s auth service goes down, it’s no big deal.

                • fuckwit_mcbumcrumble@lemmy.dbzer0.com
                  link
                  fedilink
                  English
                  arrow-up
                  2
                  ·
                  edit-2
                  7 hours ago

                  This happens automatically but it does happen

                  And that’s the key, it happens automatically and it just works. With jellyfin you have to expose the web server to the internet, or point an app to something else exposed on the internet. With plex you don’t. If you don’t want to (or can’t) a direct connection from your server to their servers, then their servers to your device is established. No VPNs, no reverse proxies, no port forwarding, nothing exposed to the rest of the internet.

                  What I’m praying for is for Jellyfin to add a tailscale like direct peer to peer system. They can skip the backup funneling traffic through their servers. But just have something that coordinates a direct connection with just basic NAT.

              • abcdqfr@lemmy.world
                link
                fedilink
                English
                arrow-up
                4
                ·
                10 hours ago

                Let’scrypt and port forward. Sprinkle on some free ddns with a sync script/job to keep ddns pointing to your real public IP. Can even roll in some headscale if you’re feeling adventurous

                • MaggiWuerze@feddit.org
                  link
                  fedilink
                  English
                  arrow-up
                  2
                  ·
                  8 hours ago

                  Feeling adventurous is exactly what you need if you decide to expose Jellyfin to the Internet (a reverse proxy adds nothing to security)

        • Victor@lemmy.world
          link
          fedilink
          English
          arrow-up
          4
          ·
          10 hours ago

          through a website

          I access it via the app on my LG TV with WebOS, so not technically a website but yeah, over the network via an API at least 👍

  • zr0@lemmy.dbzer0.com
    link
    fedilink
    English
    arrow-up
    5
    ·
    7 hours ago

    How large is the database? Because there is a way to fully load SQLite into memory, which would speed everything up drastically for a scan. At the end of the scan, you could just write back everything to the disk, then it is just one blob of sequential write, which is fast enough on spinning rust.