Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Page properties
label


Status

Status
colourYellowGreen
titleIn progress
 
DECIDED

StakeholdersMakoto Takemiya
Outcome

Jira
serverHyperledger JIRA
serverId6326cb0b-65b2-38fd-a82c-67a89277103b
keyIR-980

Due date

 

OwnerEgor Ivkov


...

0 View changes (5 signatures needed for commit, 3 received)



X
X

1 View change (5 signatures needed for commit, 3 received)



X
X

2 View changes (5 signatures needed for commit, 3 received)



X
X

3 View changes (5 signatures needed for commit, 4 received)



X
X

4 View changes (5 signatures needed for commit, 4 received)



X
X

5 View changes (5 signatures needed for commit, 4 received)



X
X

6 View changes (5 signatures needed for commit, 4 received)



X
X


This shows that it will not be possible to commit block and the view will be changing until the network is stopped or more peers join.

...

Solution

It is suggested to try at first shifting peers by 1 as was done previously up to N times. Then if the problems persist change view by shuffling peers again (as in after the blocks are committed) instead of shifting by one. And to make the process deterministic take the tuple (block_height, n_change_views) as a seed for this shuffling.

Decisions

Alternatives

?Shuffle peers at every change view - can be costly and not optimal in cases with faulty leader.

Concerns

As with any random process shuffling does not guarantee that particular network topology will be reached, and the network theoretically still can be stuck for forever, though with a very low probability.

...