| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Cardano.Network.PeerSelection.Governor.Types
Synopsis
- empty :: ViewExtraPeers (ExtraPeers peeraddr)
- outboundConnectionsState :: Ord peeraddr => AssociationMode -> PeerSelectionSetsWithSizes (ViewExtraPeers (ExtraPeers peeraddr)) peeraddr -> PeerSelectionState ExtraState PeerTrustable extraPeers peeraddr peerconn -> OutboundConnectionsState
- cardanoPeerSelectionGovernorArgs :: forall (m :: Type -> Type) peeraddr extraDebugState peerconn. (MonadTimer m, Alternative (STM m), Ord peeraddr) => ExtraPeerSelectionActions m -> PeerSelectionGovernorArgs ExtraState extraDebugState PeerTrustable (ExtraPeers peeraddr) (LedgerPeersConsensusInterface m) peeraddr peerconn BootstrapPeersCriticalTimeoutError m
- readAssociationMode :: forall (m :: Type -> Type). MonadSTM m => STM m UseLedgerPeers -> PeerSharing -> UseBootstrapPeers -> STM m AssociationMode
- class (Ord peeraddr, Show peeraddr, Eq (ViewExtraPeers extraPeers), Show extraPeers, Show (ToExtraTrace extraPeers)) => SupportsPeerSelectionState extraPeers peeraddr where
- data ToExtraTrace extraPeers
- data ViewExtraPeers extraPeers
- publicExtraPeersAPI :: PublicExtraPeersAPI extraPeers peeraddr
- mkViewExtraPeers :: PeerSelectionState extraState extraFlags extraPeers peeraddr peerconn -> ViewExtraPeers extraPeers
- newtype NumberOfBigLedgerPeers = NumberOfBigLedgerPeers {}
Documentation
empty :: ViewExtraPeers (ExtraPeers peeraddr) Source #
outboundConnectionsState :: Ord peeraddr => AssociationMode -> PeerSelectionSetsWithSizes (ViewExtraPeers (ExtraPeers peeraddr)) peeraddr -> PeerSelectionState ExtraState PeerTrustable extraPeers peeraddr peerconn -> OutboundConnectionsState Source #
cardanoPeerSelectionGovernorArgs :: forall (m :: Type -> Type) peeraddr extraDebugState peerconn. (MonadTimer m, Alternative (STM m), Ord peeraddr) => ExtraPeerSelectionActions m -> PeerSelectionGovernorArgs ExtraState extraDebugState PeerTrustable (ExtraPeers peeraddr) (LedgerPeersConsensusInterface m) peeraddr peerconn BootstrapPeersCriticalTimeoutError m Source #
readAssociationMode :: forall (m :: Type -> Type). MonadSTM m => STM m UseLedgerPeers -> PeerSharing -> UseBootstrapPeers -> STM m AssociationMode Source #
Classify if a node is in promiscuous mode.
A node is not in promiscuous mode only if: it doesn't use ledger peers, peer sharing, the set of bootstrap peers is empty.
class (Ord peeraddr, Show peeraddr, Eq (ViewExtraPeers extraPeers), Show extraPeers, Show (ToExtraTrace extraPeers)) => SupportsPeerSelectionState extraPeers peeraddr where #
Associated Types
data ToExtraTrace extraPeers #
data ViewExtraPeers extraPeers #
Peer selection view.
This is a functor which is used to hold computation of various peer sets and
their sizes. See peerSelectionStateToView, peerSelectionStateToCounters.
Methods
publicExtraPeersAPI :: PublicExtraPeersAPI extraPeers peeraddr #
mkViewExtraPeers :: PeerSelectionState extraState extraFlags extraPeers peeraddr peerconn -> ViewExtraPeers extraPeers #
Instances
newtype NumberOfBigLedgerPeers Source #
Minimum number of hot big ledger peers in Genesis mode
for trusted state to be signalled to Consensus. This number
should be smaller than the targetNumberOfActiveBigLedgerPeers
but greater than 1. In Genesis, we may demote a big ledger peer
for underperformance, but not promote a replacement immediately
to guard against adversaries which may want to slow down our
progress.
Constructors
| NumberOfBigLedgerPeers | |
Fields | |
Instances
| FromJSON NumberOfBigLedgerPeers Source # | |
Defined in Cardano.Network.PeerSelection.Governor.PeerSelectionState Methods parseJSON :: Value -> Parser NumberOfBigLedgerPeers # parseJSONList :: Value -> Parser [NumberOfBigLedgerPeers] # | |
| Show NumberOfBigLedgerPeers Source # | |
Defined in Cardano.Network.PeerSelection.Governor.PeerSelectionState Methods showsPrec :: Int -> NumberOfBigLedgerPeers -> ShowS # show :: NumberOfBigLedgerPeers -> String # showList :: [NumberOfBigLedgerPeers] -> ShowS # | |
| Eq NumberOfBigLedgerPeers Source # | |
Defined in Cardano.Network.PeerSelection.Governor.PeerSelectionState Methods (==) :: NumberOfBigLedgerPeers -> NumberOfBigLedgerPeers -> Bool # (/=) :: NumberOfBigLedgerPeers -> NumberOfBigLedgerPeers -> Bool # | |