Documentation ¶
Index ¶
- Variables
- type MultiSlotState
- type Register
- func (r *Register) AttachMetrics(m *metrics.Metrics)
- func (rs *Register) GetValidators(m *structs.MetricGroup) structs.BuilderGetValidatorsResponseEntrySlice
- func (rs *Register) RegisterValidator(ctx context.Context, m *structs.MetricGroup, ...) (err error)
- func (r *Register) Registration(ctx context.Context, pk types.PublicKey) (types.SignedValidatorRegistration, error)
- type RegisterMetrics
- type RegistrationManager
- type State
- type StoreManager
- func (rm *StoreManager) AttachMetrics(m *metrics.Metrics)
- func (rm *StoreManager) Check(rvg *types.RegisterValidatorRequestMessage) bool
- func (pm *StoreManager) Close(ctx context.Context)
- func (rm *StoreManager) GetRegistration(ctx context.Context, pk types.PublicKey) (types.SignedValidatorRegistration, error)
- func (pm *StoreManager) ParallelStore(datas ValidatorStore)
- func (rm *StoreManager) RunStore(num uint)
- func (rm *StoreManager) SendStore(request StoreReq)
- type StoreManagerMetrics
- type StoreReq
- type StoreReqItem
- type ValidatorCache
- type ValidatorStore
- type Verifier
Constants ¶
This section is empty.
Variables ¶
Functions ¶
This section is empty.
Types ¶
type MultiSlotState ¶ added in v0.4.2
type Register ¶
type Register struct {
// contains filtered or unexported fields
}
func NewRegister ¶
func NewRegister(l log.Logger, builderSigningDomain types.Domain, beaconState *beacon.MultiSlotState, ver Verifier, regMngr RegistrationManager) *Register
func (*Register) AttachMetrics ¶
func (*Register) GetValidators ¶
func (rs *Register) GetValidators(m *structs.MetricGroup) structs.BuilderGetValidatorsResponseEntrySlice
GetValidators returns a list of registered block proposers in current and next epoch
func (*Register) RegisterValidator ¶
func (rs *Register) RegisterValidator(ctx context.Context, m *structs.MetricGroup, payload []types.SignedValidatorRegistration) (err error)
***** Builder Domain ***** RegisterValidator is called is called by validators communicating through mev-boost who would like to receive a block from us when their slot is scheduled
func (*Register) Registration ¶
type RegisterMetrics ¶
type RegisterMetrics struct {
RegistrationsCacheHits *prometheus.CounterVec
}
type RegistrationManager ¶
type State ¶
type State interface { Duties() structs.DutiesState KnownValidators() structs.ValidatorsState }
type StoreManager ¶
type StoreManager struct { RegistrationCache ValidatorCache StoreCh chan StoreReq // contains filtered or unexported fields }
func NewStoreManager ¶
func NewStoreManager(l log.Logger, cache ValidatorCache, store ValidatorStore, writeTTL time.Duration, storeSize uint) *StoreManager
func (*StoreManager) AttachMetrics ¶
func (rm *StoreManager) AttachMetrics(m *metrics.Metrics)
func (*StoreManager) Check ¶
func (rm *StoreManager) Check(rvg *types.RegisterValidatorRequestMessage) bool
func (*StoreManager) Close ¶
func (pm *StoreManager) Close(ctx context.Context)
func (*StoreManager) GetRegistration ¶
func (rm *StoreManager) GetRegistration(ctx context.Context, pk types.PublicKey) (types.SignedValidatorRegistration, error)
func (*StoreManager) ParallelStore ¶
func (pm *StoreManager) ParallelStore(datas ValidatorStore)
func (*StoreManager) RunStore ¶
func (rm *StoreManager) RunStore(num uint)
func (*StoreManager) SendStore ¶
func (rm *StoreManager) SendStore(request StoreReq)
type StoreManagerMetrics ¶
type StoreManagerMetrics struct { StoreTiming prometheus.Histogram StoreSize prometheus.Histogram StoreErrorRate prometheus.Counter RunningWorkers *prometheus.GaugeVec }
type StoreReq ¶
type StoreReq struct {
Items []StoreReqItem
}
type StoreReqItem ¶
type StoreReqItem struct { Payload types.SignedValidatorRegistration Time uint64 }
StoreReqItem is a payload requested to be stored
type ValidatorCache ¶
type ValidatorCache interface { Add(types.PublicKey, structs.ValidatorCacheEntry) (evicted bool) Get(types.PublicKey) (structs.ValidatorCacheEntry, bool) }
type ValidatorStore ¶
Click to show internal directories.
Click to hide internal directories.