Skip to content

consensus: expose triggeredTimeoutPrecommit over RPC #3159

@ebuchman

Description

@ebuchman

Since v0.26.0, the consensus has been changed to no longer enter into a state with Step == RoundStepPrecommitWait because we may need to start waiting the TimeoutPrecommit even before we have entered into the Precommit step.

Instead of using the RoundStepPrecommitWait as a step, we now track a bool, triggeredTimeoutPrecommit, to ensure we only trigger that timeout once per round.

However, this bool is a private field and is not exposed in any events or over RPC. Thus when debugging with /dump_consensus_state, it can be difficult to know the exact state of the consensus (ie. have we triggered this timeout or not?).

This field should be moved from the ConsensusState into the RoundState and marshalled with the rest of the RoundState fields into JSON.

We should also consider adding it to the other structs in consensus/types.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions