Skip to content

Releases: superfly/litefs

v0.3.0-beta3

11 Nov 21:35
fabf62d
Compare
Choose a tag to compare
v0.3.0-beta3 Pre-release
Pre-release

What's Changed

Full Changelog: v0.3.0-beta2...v0.3.0-beta3

v0.3.0-beta2

08 Nov 22:43
Compare
Choose a tag to compare
v0.3.0-beta2 Pre-release
Pre-release

What's Changed

New Contributors

Full Changelog: v0.2.0...v0.3.0-beta2

v0.2.0

21 Sep 13:59
Compare
Choose a tag to compare

Overview

The v0.2.0 release primarily focuses on stability and hardening, however, it also includes a few important features. This release is also marks the end of the alpha phase of LiteFS and it is now considered "beta" software. It should generally run well, however, please report bugs to the GitHub repository.

Major features

Candidacy

By default, every node in the cluster can become the primary node. However, moving a primary from one region to another can change performance characteristics significantly so it may be useful to only allow certain nodes to become primary. You can now set the candidate flag in the config to false for any nodes which should not become primary:

candidate: false

Static Lease

LiteFS uses Consul to dynamically change the current primary in the cluster on the fly. However, for users that do not wish to run Consul, they can set a single fixed primary node. This is similar to how Litestream's read replication was meant to work. Please see #47 for more details.

Pull Requests

  • Upgrade to LTX v0.2.0 in #45
  • Implement candidacy in #46
  • Implement static lease in #47
  • Return ENOSYS for xattr requests by @darthShadow in #51
  • Implement database snapshot to LTX in #53
  • Update contribution policy in #54
  • Retention enforcement in #57
  • Implement statfs() callback in #58
  • Support non-default page size in #59
  • Expose DB position via FUSE in #60
  • Optional registration of Consul node in #63
  • Use default consul key, if not specified in #65
  • Return hostname in primary file in #66
  • Metrics in #67
  • Update lock delay to 5s in #68
  • Set hostname env variable, if unset in #69
  • Default Advertise URL in #70
  • Add configurable data directory in #71
  • Rename pprof import in #72
  • Fix database locks to use LockOwner in #74
  • Atomically write LTX files on commit in #78
  • Add unique, persistent node ID in #79
  • Disconnect streams when primary status changes in #80
  • Add DB nil check on HTTP server in #81
  • Remove GITHUB_TOKEN & Makefile in #82
  • Add staticcheck CI in #83
  • Add errcheck to CI in #84
  • Wait for ready state on startup in #85
  • Ensure node does not startup if LTX files are invalid in #86
  • Minor CI tweaks in #87
  • Disable poll() in FUSE layer in #88
  • Verify all LTX files on startup in #89
  • Verify database checksum on startup in #90
  • Fix locking on LTX apply in #91
  • Verify txid/checksum on LTX frame in #92
  • Add long-running, functional test in #93
  • Fix http log formatting in #94
  • Skip LTX checksum check on snapshot in #95
  • Document 'exec' field in config in #97
  • Fix LTX checksum on VACUUM in #98
  • Refactor GitHub Actions in #99
  • Mark ready after initial replication set in #100
  • Fix FUSE return so replicas report a SQLITE_READONLY error in #101
  • Remove DBID in #102
  • Refactor RWMutex & RWMutexGuard in #103
  • Move CI timeout to 'go test' command in #104
  • Use HTTP/2 for internal endpoints in #106
  • Require explicit data directory in #109
  • Only release amd64 and arm64 in #110

New Contributors

Full Changelog: v0.1.1...v0.2.0

v0.2.0-beta3

21 Sep 00:25
Compare
Choose a tag to compare
v0.2.0-beta3 Pre-release
Pre-release
Only release amd64 and arm64

v0.1.1

05 Aug 16:32
Compare
Choose a tag to compare

This version of LiteFS replaces the FUSE implementation from github.com/hanwen/go-fuse to bazil.org/fuse. The new implementation seems to be much more stable on a variety of operating systems (Fedora, Alpine, GH Actions, etc).

Use of PRAGMA journal_mode = wal now returns an error since LiteFS does not yet support WAL mode. Also, additional test coverage has been added and increased testing will continue.

v0.1.0

26 Jul 21:56
514297a
Compare
Choose a tag to compare

This is the initial release of LiteFS. It is still in an alpha stage but the build is intended to make it easier to test.

v0.1.0-alpha3

26 Jul 21:51
Compare
Choose a tag to compare
v0.1.0-alpha3 Pre-release
Pre-release
Build on release

v0.1.0-alpha2

22 Jul 19:30
Compare
Choose a tag to compare
v0.1.0-alpha2 Pre-release
Pre-release

This release adds the .primary file handle to replica nodes. It can be read to find the current primary's advertise URL.

v0.1.0-alpha1

12 Jul 15:02
Compare
Choose a tag to compare
v0.1.0-alpha1 Pre-release
Pre-release
Fix streaming; wait to start subprocess