Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
56 commits
Select commit Hold shift + click to select a range
4e78f00
Use cardano-ledger-conway 1.17.3
crocodile-dentist Nov 26, 2024
de3c809
cardanoProtocolVersion and CHaP bump
crocodile-dentist Nov 26, 2024
36871ba
Merge pull request #6043 from IntersectMBO/mwojtowicz/10.1.3
crocodile-dentist Nov 27, 2024
a2c4bcb
Merge tag '10.1.3' into HEAD
neilmayhew Dec 5, 2024
effd793
Bump Hackage and CHaP
neilmayhew Dec 4, 2024
9ce810d
switch to ekg-wai backend from ekg
mgmeier Oct 21, 2024
7ca6de9
trace-forward: update to typed-protocols-0.3
Icelandjack Oct 30, 2024
3229918
trace-resources: update version bound in cardano-node
neilmayhew Dec 4, 2024
f81f873
plutus upgrade: use emptyMintValue instead of mempty
neilmayhew Dec 10, 2024
33acda7
plutus upgrade: increase version bounds in plutus-scripts-bench
neilmayhew Dec 10, 2024
1a48a37
cardano-ledger upgrade: increase version bounds
neilmayhew Dec 4, 2024
961dfcd
cardano-ledger upgrade: adjust to removed constructors
neilmayhew Dec 5, 2024
bd572d1
cardano-ledger upgrade: adjust to use of Mismatch in predicate failures
neilmayhew Dec 6, 2024
1dda572
cardano-ledger upgrade: accommodate the new VRFVerKeyHash type
neilmayhew Dec 6, 2024
722c183
ouroboros-network upgrade: increase version bounds
neilmayhew Dec 4, 2024
81e13f9
ouroboros-network upgrade: use the new namespace for Network.Mux types
neilmayhew Dec 5, 2024
4b78221
ouroboros-network upgrade: connectToNode changes
crocodile-dentist Dec 5, 2024
4b15e3d
ouroboros-network upgrade: update NodeToClient versions
neilmayhew Dec 5, 2024
52578be
ouroboros-network-upgrade: AnyMessage changes
neilmayhew Dec 5, 2024
a8ba6fd
ouroboros-network upgrade: adjust to namespace changes
neilmayhew Dec 5, 2024
3925d34
ouroboros-network upgrade: accommodate new and changed constructors
neilmayhew Dec 5, 2024
6719727
ouroboros-network upgrade: instances for stateful protocol messages
neilmayhew Dec 6, 2024
745bcc6
ouroboros-network upgrade: support the KeepAlive message type
neilmayhew Dec 6, 2024
44280be
ouroboros-network upgrade: add new information to configuration
neilmayhew Dec 10, 2024
38b5f91
ouroboros-network upgrade: add LedgerPeerSnapshot reader to config
neilmayhew Dec 10, 2024
0d554e1
ouroboros-network upgrade: blocking style changes
neilmayhew Dec 10, 2024
3960a3b
ouroboros-consensus upgrade: adjust to ResourceRegistry being spun off
neilmayhew Dec 5, 2024
40d54cb
ouroboros-consensus upgrade: adjust to changed constructors and types
neilmayhew Dec 5, 2024
a28f4a6
ouroboros-consensus upgrade: TriggerHardFork changes
neilmayhew Dec 6, 2024
30e37bf
ouroboros-consensus upgrade: integrate ledger snapshot checksum
geo2a Dec 4, 2024
88ef61e
cardano-api upgrade: increase version bounds
neilmayhew Dec 4, 2024
2113c4d
cardano-api upgrade: use convert instead of deprecated conwayEraOnwar…
neilmayhew Dec 10, 2024
9dfce6c
Support for big ledger peer snapshot
crocodile-dentist Apr 17, 2024
732fe78
Added trace tags used in validation of big ledger peer snapshot
crocodile-dentist Jun 5, 2024
0a84e07
Added ConsensusMode option and Genesis targets for diffusion governors.
crocodile-dentist Jun 4, 2024
484e5a5
Integrate o-network and o-consensus
crocodile-dentist Nov 13, 2024
7f1a5ac
Add srp's
neilmayhew Dec 4, 2024
e220793
Fix version conflicts with `hedgehog-extras`
neilmayhew Dec 19, 2024
7a0e01b
Updated with connection manager changes
coot Dec 3, 2024
cedc23f
Added diffusionMode to local root peers group configuration
coot Dec 6, 2024
930e07b
Renamed connection-manager trace
coot Dec 11, 2024
eacdc51
WIP
coot Dec 19, 2024
ae34f56
Fixup from Javier
neilmayhew Dec 19, 2024
6c6cf22
WIP: ChainDB.TraceChainSelStarvationEvent
neilmayhew Dec 20, 2024
33e44c1
Apply suggestions from code review
lehins Dec 20, 2024
5591d34
UPdate SRP to point at latest consensus
lehins Dec 24, 2024
5b51a18
Update consensus ref and fix BlockFetch + CSJ tracing instances
jasagredo Dec 26, 2024
f83dd0e
Dummy implementation for network tracers
jasagredo Dec 26, 2024
04e321f
Fix tests related to ouroboros-network
jasagredo Dec 26, 2024
4ef2ea7
Fix tests related to cardano-cli
jasagredo Dec 26, 2024
0e777b5
WIP some fixes for tests
jasagredo Dec 27, 2024
1ebef45
Remove redundant import
jasagredo Dec 27, 2024
540a822
cardano-testnet | fix stake registration check failures and adapt to …
carbolymer Dec 27, 2024
a2d0728
Merge pull request #6059 from IntersectMBO/js/nm/release-srp
lehins Dec 27, 2024
86d8666
Remove redundant import
lehins Dec 27, 2024
331fba0
Network tracing instances for fetch decisions
coot Dec 28, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions bench/locli/locli.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,7 @@ library
, hashable
, optparse-applicative-fork >= 0.18.1
, ouroboros-consensus
, ouroboros-network-api ^>= 0.10
, ouroboros-network-api ^>= 0.11
, sop-core
, split
, statistics
Expand Down Expand Up @@ -158,7 +158,7 @@ test-suite test-locli
build-depends: cardano-prelude
, containers
, hedgehog
, hedgehog-extras ^>= 0.6.4
, hedgehog-extras >= 0.6.4 && <0.6.5.1
, locli
, text

Expand Down
8 changes: 4 additions & 4 deletions bench/plutus-scripts-bench/plutus-scripts-bench.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -82,10 +82,10 @@ library
-- IOG dependencies
--------------------------
build-depends:
, cardano-api ^>=10.1
, plutus-ledger-api ^>=1.36
, plutus-tx ^>=1.36
, plutus-tx-plugin ^>=1.36
, cardano-api ^>=10.4
, plutus-ledger-api ^>=1.37
, plutus-tx ^>=1.37
, plutus-tx-plugin ^>=1.37

------------------------
-- Non-IOG dependencies
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ module Cardano.Benchmarking.GeneratorTx.NodeToNode
, benchmarkConnectTxSubmit
) where

import Cardano.Prelude (forever, liftIO)
import Cardano.Prelude (forever, liftIO, throwIO)
import Prelude

import "contra-tracer" Control.Tracer (Tracer (..))
Expand All @@ -25,7 +25,8 @@ import Data.ByteString.Lazy (ByteString)
import Data.Foldable (fold)
import qualified Data.Map.Strict as Map
import Data.Proxy (Proxy (..))
import Data.Void (Void)
import Data.Void (Void, absurd)
import qualified Network.Mux as Mux
import Network.Socket (AddrInfo (..))
import System.Random (newStdGen)

Expand All @@ -45,7 +46,7 @@ import Ouroboros.Network.DeltaQ (defaultGSV)
import Ouroboros.Network.Driver (runPeer, runPeerWithLimits)
import Ouroboros.Network.KeepAlive
import Ouroboros.Network.Magic
import Ouroboros.Network.Mux (MiniProtocolCb (..), MuxMode (..),
import Ouroboros.Network.Mux (MiniProtocolCb (..),
OuroborosApplication (..), OuroborosBundle, RunMiniProtocol (..))
import Ouroboros.Network.NodeToClient (chainSyncPeerNull)
import Ouroboros.Network.NodeToNode (NetworkConnectTracers (..))
Expand Down Expand Up @@ -84,8 +85,8 @@ benchmarkConnectTxSubmit
-- ^ the particular txSubmission peer
-> IO ()

benchmarkConnectTxSubmit EnvConsts { .. } handshakeTracer submissionTracer codecConfig networkMagic remoteAddr myTxSubClient =
NtN.connectTo
benchmarkConnectTxSubmit EnvConsts { .. } handshakeTracer submissionTracer codecConfig networkMagic remoteAddr myTxSubClient = do
done <- NtN.connectTo
(socketSnocket envIOManager)
NetworkConnectTracers {
nctMuxTracer = mempty,
Expand All @@ -94,6 +95,11 @@ benchmarkConnectTxSubmit EnvConsts { .. } handshakeTracer submissionTracer codec
peerMultiplex
(addrAddress <$> Nothing)
(addrAddress remoteAddr)
case done of
Left err -> throwIO err
Right choice -> case choice of
Left () -> return ()
Right void -> absurd void
where
ownPeerSharing = PeerSharingDisabled
mkApp :: OuroborosBundle mode initiatorCtx responderCtx bs m a b
Expand All @@ -114,7 +120,7 @@ benchmarkConnectTxSubmit EnvConsts { .. } handshakeTracer submissionTracer codec
peerMultiplex :: NtN.Versions NodeToNodeVersion
NtN.NodeToNodeVersionData
(OuroborosApplication
'InitiatorMode
'Mux.InitiatorMode
(MinimalInitiatorContext NtN.RemoteAddress)
(ResponderContext NtN.RemoteAddress)
ByteString IO () Void)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ import Cardano.Tracing.OrphanInstances.Consensus ()
import Cardano.Tracing.OrphanInstances.Network ()
import Cardano.Tracing.OrphanInstances.Shelley ()

import Ouroboros.Network.Protocol.TxSubmission2.Type (TokBlockingStyle (..))
import Ouroboros.Network.Protocol.TxSubmission2.Type (SingBlockingStyle (..))

import Cardano.Api hiding (Active)
import Cardano.TxGenerator.Types (TPSRate, TxGenError)
Expand Down Expand Up @@ -124,11 +124,11 @@ mkSubmissionSummary startTime reportsRefs
txStreamSource :: forall era. MVar (StreamState (TxStream IO era)) -> TpsThrottle -> TxSource era
txStreamSource streamRef tpsThrottle = Active worker
where
worker :: forall m blocking . MonadIO m => TokBlockingStyle blocking -> Req -> m (TxSource era, [Tx era])
worker :: forall m blocking . MonadIO m => SingBlockingStyle blocking -> Req -> m (TxSource era, [Tx era])
worker blocking req = do
(done, txCount) <- case blocking of
TokBlocking -> liftIO $ consumeTxsBlocking tpsThrottle req
TokNonBlocking -> liftIO $ consumeTxsNonBlocking tpsThrottle req
SingBlocking -> liftIO $ consumeTxsBlocking tpsThrottle req
SingNonBlocking -> liftIO $ consumeTxsNonBlocking tpsThrottle req
txList <- liftIO $ unFold txCount
case done of
Stop -> return (Exhausted, txList)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ import qualified Ouroboros.Consensus.Shelley.Ledger.Mempool as Mempool (TxId (Sh
import Ouroboros.Network.Protocol.TxSubmission2.Client (ClientStIdle (..),
ClientStTxIds (..), ClientStTxs (..), TxSubmissionClient (..))
import Ouroboros.Network.Protocol.TxSubmission2.Type (BlockingReplyList (..),
NumTxIdsToAck (..), NumTxIdsToReq (..), TokBlockingStyle (..))
NumTxIdsToAck (..), NumTxIdsToReq (..), SingBlockingStyle (..))
import Ouroboros.Network.SizeInBytes

import Prelude (error, fail)
Expand All @@ -71,14 +71,14 @@ data TxSource era
= Exhausted
| Active (ProduceNextTxs era)

type ProduceNextTxs era = (forall m blocking . MonadIO m => TokBlockingStyle blocking -> Req -> m (TxSource era, [Tx era]))
type ProduceNextTxs era = (forall m blocking . MonadIO m => SingBlockingStyle blocking -> Req -> m (TxSource era, [Tx era]))

produceNextTxs :: forall m blocking era . MonadIO m => TokBlockingStyle blocking -> Req -> LocalState era -> m (LocalState era, [Tx era])
produceNextTxs :: forall m blocking era . MonadIO m => SingBlockingStyle blocking -> Req -> LocalState era -> m (LocalState era, [Tx era])
produceNextTxs blocking req (txProducer, unack, stats) = do
(newTxProducer, txList) <- produceNextTxs' blocking req txProducer
return ((newTxProducer, unack, stats), txList)

produceNextTxs' :: forall m blocking era . MonadIO m => TokBlockingStyle blocking -> Req -> TxSource era -> m (TxSource era, [Tx era])
produceNextTxs' :: forall m blocking era . MonadIO m => SingBlockingStyle blocking -> Req -> TxSource era -> m (TxSource era, [Tx era])
produceNextTxs' _ _ Exhausted = return (Exhausted, [])
produceNextTxs' blocking req (Active callback) = callback blocking req

Expand All @@ -99,10 +99,10 @@ txSubmissionClient tr bmtr initialTxSource endOfProtocolCallback =
TxSubmissionClient $
pure $ client (initialTxSource, UnAcked [], SubmissionThreadStats 0 0 0)
where
discardAcknowledged :: TokBlockingStyle a -> Ack -> LocalState era -> m (LocalState era)
discardAcknowledged :: SingBlockingStyle a -> Ack -> LocalState era -> m (LocalState era)
discardAcknowledged blocking (Ack ack) (txSource, UnAcked unAcked, stats) = do
when (tokIsBlocking blocking && ack /= length unAcked) $ do
let err = "decideAnnouncement: TokBlocking, but length unAcked != ack"
let err = "decideAnnouncement: SingBlocking, but length unAcked != ack"
traceWith bmtr (TraceBenchTxSubError err)
fail (T.unpack err)
let (stillUnacked, acked) = L.splitAtEnd ack unAcked
Expand All @@ -123,7 +123,7 @@ txSubmissionClient tr bmtr initialTxSource endOfProtocolCallback =

requestTxIds :: forall blocking.
LocalState era
-> TokBlockingStyle blocking
-> SingBlockingStyle blocking
-> NumTxIdsToAck
-> NumTxIdsToReq
-> m (ClientStTxIds blocking (GenTxId CardanoBlock) (GenTx CardanoBlock) m ())
Expand All @@ -140,15 +140,15 @@ txSubmissionClient tr bmtr initialTxSource endOfProtocolCallback =
traceWith bmtr $ SubmissionClientUnAcked (getTxId . getTxBody <$> outs)

case blocking of
TokBlocking -> case NE.nonEmpty newTxs of
SingBlocking -> case NE.nonEmpty newTxs of
Nothing -> do
traceWith tr EndOfProtocol
endOfProtocolCallback stats
pure $ SendMsgDone ()
(Just txs) -> pure $ SendMsgReplyTxIds
(BlockingReply $ txToIdSize <$> txs)
(client stateC)
TokNonBlocking -> pure $ SendMsgReplyTxIds
SingNonBlocking -> pure $ SendMsgReplyTxIds
(NonBlockingReply $ txToIdSize <$> newTxs)
(client stateC)

Expand Down Expand Up @@ -196,17 +196,17 @@ txSubmissionClient tr bmtr initialTxSource endOfProtocolCallback =
fromGenTxId (Block.GenTxIdConway (Mempool.ShelleyTxId i)) = fromShelleyTxId i
fromGenTxId _ = error "TODO: fix incomplete match"

tokIsBlocking :: TokBlockingStyle a -> Bool
tokIsBlocking :: SingBlockingStyle a -> Bool
tokIsBlocking = \case
TokBlocking -> True
TokNonBlocking -> False
SingBlocking -> True
SingNonBlocking -> False

reqIdsTrace :: Ack -> Req -> TokBlockingStyle a -> NodeToNodeSubmissionTrace
reqIdsTrace :: Ack -> Req -> SingBlockingStyle a -> NodeToNodeSubmissionTrace
reqIdsTrace ack req = \case
TokBlocking -> ReqIdsBlocking ack req
TokNonBlocking -> ReqIdsNonBlocking ack req
SingBlocking -> ReqIdsBlocking ack req
SingNonBlocking -> ReqIdsNonBlocking ack req

idListTrace :: ToAnnce tx -> TokBlockingStyle a -> NodeToNodeSubmissionTrace
idListTrace :: ToAnnce tx -> SingBlockingStyle a -> NodeToNodeSubmissionTrace
idListTrace (ToAnnce toAnn) = \case
TokBlocking -> IdsListBlocking $ length toAnn
TokNonBlocking -> IdsListNonBlocking $ length toAnn
SingBlocking -> IdsListBlocking $ length toAnn
SingNonBlocking -> IdsListNonBlocking $ length toAnn
4 changes: 2 additions & 2 deletions bench/tx-generator/src/Cardano/Benchmarking/LogTypes.hs
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ import qualified Control.Concurrent.STM as STM (TVar)
import Data.Text
import Data.Time.Clock (DiffTime, NominalDiffTime)
import GHC.Generics
import Network.Mux (WithMuxBearer (..))
import qualified Network.Mux as Mux

data AsyncBenchmarkControl =
AsyncBenchmarkControl
Expand Down Expand Up @@ -149,7 +149,7 @@ data NodeToNodeSubmissionTrace

type SendRecvTxSubmission2 = TraceSendRecv (TxSubmission2 (GenTxId CardanoBlock) (GenTx CardanoBlock))

type SendRecvConnect = WithMuxBearer
type SendRecvConnect = Mux.WithBearer
RemoteConnectionId
(TraceSendRecv (Handshake
NodeToNodeVersion
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -259,7 +259,7 @@ preExecutePlutusV3 (major, _minor) (PlutusScript _ (PlutusScriptSerialised (scri
{ PlutusV3.txInfoInputs = []
, PlutusV3.txInfoOutputs = []
, PlutusV3.txInfoFee = 0
, PlutusV3.txInfoMint = mempty
, PlutusV3.txInfoMint = PlutusV3.emptyMintValue
, PlutusV3.txInfoTxCerts = []
, PlutusV3.txInfoWdrl = PlutusV3.unsafeFromList []
, PlutusV3.txInfoValidRange = PlutusV3.always
Expand Down
3 changes: 2 additions & 1 deletion bench/tx-generator/tx-generator.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,7 @@ library
, attoparsec-aeson
, base16-bytestring
, bytestring
, cardano-api ^>= 10.1
, cardano-api ^>= 10.4
, cardano-binary
, cardano-cli ^>= 10.1
, cardano-crypto-class
Expand Down Expand Up @@ -158,6 +158,7 @@ library
, transformers-except
, unordered-containers
, yaml
, microlens

default-language: Haskell2010
default-extensions: OverloadedStrings
Expand Down
58 changes: 56 additions & 2 deletions cabal.project
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@ repository cardano-haskell-packages
-- See CONTRIBUTING for information about these, including some Nix commands
-- you need to run if you change them
index-state:
, hackage.haskell.org 2024-10-10T00:52:24Z
, cardano-haskell-packages 2024-10-30T10:23:17Z
, hackage.haskell.org 2024-12-10T16:20:07Z
, cardano-haskell-packages 2024-12-18T14:29:04Z

packages:
cardano-node
Expand Down Expand Up @@ -60,11 +60,65 @@ package plutus-scripts-bench
constraints:
, wai-extra < 3.1.15
, Cabal < 3.14
, hedgehog-extras <0.6.5.1

allow-newer:
, katip:Win32
, ekg-wai:time
, *:hedgehog-extras

-- IMPORTANT
-- Do NOT add more source-repository-package stanzas here unless they are strictly
-- temporary! Please read the section in CONTRIBUTING about updating dependencies.

source-repository-package
type: git
location: https://github.com/IntersectMBO/ouroboros-network.git
tag: 4920b7a8e1a639e6b6a85611bef6d541e21d012a
--sha256: sha256-mrGXtC/mStln5KqoXlruKYl2vHYZhgw3biRlZm82h7A=
subdir:
cardano-client
cardano-ping
monoidal-synchronisation
network-mux
ntp-client
ouroboros-network
ouroboros-network-api
ouroboros-network-framework
ouroboros-network-mock
ouroboros-network-protocols
ouroboros-network-testing
quickcheck-monoids

source-repository-package
type: git
location: https://github.com/IntersectMBO/ouroboros-consensus.git
tag: f2d134da6d6d4f7bcbfb85ba94b30f49b3f2b7c6
--sha256: sha256-4Lu716WX9S+5dguxa8lUjAgeCQYsxj9QZZ9xLyyjivQ=
subdir:
ouroboros-consensus
ouroboros-consensus-cardano
ouroboros-consensus-protocol
ouroboros-consensus-diffusion

source-repository-package
type: git
location: https://github.com/IntersectMBO/cardano-api.git
tag: 04ac6b36284ea823da0a7b88210c03b586f7f808
--sha256: sha256-LcZe9GcH2qRvNCk4leJHMLEX0KMiqbkYP4xACBE/znE=
subdir:
cardano-api

source-repository-package
type: git
location: https://github.com/IntersectMBO/cardano-cli.git
tag: e2940caf43f5ba3194173523369553c93c2340b7
--sha256: sha256-Bzic7wIBU8Md/vzj87d9kgdpOGfTXOtjBYLyTR/rZ5g=
subdir:
cardano-cli

source-repository-package
type: git
location: https://github.com/neilmayhew/ekg-forward.git
tag: 4ba8bb693093f6cf54d43d6e9bbce1e08b0457dd
--sha256: sha256-g0gYqzRGjmZwxEzihJ4JifJe+GRfdLIMzaot7rUcjlI=
2 changes: 1 addition & 1 deletion cardano-node-chairman/cardano-node-chairman.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ test-suite chairman-tests
, data-default-class
, filepath
, hedgehog
, hedgehog-extras ^>= 0.6.4
, hedgehog-extras >= 0.6.4 && <0.6.5.1
, network
, process
, random
Expand Down
5 changes: 5 additions & 0 deletions cardano-node/ChangeLog.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,11 @@
- `--mempool-capacity-override` and `--no-mempool-capacity-override` can be set in the configuration file via the key `MempoolCapacityBytesOverride`.
- `--snapshot-interval` can be set in the configuration file via the key `SnapshotInterval`.
- `--num-of-disk-snapshots` can be set in the configuration file via the key `NumOfDiskSnapshots`.
- Ledger peer snapshot path entry added to topology JSON parser,
which a new decoder function `readPeerSnapshotFile` processes
at startup and SIGHUP. Data is available to the diffusion layer
via TVar.


- Use metric names of old-tracing in new-tracing as well, and fix some metrics in new tracing.

Expand Down
Loading
Loading