From 63ea4f1d26a1157b482ab8d5cb05fa31c2fbe57c Mon Sep 17 00:00:00 2001 From: Erik Grinaker Date: Thu, 3 Sep 2020 14:58:09 +0200 Subject: [PATCH] consensus: fix wrong proposer schedule for `InitChain` validators (#5329) Fixes #5328. --- CHANGELOG_PENDING.md | 2 ++ consensus/replay.go | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/CHANGELOG_PENDING.md b/CHANGELOG_PENDING.md index 3bf1931a2..918f59eb6 100644 --- a/CHANGELOG_PENDING.md +++ b/CHANGELOG_PENDING.md @@ -46,4 +46,6 @@ Friendly reminder, we have a [bug bounty program](https://hackerone.com/tendermi - [statesync] \#5320 Broadcast snapshot request to all pre-connected peers on start (@erikgrinaker) +- [consensus] \#5329 Fix wrong proposer schedule for validators returned by `InitChain` (@erikgrinaker) + - [light] [\#5307](https://github.com/tendermint/tendermint/pull/5307) Persist correct proposer priority in light client validator sets (@cmwaters) diff --git a/consensus/replay.go b/consensus/replay.go index 4b76e3129..cfb68d0a9 100644 --- a/consensus/replay.go +++ b/consensus/replay.go @@ -339,7 +339,7 @@ func (h *Handshaker) ReplayBlocks( return nil, err } state.Validators = types.NewValidatorSet(vals) - state.NextValidators = types.NewValidatorSet(vals) + state.NextValidators = types.NewValidatorSet(vals).CopyIncrementProposerPriority(1) } else if len(h.genDoc.Validators) == 0 { // If validator set is not set in genesis and still empty after InitChain, exit. return nil, fmt.Errorf("validator set is nil in genesis and still empty after InitChain")