Skip to content

Commit d9ceb01

Browse files
tbagrel1amesgen
authored andcommitted
Wire-in the PerasCertDiffusion protocol in NodeToNode
1 parent 8234849 commit d9ceb01

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
@@ -68,6 +68,10 @@ import Ouroboros.Consensus.MiniProtocol.ChainSync.Client
6868
)
6969
import qualified Ouroboros.Consensus.MiniProtocol.ChainSync.Client as CsClient
7070
import Ouroboros.Consensus.MiniProtocol.ChainSync.Server
71+
import Ouroboros.Consensus.MiniProtocol.ObjectDiffusion.Inbound (objectDiffusionInbound)
72+
import Ouroboros.Consensus.MiniProtocol.ObjectDiffusion.ObjectPool.PerasCert
73+
import Ouroboros.Consensus.MiniProtocol.ObjectDiffusion.Outbound (objectDiffusionOutbound)
74+
import Ouroboros.Consensus.MiniProtocol.ObjectDiffusion.PerasCert
7175
import Ouroboros.Consensus.Node.ExitPolicy
7276
import Ouroboros.Consensus.Node.NetworkProtocolVersion
7377
import Ouroboros.Consensus.Node.Run
@@ -197,6 +201,15 @@ data Handlers m addr blk = Handlers
197201
NodeToNodeVersion ->
198202
ConnectionId addr ->
199203
TxSubmissionServerPipelined (GenTxId blk) (GenTx blk) m ()
204+
, hPerasCertDiffusionInbound ::
205+
NodeToNodeVersion ->
206+
ConnectionId addr ->
207+
PerasCertDiffusionInboundPipelined blk m ()
208+
, hPerasCertDiffusionOutbound ::
209+
NodeToNodeVersion ->
210+
ControlMessageSTM m ->
211+
ConnectionId addr ->
212+
PerasCertDiffusionOutbound blk m ()
200213
, hKeepAliveClient ::
201214
NodeToNodeVersion ->
202215
ControlMessageSTM m ->
@@ -293,6 +306,20 @@ mkHandlers
293306
(mapTxSubmissionMempoolReader txForgetValidated $ getMempoolReader getMempool)
294307
(getMempoolWriter getMempool)
295308
version
309+
, hPerasCertDiffusionInbound = \version peer ->
310+
objectDiffusionInbound
311+
(contramap (TraceLabelPeer peer) (Node.certDiffusionInboundTracer tracers))
312+
(certDiffusionMaxUnacked miniProtocolParameters)
313+
(makePerasCertPoolReaderFromChainDB $ getChainDB)
314+
(makePerasCertPoolWriterFromChainDB $ getChainDB)
315+
version
316+
, hPerasCertDiffusionOutbound = \version controlMessageSTM peer ->
317+
objectDiffusionOutbound
318+
(contramap (TraceLabelPeer peer) (Node.certDiffusionOutboundTracer tracers))
319+
(certDiffusionMaxUnacked miniProtocolParameters)
320+
(makePerasCertPoolReaderFromChainDB $ getChainDB)
321+
version
322+
controlMessageSTM
296323
, hKeepAliveClient = \_version -> keepAliveClient (Node.keepAliveClientTracer tracers) keepAliveRng
297324
, hKeepAliveServer = \_version _peer -> keepAliveServer
298325
, 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)