raftest: wait for network sending
parent
0242faa838
commit
279b216f9a
|
@ -86,7 +86,11 @@ func (rn *raftNetwork) send(m raftpb.Message) {
|
|||
time.Sleep(time.Duration(rd))
|
||||
}
|
||||
|
||||
to <- m
|
||||
select {
|
||||
case to <- m:
|
||||
default:
|
||||
// drop messages when the receiver queue is full.
|
||||
}
|
||||
}
|
||||
|
||||
func (rn *raftNetwork) recvFrom(from uint64) chan raftpb.Message {
|
||||
|
|
|
@ -49,11 +49,10 @@ func (n *node) start() {
|
|||
n.storage.SetHardState(n.state)
|
||||
}
|
||||
n.storage.Append(rd.Entries)
|
||||
go func() {
|
||||
// TODO: make send async, more like real world...
|
||||
for _, m := range rd.Messages {
|
||||
n.iface.send(m)
|
||||
}
|
||||
}()
|
||||
n.Advance()
|
||||
case m := <-n.iface.recv():
|
||||
n.Step(context.TODO(), m)
|
||||
|
|
Loading…
Reference in New Issue