AudioSilo 2.6: less database work, native SQLite on Linux
Feature · 2 min · 6 chapters
Server 2.6 reuses prepared database queries, and its Docker image and Linux downloads use native SQLite. What changes for an admin, and how to choose the fallback.
Published , updated Checked against Server 2.6.0 on
AudioSilo 2.6: less database work, native SQLite on Linux
2:00 minutes to readServer 2.6.0 does less repeated database work, and its Docker image and Linux downloads switch to native SQLite. There’s no new service to install and no database to convert. Back up, then update as usual.
Reuse work the database already did
Before SQLite runs a query, it parses it and plans how to answer it. AudioSilo now keeps those prepared queries on each connection and reuses them, with fresh values each time. Nothing old is cached as an answer.
This works with either database engine, including on macOS and Windows. You don’t need to change your library or rematch books.
Linux uses native SQLite
| Build | Engine |
|---|---|
| Docker image | Native SQLite |
| Linux binaries (amd64 and arm64) | Native SQLite |
| macOS and Windows binaries | Pure-Go (as before) |
Both engines use the same database file format. There’s no separate SQLite container.
- Docker: keep your existing data mount.
- Linux binary: replace the server program and keep its data folder.
Back up before upgrading shows how to make a consistent copy first.
Check Docker before updating
The new image needs Docker 20.10.10 or newer. Run docker version on the host to check.
An older Docker can block a system call the new binary needs, and the container stops at startup. Update Docker first if yours is older. The Docker quick start lists the requirement, and Troubleshooting describes the failure.
The pure-Go fallback is still there
Linux builds keep the previous engine too. To choose it, add this to the server’s Compose service and recreate the container:
environment:
AUDIOSILO_SQLITE: modernc
On a native Linux install, set AUDIOSILO_SQLITE=modernc in the server’s environment and restart it.
The engine is chosen at startup. It uses the same database, with no export or import. The startup log names the engine in its database: sqlite line, which helps when reporting a problem. The developer docs describe the engine setting.
More
- Install the native binary covers updating without Docker.
- Faster first scans covers the separate file-reading changes from 2.5.1.
- AudioSilo 2.6 covers the rest of the release.
Changes to this post
-
Rewritten to be shorter and easier to read. No facts changed.
-
First published.
Up next
- 1 AudioSilo Server 2.6: upcoming releases, Sync v2, read-along and Audible Release · 6 min
- 2 How to back up a self-hosted app before you upgrade it Guide · 3 min
- 3 First scans many times faster in AudioSilo Server 2.5.1 Feature · 3 min