-
感谢sofa贡献的sofa-jraft(以下简称jraft),我此次观阅了ReadIndex相关的一些代码,有些疑问,请教下各位
在tikv中,描述了一个场景:
前提使用lease base:
在leader transfer过程中,由于网络分区问题导致老的leader没有stepdown以至于可以执行读请求.
[场景描述原文](https://github.com/tikv/tikv…
oatiz updated
5 years ago
-
一个task从`service.getNode().apply(task);`到状态机里面iterator取出来,中间会有一个时间差,如果这个task本身执行花的时间很小,但是这个时间差相对很大。那么是不是上面这个过程就会成为性能的瓶颈?
我的场景是,只有一个客户端往一个单节点的raft组里面提交任务,发现用raft的方式和不用raft本地执行,性能差了3倍。假设一个任务真正执行要花20ms…
MyXOF updated
5 years ago
-
hi,
当前拿两个节点操作,经过几次添加删除节点操作后,出现了下面的日志,请问这种情况如何恢复?谢谢。
2019-03-29 15:34:27,010 INFO
Bolt-default-executor-6-thread-16 - Node ignore PreVote from 127.0.0.1:8081 in term 5 currTerm 4, because the…
-
联合周报第 114 期开始投稿 :tada:
-
如题,请问benchmark时raft log是同步刷盘吗?
-
请教几个问题:
假如我想要在一个节点上有多个raft group,是否可以只监听一个端口,靠group id来区分它们吗?还是有多少个raft group,就分别要开一个端口进行服务?
我看到PeerId里面有一个idx字段,这个字段现在有用吗?
还有一个不明白的地方,在CounterClient这个例子里面,客户端在进行rpc调用的时候,只用到了Endpoint信息(也就是IP+端口)…
MyXOF updated
5 years ago
-
刚刚阅读了下RheaKV的代码,收获颇丰,但是有个疑问,甚是不解,希望指导一下。
RheaKV采用multi-raft的设计,但一个节点的多个region共享一个RocksDB状态机。
这样,snapshot是以整个节点所有region的维度来做的。
那么,当一个raft group的leader和follower之间做install snapshot时,是否会把leader所在的节点的…
-
简单的阅读了一下 read lease 部分处理的代码,发现read lease只是判断了状态是不是STATE_LEADER。
考虑这样一个case。一个 {A,B,C} raft 复制组,刚开始一切正常。过了一段时间 A和C发生了网络分区,这样{A,B}因为能达到多数,所以仍然能正常工作。在网络分区后,没有任何新日志被写入,所以几个副本的数据是完全一致的。C在election timeou…
-
最近鄙人也在做Raft的研究和实现,看到贵团队开源的Java版Raft库,大喜若狂,遂连夜品读代码,收获良多。
但是,预投票流程看着好像有点问题,根据我理解的Raft,预投票的关键是2点:
1.预投票请求报文中的term,应该是发起预投票者的term,不需要term+1(因为prevote的出现就是解决网络分区后节点不断增加term扰乱全局而增加的优化流程)
2.收到预投票请求的节点,应…