github new-usemame/Calibre-Web-NextGen v4.0.109
v4.0.109 — Polling watcher no longer thrashes HDDs on Docker Desktop

3 hours ago

What's new

docker pull ghcr.io/new-usemame/calibre-web-nextgen:v4.0.109

(or :latest)

Polling watcher no longer thrashes HDDs on Docker Desktop

If you run Calibre-Web-NextGen on Docker Desktop (Windows or macOS) with a large ingest folder on a spinning HDD, you've probably noticed constant drive activity even when nothing's happening. Inotify doesn't work for bind-mounted host directories on those platforms, so the watcher falls back to polling — and the fallback was walking the entire ingest tree every 5 seconds, stat'ing every file.

Now there's a cheap directory-mtime gate: if nothing has been added or removed since the last poll, the watcher skips the walk entirely. On a 3000-book HDD library that means going from thousands of stat calls per poll down to a handful. New files still get picked up on the next poll after they land.

Zero behavior change if you're on a system where inotify works.

Credits

Originally reported on the upstream tracker at crocodilestick/Calibre-Web-Automated#1360. Reproduced in this build before fixing; verified the gate doesn't break new-file detection.

Don't miss a new Calibre-Web-NextGen release

NewReleases is sending notifications on new releases.