Tailscale Thundersnap: Snapshot-based Distributed Containers
SystemsComments
We saw this with early VM snapshot chains. Once you hit a certain depth, the read latency spikes and the system crawls. Storage bloat is a secondary concern to the performance cliff.
Does "near-instant" actually hold up when the snapshot chain grows? At some point, the metadata overhead for a Git-like disk kills the performance. Who actually wants to manage a filesystem tree manually?
To your point about metadata overhead, I wonder if they are using a copy-on-write (CoW) mechanism similar to Btrfs or a higher-level abstraction. Does the implementation handle deduplication at the block level or the file level?
zamsync already proved the demand for long-term offline state without real-time sync.
If we consider the container context, would a snapshot model create too much storage bloat compared to the approach used by ZamSync? Perhaps the overhead of keeping full container states outweighs the benefit of avoiding real-time sync.
Shifting the burden from conflict resolution to version selection is a huge win for developer experience. It removes the stress of fixing a broken sync and lets users just roll back to a known good state.