rqlite v7.0.0 Release Notes

Release Date: 2022-01-25 // over 2 years ago
  • ๐Ÿš€ This release introduces new node-discovery integration with Consul and etcd. By using one of those systems with rqlite, automatic clustering of rqlite is much easier. The legacy Discovery mode is not supported by release 7.0, but may be supported in a future release. So, for now, if you wish to continue using legacy Discovery, you will need to run rqlite 6.x, or earlier.

    ๐Ÿ“š See the new documentation for full details on using Consul and etcd.

    โฌ†๏ธ Upgrading

    ๐Ÿš€ This release uses a new database for the Raft system, which should be compatible with earlier releases. However it is strongly recommended you backup any existing Leader nodes before you run 7.0, in the event there are any issues.

    ๐Ÿš€ There are also some breaking changes in release 7.0, related to command-line arguments:

    • โฌ†๏ธ The disco-related command-line arguments have changed to support Consul and etcd. If you wish to continue to use legacy Discovery, you can't upgrade to 7.0 -- or consider using Consul or etcd for node-discovery.
    • ๐Ÿšš The command-line argument -RaftWaitForLeader has been removed. If you need to wait for a node to have a Leader, you should poll the /readyz endpoint.

    ๐Ÿ†• New features

    • ๐Ÿ‘ PR #957: Support autoclustering via use Consul and etcd KV stores.
    • ๐Ÿ“ฑ PR #947: CLI takes list of hosts, so it can try another node if first node is unresponsive. Fixes issue #157. Thanks @chermehdi

    ๐Ÿ›  Implementation changes and bug fixes

    • ๐Ÿ”จ PR #957: Refactor rqlited command-line argument code.
    • ๐Ÿ“ฆ PR #965: Stop using deprecated protobuf package.
    • PR #967: Replace BoltDB with etcd's fork, bbolt.
    • ๐Ÿ”€ PR #968: Control whether bbolt syncs freelist to disk.