#raft-consensus #raft #raft-storage #consensus #upgrade #openraft #compatibility

openraft-rocksstore-compat07

这是一个与 openraft::RaftStorage 特性兼容的 v07 示例实现

5 个版本

0.8.9 2024 年 3 月 6 日
0.8.3 2023 年 3 月 19 日
0.8.2 2023 年 3 月 7 日
0.8.1 2023 年 2 月 28 日
0.8.0 2023 年 2 月 28 日

#1606 in 异步

Download history 30/week @ 2024-04-02

每月 150 次下载

MIT/Apache

1MB
21K SLoC

openraft-rockcsstore-070

这是一个示例 RaftStorage 实现,展示了如何将基于 openraft v0.7 的应用程序升级到 v0.8。

在此示例中,假设有一个磁盘上的 rocksdb 目录支持 0.7 应用程序,兼容的 0708 应该能够从这个目录中读取数据并将其写入。


lib.rs:

这是为需要从 openraft v0.7 升级的应用程序实现 RaftStorage 特性的示例实现。

Openraft v0.8 对持久数据相关的数据类型进行了多项更改。本示例演示了如何在不修改磁盘上数据的情况下,使用 openraft::compat 兼容层升级存储实现。

这是一个修改过的 rocksdb 实现,尝试将数据反序列化为兼容类型,如 compat07::LogId,当从 rocksdb 读取数据时,并将其升级到最新格式。您可以在本实现中找到使用 compat07::* 的示例,这些示例用于提供与旧数据的兼容性。

依赖项

~37-51MB
~1M SLoC