Skip to content

Commit 282c91a

Browse files
committed
Wire-in the PerasCertDiffusion protocol in NodeToNode
1 parent 0bf0a07 commit 282c91a

File tree

2 files changed

+36
-0
lines changed
  • ouroboros-consensus-diffusion/src/ouroboros-consensus-diffusion/Ouroboros/Consensus

2 files changed

+36
-0
lines changed

ouroboros-consensus-diffusion/src/ouroboros-consensus-diffusion/Ouroboros/Consensus/Network/NodeToNode.hs

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,10 @@ import Ouroboros.Consensus.MiniProtocol.ChainSync.Client
7171
)
7272
import qualified Ouroboros.Consensus.MiniProtocol.ChainSync.Client as CsClient
7373
import Ouroboros.Consensus.MiniProtocol.ChainSync.Server
74+
import Ouroboros.Consensus.MiniProtocol.ObjectDiffusion.Inbound (objectDiffusionInbound)
75+
import Ouroboros.Consensus.MiniProtocol.ObjectDiffusion.ObjectPool.PerasCert
76+
import Ouroboros.Consensus.MiniProtocol.ObjectDiffusion.Outbound (objectDiffusionOutbound)
77+
import Ouroboros.Consensus.MiniProtocol.ObjectDiffusion.PerasCert
7478
import Ouroboros.Consensus.Node.ExitPolicy
7579
import Ouroboros.Consensus.Node.NetworkProtocolVersion
7680
import Ouroboros.Consensus.Node.Run
@@ -199,6 +203,15 @@ data Handlers m addr blk = Handlers
199203
NodeToNodeVersion ->
200204
ConnectionId addr ->
201205
TxSubmissionServerPipelined (GenTxId blk) (GenTx blk) m ()
206+
, hPerasCertDiffusionInbound ::
207+
NodeToNodeVersion ->
208+
ConnectionId addr ->
209+
PerasCertDiffusionInboundPipelined blk m ()
210+
, hPerasCertDiffusionOutbound ::
211+
NodeToNodeVersion ->
212+
ControlMessageSTM m ->
213+
ConnectionId addr ->
214+
PerasCertDiffusionOutbound blk m ()
202215
, hKeepAliveClient ::
203216
NodeToNodeVersion ->
204217
ControlMessageSTM m ->
@@ -295,6 +308,20 @@ mkHandlers
295308
(mapTxSubmissionMempoolReader txForgetValidated $ getMempoolReader getMempool)
296309
(getMempoolWriter getMempool)
297310
version
311+
, hPerasCertDiffusionInbound = \version peer ->
312+
objectDiffusionInbound
313+
(contramap (TraceLabelPeer peer) (Node.certDiffusionInboundTracer tracers))
314+
(certDiffusionMaxUnacked miniProtocolParameters)
315+
(makePerasCertPoolReaderFromChainDB $ getChainDB)
316+
(makePerasCertPoolWriterFromChainDB $ getChainDB)
317+
version
318+
, hPerasCertDiffusionOutbound = \version controlMessageSTM peer ->
319+
objectDiffusionOutbound
320+
(contramap (TraceLabelPeer peer) (Node.certDiffusionOutboundTracer tracers))
321+
(certDiffusionMaxUnacked miniProtocolParameters)
322+
(makePerasCertPoolReaderFromChainDB $ getChainDB)
323+
version
324+
controlMessageSTM
298325
, hKeepAliveClient = \_version -> keepAliveClient (Node.keepAliveClientTracer tracers) keepAliveRng
299326
, hKeepAliveServer = \_version _peer -> keepAliveServer
300327
, hPeerSharingClient = \_version controlMessageSTM _peer -> peerSharingClient controlMessageSTM

ouroboros-consensus-diffusion/src/ouroboros-consensus-diffusion/Ouroboros/Consensus/Node/Tracers.hs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ import Ouroboros.Consensus.MiniProtocol.ChainSync.Server
4242
import Ouroboros.Consensus.MiniProtocol.LocalTxSubmission.Server
4343
( TraceLocalTxSubmissionServerEvent (..)
4444
)
45+
import Ouroboros.Consensus.MiniProtocol.ObjectDiffusion.PerasCert
4546
import Ouroboros.Consensus.Node.GSM (TraceGsmEvent)
4647
import Ouroboros.Network.Block (Tip)
4748
import Ouroboros.Network.BlockFetch
@@ -87,6 +88,8 @@ data Tracers' remotePeer localPeer blk f = Tracers
8788
, csjTracer ::
8889
f (TraceLabelPeer remotePeer (CSJumping.TraceEventCsj remotePeer blk))
8990
, dbfTracer :: f (CSJumping.TraceEventDbf remotePeer)
91+
, certDiffusionInboundTracer :: f (TraceLabelPeer remotePeer (TracePerasCertDiffusionInbound blk))
92+
, certDiffusionOutboundTracer :: f (TraceLabelPeer remotePeer (TracePerasCertDiffusionOutbound blk))
9093
}
9194

9295
instance
@@ -115,6 +118,8 @@ instance
115118
, gddTracer = f gddTracer
116119
, csjTracer = f csjTracer
117120
, dbfTracer = f dbfTracer
121+
, certDiffusionInboundTracer = f certDiffusionInboundTracer
122+
, certDiffusionOutboundTracer = f certDiffusionOutboundTracer
118123
}
119124
where
120125
f ::
@@ -151,6 +156,8 @@ nullTracers =
151156
, gddTracer = nullTracer
152157
, csjTracer = nullTracer
153158
, dbfTracer = nullTracer
159+
, certDiffusionInboundTracer = nullTracer
160+
, certDiffusionOutboundTracer = nullTracer
154161
}
155162

156163
showTracers ::
@@ -189,6 +196,8 @@ showTracers tr =
189196
, gddTracer = showTracing tr
190197
, csjTracer = showTracing tr
191198
, dbfTracer = showTracing tr
199+
, certDiffusionInboundTracer = showTracing tr
200+
, certDiffusionOutboundTracer = showTracing tr
192201
}
193202

194203
{-------------------------------------------------------------------------------

0 commit comments

Comments
 (0)