| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Ouroboros.Consensus.MiniProtocol.ChainSync.Server
Contents
Synopsis
- chainSyncHeadersServer :: forall m blk. (IOLike m, HasHeader (Header blk)) => Tracer m (TraceChainSyncServerEvent blk) -> ChainDB m blk -> NodeToNodeVersion -> ResourceRegistry m -> ChainSyncServer (SerialisedHeader blk) (Point blk) (Tip blk) m ()
- chainSyncBlocksServer :: forall m blk. (IOLike m, HasHeader (Header blk)) => Tracer m (TraceChainSyncServerEvent blk) -> ChainDB m blk -> ResourceRegistry m -> ChainSyncServer (Serialised blk) (Point blk) (Tip blk) m ()
- data Tip b
- data TraceChainSyncServerEvent blk
- = TraceChainSyncServerRead (Tip blk) (ChainUpdate blk (Point blk))
- | TraceChainSyncServerReadBlocked (Tip blk) (ChainUpdate blk (Point blk))
Documentation
chainSyncHeadersServer :: forall m blk. (IOLike m, HasHeader (Header blk)) => Tracer m (TraceChainSyncServerEvent blk) -> ChainDB m blk -> NodeToNodeVersion -> ResourceRegistry m -> ChainSyncServer (SerialisedHeader blk) (Point blk) (Tip blk) m () Source #
Chain Sync Server for block headers for a given a ChainDB.
The node-to-node protocol uses the chain sync mini-protocol with chain headers (and fetches blocks separately with the block fetch mini-protocol).
chainSyncBlocksServer :: forall m blk. (IOLike m, HasHeader (Header blk)) => Tracer m (TraceChainSyncServerEvent blk) -> ChainDB m blk -> ResourceRegistry m -> ChainSyncServer (Serialised blk) (Point blk) (Tip blk) m () Source #
Chain Sync Server for blocks for a given a ChainDB.
The local node-to-client protocol uses the chain sync mini-protocol with chains of full blocks (rather than a header / body split).
Instances
| StandardHash b => Eq (Tip b) | |
| StandardHash b => Show (Tip b) | |
| Generic (Tip b) | |
| StandardHash b => NoThunks (Tip b) | |
| Condense (HeaderHash b) => Condense (Tip b) Source # | |
| ShowProxy b => ShowProxy (Tip b :: Type) | |
| type Rep (Tip b) | |
Defined in Ouroboros.Network.Block type Rep (Tip b) = D1 ('MetaData "Tip" "Ouroboros.Network.Block" "ouroboros-network-0.1.0.0-DgIBwCUrGXaLitNwqCfIcM" 'False) (C1 ('MetaCons "TipGenesis" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Tip" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedUnpack) (Rec0 SlotNo) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (HeaderHash b)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedUnpack) (Rec0 BlockNo)))) | |
Trace events
data TraceChainSyncServerEvent blk Source #
Events traced by the Chain Sync Server.
The whole headers/blocks in the traced ChainUpdate are substituted with
their corresponding Point.
Constructors
| TraceChainSyncServerRead (Tip blk) (ChainUpdate blk (Point blk)) | |
| TraceChainSyncServerReadBlocked (Tip blk) (ChainUpdate blk (Point blk)) |
Instances
| StandardHash blk => Eq (TraceChainSyncServerEvent blk) Source # | |
Defined in Ouroboros.Consensus.MiniProtocol.ChainSync.Server Methods (==) :: TraceChainSyncServerEvent blk -> TraceChainSyncServerEvent blk -> Bool # (/=) :: TraceChainSyncServerEvent blk -> TraceChainSyncServerEvent blk -> Bool # | |
| StandardHash blk => Show (TraceChainSyncServerEvent blk) Source # | |
Defined in Ouroboros.Consensus.MiniProtocol.ChainSync.Server Methods showsPrec :: Int -> TraceChainSyncServerEvent blk -> ShowS # show :: TraceChainSyncServerEvent blk -> String # showList :: [TraceChainSyncServerEvent blk] -> ShowS # | |