[−][src]Module finality_grandpa::bitfield
Bitfields and tools for handling equivocations.
This is primarily a bitfield for tracking equivocating voters. It is necessary because there is a need to track vote-weight of equivocation on the vote-graph but to avoid double-counting.
We count equivocating voters as voting for everything. This makes any further equivocations redundant with the first.
Bitfields are either blank or live, with two bits per equivocator. The first is for equivocations in prevote messages and the second for those in precommits.
Bitfields on regular vote-nodes will tend to be live, but the equivocating bitfield will be mostly empty.
Structs
LiveBitfield | Live bitfield instance. |
Shared | Shared data among all live bitfield instances. |
Enums
Bitfield | Bitfield for tracking voters who have equivocated. |
Error | Errors that can occur when using the equivocation weighting tools. |