Skip to content

Commit

Permalink
Upgraded to ouroboros-network-0.15.0.0
Browse files Browse the repository at this point in the history
  • Loading branch information
coot committed May 7, 2024
1 parent 57f1ded commit 6316014
Show file tree
Hide file tree
Showing 13 changed files with 427 additions and 105 deletions.
2 changes: 1 addition & 1 deletion bench/locli/locli.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,7 @@ library
, optparse-generic
, ouroboros-consensus
-- for Data.SOP.Strict:
, ouroboros-network ^>= 0.14
, ouroboros-network ^>= 0.15
, ouroboros-network-api
, process
, quiet
Expand Down
12 changes: 12 additions & 0 deletions cabal.project
Original file line number Diff line number Diff line change
Expand Up @@ -60,3 +60,15 @@ package plutus-scripts-bench
-- temporary! Please read the section in CONTRIBUTING about updating dependencies.

-- `smtp-mail` should depend on `crypton-connection` rather than `connection`!

source-repository-package
type: git
tag: 02ef293459f0ca6cae03d0a83a31eb40ffc68124
--sha256: sha256-PN65hISlgvGBut1cA9F47iflbZBELRv5bwkl+muXKFs=
location: git@github.com:IntersectMBO/ouroboros-network
subdir: ouroboros-network
ouroboros-network-framework

allow-newer: ouroboros-consensus-diffusion:ouroboros-network,
ouroboros-consensus-diffusion:ouroboros-network-framework,
ekg-forward:ouroboros-network-framework
4 changes: 2 additions & 2 deletions cardano-node/cardano-node.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -188,8 +188,8 @@ library
, ouroboros-consensus-diffusion ^>= 0.14
, ouroboros-consensus-protocol
, ouroboros-network-api ^>= 0.7
, ouroboros-network ^>= 0.14
, ouroboros-network-framework ^>= 0.12
, ouroboros-network ^>= 0.15
, ouroboros-network-framework ^>= 0.13
, ouroboros-network-protocols ^>= 0.8
, prettyprinter
, prettyprinter-ansi-terminal
Expand Down
2 changes: 1 addition & 1 deletion cardano-node/src/Cardano/Node/Tracing/Consistency.hs
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ import qualified Ouroboros.Network.NodeToClient as NtC
import Ouroboros.Network.NodeToNode (ErrorPolicyTrace (..), RemoteAddress, WithAddr (..))
import qualified Ouroboros.Network.NodeToNode as NtN
import Ouroboros.Network.PeerSelection.Governor (DebugPeerSelection (..),
PeerSelectionCounters (..), TracePeerSelection (..))
PeerSelectionCounters, TracePeerSelection (..))
import Ouroboros.Network.PeerSelection.LedgerPeers (TraceLedgerPeers)
import Ouroboros.Network.PeerSelection.PeerStateActions (PeerSelectionActionsTrace (..))
import Ouroboros.Network.PeerSelection.RootPeersDNS.LocalRootPeers
Expand Down
2 changes: 1 addition & 1 deletion cardano-node/src/Cardano/Node/Tracing/Documentation.hs
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ import qualified Ouroboros.Network.NodeToClient as NtC
import Ouroboros.Network.NodeToNode (ErrorPolicyTrace (..), RemoteAddress, WithAddr (..))
import qualified Ouroboros.Network.NodeToNode as NtN
import Ouroboros.Network.PeerSelection.Governor (DebugPeerSelection (..),
PeerSelectionCounters (..), TracePeerSelection (..))
PeerSelectionCounters, TracePeerSelection (..))
import Ouroboros.Network.PeerSelection.LedgerPeers (TraceLedgerPeers)
import Ouroboros.Network.PeerSelection.PeerStateActions (PeerSelectionActionsTrace (..))
import Ouroboros.Network.PeerSelection.RootPeersDNS.LocalRootPeers
Expand Down
7 changes: 7 additions & 0 deletions cardano-node/src/Cardano/Node/Tracing/Tracers.hs
Original file line number Diff line number Diff line change
Expand Up @@ -539,6 +539,11 @@ mkDiffusionTracersExtra configReflection trBase trForward mbTrEKG _trDataPoint t
["Net", "PeerSelection"]
configureTracers configReflection trConfig [peerSelectionCountersTr]

!churnCountersTr <- mkCardanoTracer
trBase trForward mbTrEKG
["Net", "Churn"]
configureTracers configReflection trConfig [churnCountersTr]

!peerSelectionActionsTr <- mkCardanoTracer
trBase trForward mbTrEKG
["Net", "PeerSelection", "Actions"]
Expand Down Expand Up @@ -602,6 +607,8 @@ mkDiffusionTracersExtra configReflection trBase trForward mbTrEKG _trDataPoint t
traceWith debugPeerSelectionResponderTr
, P2P.dtTracePeerSelectionCounters = Tracer $
traceWith peerSelectionCountersTr
, P2P.dtTraceChurnCounters = Tracer $
traceWith churnCountersTr
, P2P.dtPeerSelectionActionsTracer = Tracer $
traceWith peerSelectionActionsTr
, P2P.dtConnectionManagerTracer = Tracer $
Expand Down
282 changes: 225 additions & 57 deletions cardano-node/src/Cardano/Node/Tracing/Tracers/P2P.hs

Large diffs are not rendered by default.

110 changes: 81 additions & 29 deletions cardano-node/src/Cardano/Tracing/OrphanInstances/Network.hs
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE PolyKinds #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE QuantifiedConstraints #-}
{-# LANGUAGE ScopedTypeVariables #-}
{-# LANGUAGE TypeApplications #-}
Expand Down Expand Up @@ -54,8 +55,9 @@ import Ouroboros.Network.NodeToNode (ErrorPolicyTrace (..), NodeToNode
import qualified Ouroboros.Network.NodeToNode as NtN
import Ouroboros.Network.PeerSelection.Bootstrap
import Ouroboros.Network.PeerSelection.Governor (DebugPeerSelection (..),
DebugPeerSelectionState (..), PeerSelectionCounters (..),
PeerSelectionState (..), PeerSelectionTargets (..), TracePeerSelection (..))
DebugPeerSelectionState (..), PeerSelectionCounters, PeerSelectionView (..),
PeerSelectionState (..), PeerSelectionTargets (..),
TracePeerSelection (..), peerSelectionStateToCounters)
import Ouroboros.Network.PeerSelection.LedgerPeers
import Ouroboros.Network.PeerSelection.PeerSharing (PeerSharing (..))
import Ouroboros.Network.PeerSelection.PeerStateActions (PeerSelectionActionsTrace (..))
Expand All @@ -66,7 +68,6 @@ import Ouroboros.Network.PeerSelection.RootPeersDNS.LocalRootPeers
(TraceLocalRootPeers (..))
import Ouroboros.Network.PeerSelection.RootPeersDNS.PublicRootPeers
(TracePublicRootPeers (..))
import qualified Ouroboros.Network.PeerSelection.State.EstablishedPeers as EstablishedPeers
import Ouroboros.Network.PeerSelection.State.KnownPeers (KnownPeerInfo (..))
import qualified Ouroboros.Network.PeerSelection.State.KnownPeers as KnownPeers
import Ouroboros.Network.PeerSelection.State.LocalRootPeers (HotValency (..),
Expand Down Expand Up @@ -415,6 +416,7 @@ instance HasSeverityAnnotation (TracePeerSelection addr) where
TracePeerShareRequests {} -> Info
TracePeerShareResults {} -> Info
TracePeerShareResultsFiltered {} -> Debug
TracePickInboundPeers {} -> Info
TraceForgetColdPeers {} -> Info
TracePromoteColdPeers {} -> Info
TracePromoteColdLocalPeers {} -> Info
Expand All @@ -437,7 +439,6 @@ instance HasSeverityAnnotation (TracePeerSelection addr) where
TraceGovernorWakeup {} -> Info
TraceChurnWait {} -> Info
TraceChurnMode {} -> Info
TraceKnownInboundConnection {} -> Info

TraceForgetBigLedgerPeers {} -> Info

Expand Down Expand Up @@ -472,6 +473,9 @@ instance HasSeverityAnnotation (TracePeerSelection addr) where

TraceOutboundGovernorCriticalFailure {} -> Error

TraceChurnAction {} -> Info
TraceChurnTimeout {} -> Notice

TraceDebugState {} -> Info

instance HasPrivacyAnnotation (DebugPeerSelection addr)
Expand Down Expand Up @@ -562,6 +566,8 @@ instance HasSeverityAnnotation (InboundGovernorTrace addr) where
InboundGovernor.TrUnexpectedlyFalseAssertion {}
-> Error
InboundGovernor.TrInboundGovernorError {} -> Error
InboundGovernor.TrMaturedConnections {} -> Info
InboundGovernor.TrInactive {} -> Debug

instance HasPrivacyAnnotation (Server.RemoteTransitionTrace addr)
instance HasSeverityAnnotation (Server.RemoteTransitionTrace addr) where
Expand Down Expand Up @@ -1869,10 +1875,13 @@ instance ToObject (TracePeerSelection SockAddr) where
toObject _verb (TraceChurnMode c) =
mconcat [ "kind" .= String "ChurnMode"
, "event" .= show c ]
toObject _verb (TraceKnownInboundConnection addr sharing) =
mconcat [ "kind" .= String "KnownInboundConnection"
, "peer" .= show addr
, "peerSharing" .= show sharing ]
toObject _verb (TracePickInboundPeers targetNumberOfKnownPeers numberOfKnownPeers selected available) =
mconcat [ "kind" .= String "PickInboundPeers"
, "targetKnown" .= targetNumberOfKnownPeers
, "actualKnown" .= numberOfKnownPeers
, "selected" .= selected
, "available" .= available
]
toObject _verb (TraceLedgerStateJudgementChanged new) =
mconcat [ "kind" .= String "LedgerStateJudgementChanged"
, "new" .= show new ]
Expand All @@ -1888,6 +1897,18 @@ instance ToObject (TracePeerSelection SockAddr) where
mconcat [ "kind" .= String "OutboundGovernorCriticalFailure"
, "reason" .= show err
]
toObject _verb (TraceChurnAction duration action counter) =
mconcat [ "kind" .= String "ChurnAction"
, "action" .= show action
, "counter" .= counter
, "duration" .= duration
]
toObject _verb (TraceChurnTimeout duration action counter) =
mconcat [ "kind" .= String "ChurnTimeout"
, "action" .= show action
, "counter" .= counter
, "duration" .= duration
]
toObject _verb (TraceDebugState mtime ds) =
mconcat [ "kind" .= String "DebugState"
, "monotonicTime" .= mtime
Expand Down Expand Up @@ -1973,26 +1994,15 @@ peerSelectionTargetsToObject

instance ToObject (DebugPeerSelection SockAddr) where
toObject verb (TraceGovernorState blockedAt wakeupAfter
PeerSelectionState { targets, knownPeers, establishedPeers, activePeers, publicRootPeers })
st@PeerSelectionState { targets })
| verb <= NormalVerbosity =
mconcat [ "kind" .= String "DebugPeerSelection"
, "blockedAt" .= String (pack $ show blockedAt)
, "wakeupAfter" .= String (pack $ show wakeupAfter)
, "targets" .= peerSelectionTargetsToObject targets
, "numberOfPeers" .=
Object (mconcat [ "known" .= KnownPeers.size knownPeers
, "established" .= EstablishedPeers.size establishedPeers
, "active" .= Set.size activePeers
])
, "numberOfBigLedgerPeers" .=
Object (mconcat [ "known" .= Set.size (KnownPeers.toSet knownPeers `Set.intersection` bigLedgerPeers)
, "established" .= Set.size (EstablishedPeers.toSet establishedPeers `Set.intersection` bigLedgerPeers)
, "active" .= Set.size (activePeers `Set.intersection` bigLedgerPeers)
])
, "counters" .= toObject verb (peerSelectionStateToCounters st)

]
where
bigLedgerPeers = PublicRootPeers.getBigLedgerPeers publicRootPeers
toObject _ (TraceGovernorState blockedAt wakeupAfter ev) =
mconcat [ "kind" .= String "DebugPeerSelection"
, "blockedAt" .= String (pack $ show blockedAt)
Expand Down Expand Up @@ -2024,15 +2034,48 @@ instance Show lAddr => ToObject (PeerSelectionActionsTrace SockAddr lAddr) where
]

instance ToObject PeerSelectionCounters where
toObject _verb ev =
toObject _verb PeerSelectionCounters {..} =
mconcat [ "kind" .= String "PeerSelectionCounters"
, "coldPeers" .= coldPeers ev
, "warmPeers" .= warmPeers ev
, "hotPeers" .= hotPeers ev
, "coldBigLedgerPeers" .= coldBigLedgerPeers ev
, "warmBigLedgerPeers" .= warmBigLedgerPeers ev
, "hotBigLedgerPeers" .= hotBigLedgerPeers ev
]

, "knownPeers" .= numberOfKnownPeers
, "rootPeers" .= numberOfRootPeers
, "coldPeersPromotions" .= numberOfColdPeersPromotions
, "establishedPeers" .= numberOfEstablishedPeers
, "warmPeersDemotions" .= numberOfWarmPeersDemotions
, "warmPeersPromotions" .= numberOfWarmPeersPromotions
, "activePeers" .= numberOfActivePeers
, "activePeersDemotions" .= numberOfActivePeersDemotions

, "knownBigLedgerPeers" .= numberOfKnownBigLedgerPeers
, "coldBigLedgerPeersPromotions" .= numberOfColdBigLedgerPeersPromotions
, "establishedBigLedgerPeers" .= numberOfEstablishedBigLedgerPeers
, "warmBigLedgerPeersDemotions" .= numberOfWarmBigLedgerPeersDemotions
, "warmBigLedgerPeersPromotions" .= numberOfWarmBigLedgerPeersPromotions
, "activeBigLedgerPeers" .= numberOfActiveBigLedgerPeers
, "activeBigLedgerPeersDemotions" .= numberOfActiveBigLedgerPeersDemotions

, "knownLocalRootPeers" .= numberOfKnownLocalRootPeers
, "establishedLocalRootPeers" .= numberOfEstablishedLocalRootPeers
, "warmLocalRootPeersPromotions" .= numberOfWarmLocalRootPeersPromotions
, "activeLocalRootPeers" .= numberOfActiveLocalRootPeers
, "activeLocalRootPeersDemotions" .= numberOfActiveLocalRootPeersDemotions

, "knownNonRootPeers" .= numberOfKnownNonRootPeers
, "coldNonRootPeersPromotions" .= numberOfColdNonRootPeersPromotions
, "establishedNonRootPeers" .= numberOfEstablishedNonRootPeers
, "warmNonRootPeersDemotions" .= numberOfWarmNonRootPeersDemotions
, "warmNonRootPeersPromotions" .= numberOfWarmNonRootPeersPromotions
, "activeNonRootPeers" .= numberOfActiveNonRootPeers
, "activeNonRootPeersDemotions" .= numberOfActiveNonRootPeersDemotions

, "knownBootstrapPeers" .= numberOfKnownBootstrapPeers
, "coldBootstrapPeersPromotions" .= numberOfColdBootstrapPeersPromotions
, "establishedBootstrapPeers" .= numberOfEstablishedBootstrapPeers
, "warmBootstrapPeersDemotions" .= numberOfWarmBootstrapPeersDemotions
, "warmBootstrapPeersPromotions" .= numberOfWarmBootstrapPeersPromotions
, "activeBootstrapPeers" .= numberOfActiveBootstrapPeers
, "activeBootstrapPeersDemotions" .= numberOfActiveBootstrapPeersDemotions
]

instance (Show (ClientHasAgency st), Show (ServerHasAgency st))
=> ToJSON (PeerHasAgency pr st) where
Expand Down Expand Up @@ -2515,6 +2558,15 @@ instance (ToJSON addr, Show addr)
mconcat [ "kind" .= String "InboundGovernorError"
, "remoteSt" .= String (pack . show $ err)
]
toObject _verb (InboundGovernor.TrMaturedConnections matured fresh) =
mconcat [ "kind" .= String "MaturedConnections"
, "matured" .= toJSON matured
, "fresh" .= toJSON fresh
]
toObject _verb (InboundGovernor.TrInactive fresh) =
mconcat [ "kind" .= String "Inactive"
, "fresh" .= toJSON fresh
]

instance ToJSON addr
=> ToObject (Server.RemoteTransitionTrace addr) where
Expand Down

0 comments on commit 6316014

Please sign in to comment.