benbjohnson / litestream

Streaming replication for SQLite.

Home Page:https://litestream.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

LTX Support

benbjohnson opened this issue · comments

The LiteFS project uses the LTX file format for storing change sets and there a lot of improvements that can be made to Litestream if it used the same format:

  • Compaction support
  • WAL offset & salt maintained in LTX header
  • Compression support can be moved to LTX
  • Encryption support (planned)

As the streaming replication support that was canned made changes to the file structure, will LTX support also keep the breaking change or allow restoring from legacy (0.3.x) WAL files and structure at least for one minor version (0.4.x) to make migration seamless and safe?

@hifi I'm on the fence about backward compatibility. The new version will take a snapshot right away when it starts up so it'll be seamless and safe from that perspective. In theory, it could handle pulling in historic backups but that'd also be a fair bit of code to maintain that support as well.