7 comments

[ 5.4 ms ] story [ 19.5 ms ] thread
Extremely helpful. I've been eagerly awaiting v0.5 but have been holding off on deploying it until I had more confidence that it would work and be stable. Reading this, I'm definitely glad that I waited.
No need for all the “I love Litestream” disclaimers, these are serious issues that speak for themselves.
I've been trying to get a headstart on the lightweight read replicas for my Go SQLite driver and, yes, there are issues.

https://fly.io/blog/litestream-revamped/#lightweight-read-re...

But the concept is really cool, and it's workable. I already have a version that mostly works.

https://github.com/ncruces/go-sqlite3/tree/litestream/litest...

With Litestream v0.5.0 doing the replication, you'll get some transient read failures that really shouldn't happen.

If you build Litestream from head (or wait for v0.5.1), that'll be fixed. You'll still have similar issues around the time of a snapshot, if you keep only one snapshot.

Other than that, I'm pretty confident it just works. But the performance probably sucks. I need to add a layer of caching. But that's it.

Thanks for the heads up. I encountered similar issues so staying on 0.3.13 for now. But excited to give 0.5.x a go once the dust settles.

Livestream, sqlite and caddy are incredibly at making single box/vps ops a breeze.

> One of the benefits of Litestream 0.5.0 is that there’s now an official litestream Docker image. All of my previous Docker containers required a lot of boilerplate to download the correct version of Litestream and make it available in my container, but now it reduces to a single Dockerfile line

There’s been an official Litestream container image for over 3 years at this point (since version 0.3.4, it’s at the same Docker Hub as 0.5.0).