 Documentation
      ¶
      Documentation
      ¶
    
    
  
    
  
    Index ¶
- func NewFollower(log zerolog.Logger, committee hotstuff.Committee, headers storage.Headers, ...) (*hotstuff.FollowerLoop, error)
- func NewParticipant(log zerolog.Logger, notifier hotstuff.Consumer, metrics module.HotstuffMetrics, ...) (*hotstuff.EventLoop, error)
- type Option
- func WithBlockRateDelay(delay time.Duration) Option
- func WithInitialTimeout(timeout time.Duration) Option
- func WithMinTimeout(timeout time.Duration) Option
- func WithStartupTime(time time.Time) Option
- func WithTimeoutDecreaseFactor(factor float64) Option
- func WithTimeoutIncreaseFactor(factor float64) Option
- func WithVoteAggregationTimeoutFraction(fraction float64) Option
 
- type ParticipantConfig
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewFollower ¶
func NewFollower(log zerolog.Logger, committee hotstuff.Committee, headers storage.Headers, updater module.Finalizer, verifier hotstuff.Verifier, notifier hotstuff.FinalizationConsumer, rootHeader *flow.Header, rootQC *flow.QuorumCertificate, finalized *flow.Header, pending []*flow.Header) (*hotstuff.FollowerLoop, error)
func NewParticipant ¶
func NewParticipant( log zerolog.Logger, notifier hotstuff.Consumer, metrics module.HotstuffMetrics, headers storage.Headers, committee hotstuff.Committee, builder module.Builder, updater module.Finalizer, persist hotstuff.Persister, signer hotstuff.SignerVerifier, communicator hotstuff.Communicator, rootHeader *flow.Header, rootQC *flow.QuorumCertificate, finalized *flow.Header, pending []*flow.Header, options ...Option, ) (*hotstuff.EventLoop, error)
NewParticipant initialize the EventLoop instance and recover the forks' state with all pending block
Types ¶
type Option ¶
type Option func(*ParticipantConfig)
func WithBlockRateDelay ¶
func WithInitialTimeout ¶
func WithMinTimeout ¶
func WithStartupTime ¶ added in v0.22.4
type ParticipantConfig ¶
type ParticipantConfig struct {
	StartupTime                time.Time     // the time when consensus participant enters first view
	TimeoutInitial             time.Duration // the initial timeout for the pacemaker
	TimeoutMinimum             time.Duration // the minimum timeout for the pacemaker
	TimeoutAggregationFraction float64       // the percentage part of the timeout period reserved for vote aggregation
	TimeoutIncreaseFactor      float64       // the factor at which the timeout grows when timeouts occur
	TimeoutDecreaseFactor      float64       // the factor at which the timeout grows when timeouts occur
	BlockRateDelay             time.Duration // a delay to broadcast block proposal in order to control the block production rate
}
    
       Directories
      ¶
      Directories
      ¶
    
    | Path | Synopsis | 
|---|---|
| 
          
            committees
            
            
          
           (c) 2020 Dapper Labs - ALL RIGHTS RESERVED | (c) 2020 Dapper Labs - ALL RIGHTS RESERVED | 
 Click to show internal directories. 
   Click to hide internal directories.