iroha
iroha copied to clipboard
Reintroduce topology shuffling to restore fault tolerance
Since PR #3250, view changes have been implemented as a simple rotation. This means that even if there are enough healthy peers overall, if faulty peers are scattered throughout the topology, no amount of view changes can guarantee 2f+1. In other words, this issue was reverted to an unresolved state.
To reproduce the problem, for example, start five peers in a swarm, randomly stop two of them, and observe that transactions fail to commit.
Unless we adopt Hijiri (#1211), we should reintroduce topology shuffling.