Skip to content

Releases: tikv/raft-rs

0.7.0

07 Mar 09:22
10c6e9d
Compare
Choose a tag to compare
  • Update prost to 0.11 (#496)
  • Make priority an i64 so a lower than default priority can be configured (#495)
  • Allow fetching entries in asynchronous manner (#459)
  • Support setting max-inflight-msgs in runtime to reduce memory usage (#450)

0.6.0

16 Jun 13:02
7c21f8d
Compare
Choose a tag to compare
  • Joint Consensus became a stable feature (#379, #380, #382, #383, #385, #386, #411)
  • Ported aggresive flow control from etcd/raft (#354)
  • Introduced group commit to force geo replication safety (#359)
  • Harden read index (#355, #363)
  • Support limiting uncommited logs (#398)
  • Support asynchronous ready (#403, #410, #417, #433)
  • Fast log append rejection (#367)
  • bytes::Bytes is used for protos if feature protobuf-codec is enabled (by default) (#438)
  • Switched to thiserror (#435)
  • Implemented committed entries pagination (#440)

0.4.3

08 May 08:29
e501361
Compare
Choose a tag to compare
  • Leader responds to learner read index message. (#220)

0.4.2

29 Apr 11:29
v0.4.2
3b41216
Compare
Choose a tag to compare
  • Fix potential two leaders at the same term when transferring leader. (#225)
  • Support StatusRef that doesn't clone. (#227)

0.4.1

23 Apr 06:20
Compare
Choose a tag to compare
  • Migrate from Rust-protobuf to Prost (#204)

Please note: This is a point release intended for TiKV. It's not intended for general usage. We recommend you use 0.5.0.

0.5.0

23 Apr 06:28
Compare
Choose a tag to compare
  • Introduced an experimental Joint Consensus based arbitrary membership change feature. (#101)
  • Harmonized protobuf dependency to match important downstreams. (#181)
  • Unified the Progress collections inside ProgressSet. (#108)
  • Raft::new() now returns a Result. (#122)
  • Removed the Progress.is_learner field. Check via function in ProgressSet instead. (#119)
  • Added Appvevor. Added then removed bors. (#137, #134)
  • Introduced getters and setters for various Ready fields. (#120)
  • Reduced memory allocation on reset. (#130)
  • Added issue templates, more links. (#133, #126)
  • Moved poll and quorum checking functionality into ProgressSet. (#121)
  • The leader is now trivially in the replicate state. (#146)
  • Fixed a problem with lease based read-only requests interacting with check_quorum wrong. (#141)
  • Corrected the single_mem_node example. (#162)
  • Fixed typos. (#159)
  • Adopted Hashbrown over FxHash. (#160)
  • Corrected learner checking in handle_transfer_leader. (#165)
  • Resolved some lints (#174, #168, #142, #124)
  • Fixed uses of #[feature(_)] so that we can build on stable cleanly. (#180)

v0.4.0

21 Sep 18:28
aa131db
Compare
Choose a tag to compare
  • No longer scan the raft log when becoming a leader. (#100)
  • Added the ability to skip broadcast commit at runtime. (#115)
  • Documented all public API. (#87)
  • Refined a few points in the API in preparation for more work. (#102)
  • Configuration logic was moved into its own module. (#91)
  • Added fail-rs based tests. (#114)
  • Added benchmarking using criterion. (#110)
  • Expanded tested examples. (#118)
  • Improved documentation. (#106)
  • Refined the CI scripts to ensure strict linting. (#117)
  • Tests now output logs. Configure it with RUST_LOG=raft=info. (#103)
  • Eased the log dependency. (#116)
  • Formatting updates. (#104)
  • Updated some dependencies. (#97)
  • Use the clippy preview from Rustup. (#95)
  • Adopted a Code of Conduct. (#107)

v0.3.1

12 Jul 03:13
6e49219
Compare
Choose a tag to compare
  • Bugfix: Reset leader_id when becoming precandidate to resolve prevote and check_quorum compatability (#84)
  • Bugfix: Becoming a precandidate should reset votes (#83)
  • Fix some typos, improve variable naming, and other small documentation fixes (#77, #79, #78, #80)
  • Implement Default for Config and fleshed out an example (#81)
  • Improve our changelog format (#85)
  • Remove custom Rustfmt configuration (#86)

v0.3.0

11 Jun 17:21
Compare
Choose a tag to compare
  • Support configuring the election timeout range (#63).
  • Keep compatible with rust-protobuf 2.0 (#64, #75)
  • Made Raft now Send (#67)
  • Added documentation examples (#69)
  • Fixed a deadlock in the prevote migration process (#42)

v0.2.0

08 Jun 16:17
v0.2.0
8453663
Compare
Choose a tag to compare
  • Deprecated sync-log and add context (#59)
  • Fix learner isolation bug (#58)
  • Port several tests (#54, #41)
  • Add examples (#44)
  • Use fxhash (#48)