dragonboat v3.0 Release Notes

Release Date: 2019-06-21 // almost 5 years ago
  • ๐Ÿš€ Dragonboat v3.0 is a major release with breaking changes. Please make sure to carefully read the CHANGELOG below before upgrading.

    ๐Ÿ†• New features

    • โž• Added on disk state machine (statemachine.IOnDiskStateMachine) support. The on disk state machine is close to the concept described in the section 5.2 of Diego Ongaro's Raft thesis.
    • โž• Added new API for requesting a snapshot to be created or exported.
    • โž• Added the ability to use exported snapshot to repair permanently damaged cluster that no longer has majority quorum.
    • โž• Added new API for cleaning up data and release disk spaces after a node is removed from its Raft cluster.
    • โž• Added the ability to limit peak memory usage when disk or network is slow.
    • โž• Added Go module support. Go 1.12 is required.

    ๐Ÿ‘Œ Improvements

    • ๐Ÿ”ง Further improved self checking on configurations.
    • โž• Added snapshot binary format version 2 with block base checksum.
    • ๐Ÿ”€ Synchronous variants have been provided for all asynchronous user request APIs in NodeHost.

    ๐Ÿ’ฅ Breaking changes

    • ๐Ÿ“ฆ The Drummer package has been made invisible from user applications.
    • โฌ†๏ธ The statemachine.IStateMachine interface has been upgraded to reflect the fact that not all state machine data is stored in memory (#46).