This version of cardano-node
provides further enhancements in the networking code:
- peer sharing improvements;
- new EKG counters both in the legacy and new tracing system, for more details please see the Network section below.
NOTE: As with 8.9.0, please refrain from updating all relays simultaneously; instead, we recommend spreading out the rollout over the upcoming weeks to minimize disruptions.
Benchmarking reports relevant to the 8.9.3
release can be found in this post on Cardano Updates.
Known Issues
Haskell Security Advisory
Haskell Security Advisory is a repository of security advisories filed against packages published via Hackage.
cabal-audit output:
Found advisories:
dependency "base" at version 4.19.1.0 is vulnerable for:
HSEC-2023-0007 "readFloat: memory exhaustion with large exponent"
published: 2024-05-04 20:52:44 +0200
https://haskell.github.io/security-advisories/advisory/HSEC-2023-0007
No fix version available
toml, parser, dos
dependency "process" at version 1.6.18.0 is vulnerable for:
HSEC-2024-0003 "process: command injection via argument list on Windows"
published: 2024-05-04 20:52:44 +0200
https://haskell.github.io/security-advisories/advisory/HSEC-2024-0003
Fix available since version 1.6.19.0
windows
Technical Specification
Minimum System Requirements
- An Intel or AMD x86 processor with two or more cores, at 1.6GHz or faster (2GHz or faster for a stake pool or relay)
- Or, for MacOS, an Apple Silicon (M1, M2 or M3) processor
- 24GB of RAM
- 200GB of free storage (250GB recommended for future growth)
Platforms
- Linux 64-bit (Ubuntu 18.04 LTS, 20.04 LTS; Mint 19.3, 20; Debian 10.3)
- Windows 64-bit (8.1, 10, 11)
- MacOS 10.13, 10.14, 10.15, 11
GHC/Cabal supported versions
- GHC 8.10.7/Cabal 3.8.1.0
Supported roles
Platform | Block Production | Relay | Client (Desktop) |
---|---|---|---|
Linux | 🟢 | 🟢 | 🟢 |
Windows | 🟥 | 🟥 | 🟢 |
MacOS | 🟥 | 🟥 | 🟢 |
Downloads
Documentation
- Cardano Node documentation
- Cardano CLI
- Internal API docs for ledger, consensus and network
- Compatibility matrix
Sign off
Role | Approval |
---|---|
Cardano Head of Engineering | 🟢 |
Cardano Head of Product | 🟢 |
Test Engineer | 🟢 |
Performance Engineer | 🟢 |
Site Reliability Engineer | 🟢 |
Release Engineer | 🟢 |
Changelogs
Node
NONE
Consensus
NONE
Ledger
Network
For a full list of network features included in this release check ouroboros-network-0.15.0.0
in this table.
new EKG counters
The following counters are exposed by EKG through prometheus
. New counters were annoucent recently in this update.
We still support the peer selection counters, which were exposed previously. However, they might be removed in one of the future releases.
Legacy tracing system
Peer Selection Counters
cardano.node.metrics.peerSelection.RootPeers
cardano.node.metrics.peerSelection.KnownPeers
cardano.node.metrics.peerSelection.ColdPeersPromotions
cardano.node.metrics.peerSelection.EstablishedPeers
cardano.node.metrics.peerSelection.WarmPeersDemotions
cardano.node.metrics.peerSelection.WarmPeersPromotions
cardano.node.metrics.peerSelection.ActivePeers
cardano.node.metrics.peerSelection.ActivePeersDemotions
cardano.node.metrics.peerSelection.KnownBigLedgerPeers
cardano.node.metrics.peerSelection.ColdBigLedgerPeersPromotions
cardano.node.metrics.peerSelection.EstablishedBigLedgerPeers
cardano.node.metrics.peerSelection.WarmBigLedgerPeersDemotions
cardano.node.metrics.peerSelection.WarmBigLedgerPeersPromotions
cardano.node.metrics.peerSelection.ActiveBigLedgerPeers
cardano.node.metrics.peerSelection.ActiveBigLedgerPeersDemotions
cardano.node.metrics.peerSelection.KnownLocalRootPeers
cardano.node.metrics.peerSelection.EstablishedLocalRootPeers
cardano.node.metrics.peerSelection.WarmLocalRootPeersPromotions
cardano.node.metrics.peerSelection.ActiveLocalRootPeers
cardano.node.metrics.peerSelection.ActiveLocalRootPeersDemotions
cardano.node.metrics.peerSelection.KnownNonRootPeers
cardano.node.metrics.peerSelection.ColdNonRootPeersPromotions
cardano.node.metrics.peerSelection.EstablishedNonRootPeers
cardano.node.metrics.peerSelection.WarmNonRootPeersDemotions
cardano.node.metrics.peerSelection.WarmNonRootPeersPromotions
cardano.node.metrics.peerSelection.ActiveNonRootPeers
cardano.node.metrics.peerSelection.ActiveNonRootPeersDemotions
cardano.node.metrics.peerSelection.KnownBootstrapPeers
cardano.node.metrics.peerSelection.ColdBootstrapPeersPromotions
cardano.node.metrics.peerSelection.EstablishedBootstrapPeers
cardano.node.metrics.peerSelection.WarmBootstrapPeersDemotions
cardano.node.metrics.peerSelection.WarmBootstrapPeersPromotions
cardano.node.metrics.peerSelection.ActiveBootstrapPeers
cardano.node.metrics.peerSelection.ActiveBootstrapPeersDemotions
Churn Counters
cardano.node.metrics.peerSelection.churn.DecreasedActivePeers
cardano.node.metrics.peerSelection.churn.IncreasedActivePeers
cardano.node.metrics.peerSelection.churn.DecreasedActiveBigLedgerPeers
cardano.node.metrics.peerSelection.churn.IncreasedActiveBigLedgerPeers
cardano.node.metrics.peerSelection.churn.DecreasedEstablishedPeers
cardano.node.metrics.peerSelection.churn.IncreasedEstablishedPeers
cardano.node.metrics.peerSelection.churn.IncreasedEstablishedBigLedgerPeers
cardano.node.metrics.peerSelection.churn.DecreasedEstablishedBigLedgerPeers
cardano.node.metrics.peerSelection.churn.DecreasedKnownPeers
cardano.node.metrics.peerSelection.churn.IncreasedKnownPeers
cardano.node.metrics.peerSelection.churn.DecreasedKnownBigLedgerPeers
cardano.node.metrics.peerSelection.churn.IncreasedKnownBigLedgerPeers
New tracing system
Peer Seleection Counters
Net.PeerSelection.RootPeers
Net.PeerSelection.KnownPeers
Net.PeerSelection.ColdPeersPromotions
Net.PeerSelection.EstablishedPeers
Net.PeerSelection.WarmPeersDemotions
Net.PeerSelection.WarmPeersPromotions
Net.PeerSelection.ActivePeers
Net.PeerSelection.ActivePeersDemotions
Net.PeerSelection.KnownBigLedgerPeers
Net.PeerSelection.ColdBigLedgerPeersPromotions
Net.PeerSelection.EstablishedBigLedgerPeers
Net.PeerSelection.WarmBigLedgerPeersDemotions
Net.PeerSelection.WarmBigLedgerPeersPromotions
Net.PeerSelection.ActiveBigLedgerPeers
Net.PeerSelection.ActiveBigLedgerPeersDemotions
Net.PeerSelection.KnownLocalRootPeers
Net.PeerSelection.EstablishedLocalRootPeers
Net.PeerSelection.WarmLocalRootPeersPromotions
Net.PeerSelection.ActiveLocalRootPeers
Net.PeerSelection.ActiveLocalRootPeersDemotions
Net.PeerSelection.KnownNonRootPeers
Net.PeerSelection.ColdNonRootPeersPromotions
Net.PeerSelection.EstablishedNonRootPeers
Net.PeerSelection.WarmNonRootPeersDemotions
Net.PeerSelection.WarmNonRootPeersPromotions
Net.PeerSelection.ActiveNonRootPeers
Net.PeerSelection.ActiveNonRootPeersDemotions
Net.PeerSelection.KnownBootstrapPeers
Net.PeerSelection.ColdBootstrapPeersPromotions
Net.PeerSelection.EstablishedBootstrapPeers
Net.PeerSelection.WarmBootstrapPeersDemotions
Net.PeerSelection.WarmBootstrapPeersPromotions
Net.PeerSelection.ActiveBootstrapPeers
Net.PeerSelection.ActiveBootstrapPeersDemotions
Churn Counters
Net.Churn.DecreasedActivePeers
Net.Churn.IncreasedActivePeers
Net.Churn.DecreasedActiveBigLedgerPeers
Net.Churn.IncreasedActiveBigLedgerPeers
Net.Churn.DecreasedEstablishedPeers
Net.Churn.IncreasedEstablishedPeers
Net.Churn.IncreasedEstablishedBigLedgerPeers
Net.Churn.DecreasedEstablishedBigLedgerPeers
Net.Churn.DecreasedKnownPeers
Net.Churn.IncreasedKnownPeers
Net.Churn.DecreasedKnownBigLedgerPeers
Net.Churn.IncreasedKnownBigLedgerPeers
Cardano-cli
NONE
Cardano-api
NONE
Submit-api
NONE
Plutus
NONE
Individual packages' changelogs
Package | Version | Changelog |
---|---|---|
Win32-network | 0.1.1.1 | ChangeLog.md |
base-deriving-via | 0.1.0.2 | CHANGELOG.md |
byron-spec-chain | 1.0.0.2 | CHANGELOG.md |
byron-spec-ledger | 1.0.0.2 | CHANGELOG.md |
cardano-api | 8.39.3.0 | CHANGELOG.md |
cardano-binary | 1.7.1.0 | CHANGELOG.md |
cardano-cli | 8.20.3.0 | CHANGELOG.md |
cardano-crypto | 1.1.2 | |
cardano-crypto-class | 2.1.4.0 | CHANGELOG.md |
cardano-crypto-praos | 2.1.2.0 | CHANGELOG.md |
cardano-crypto-test | 1.5.0.1 | |
cardano-crypto-tests | 2.1.2.0 | CHANGELOG.md |
cardano-crypto-wrapper | 1.5.1.1 | CHANGELOG.md |
cardano-data | 1.2.1.0 | CHANGELOG.md |
cardano-ledger-allegra | 1.3.0.0 | CHANGELOG.md |
cardano-ledger-alonzo | 1.6.0.0 | CHANGELOG.md |
cardano-ledger-alonzo-test | 1.2.0.0 | CHANGELOG.md |
cardano-ledger-api | 1.8.0.0 | CHANGELOG.md |
cardano-ledger-babbage | 1.6.0.0 | CHANGELOG.md |
cardano-ledger-babbage-test | 1.2.0.0 | CHANGELOG.md |
cardano-ledger-binary | 1.3.0.0 | CHANGELOG.md |
cardano-ledger-byron | 1.0.0.4 | CHANGELOG.md |
cardano-ledger-byron-test | 1.5.0.1 | |
cardano-ledger-conway | 1.12.0.0 | CHANGELOG.md |
cardano-ledger-conway-test | 1.2.1.3 | CHANGELOG.md |
cardano-ledger-core | 1.10.0.0 | CHANGELOG.md |
cardano-ledger-mary | 1.5.0.0 | CHANGELOG.md |
cardano-ledger-shelley | 1.9.0.0 | CHANGELOG.md |
cardano-ledger-shelley-ma-test | 1.2.1.6 | CHANGELOG.md |
cardano-ledger-shelley-test | 1.3.0.1 | CHANGELOG.md |
cardano-ping | 0.2.0.13 | CHANGELOG.md |
cardano-prelude | 0.1.0.4 | ChangeLog.md |
cardano-prelude-test | 0.1.0.2 | |
cardano-protocol-tpraos | 1.1.0.0 | CHANGELOG.md |
cardano-slotting | 0.1.2.0 | CHANGELOG.md |
cardano-strict-containers | 0.1.3.0 | CHANGELOG.md |
contra-tracer | 0.1.0.2 | |
ekg | 0.4.0.15.0.0.0.0.2 | CHANGELOG.md |
ekg-core | 0.1.1.7.0.0.0.0.1 | CHANGELOG.md |
ekg-forward | 0.5 | CHANGELOG.md |
ekg-json | 0.1.0.7.0.0.0.0.2 | CHANGELOG.md |
fs-api | 0.2.0.1 | CHANGELOG.md |
fs-sim | 0.2.1.1 | CHANGELOG.md |
heapwords | 0.1.0.2 | CHANGELOG.md |
iohk-monitoring | 0.1.11.4 | |
lobemo-backend-aggregation | 0.1.0.0 | |
lobemo-backend-ekg | 0.1.0.1 | |
lobemo-backend-monitoring | 0.1.0.0 | |
lobemo-backend-trace-forwarder | 0.1.0.0 | |
lobemo-scribe-systemd | 0.1.0.0 | |
measures | 0.1.0.2 | CHANGELOG.md |
monoidal-synchronisation | 0.1.0.5 | CHANGELOG.md |
network-mux | 0.4.5.1 | CHANGELOG.md |
non-integral | 1.0.0.0 | CHANGELOG.md |
optparse-applicative-fork | 0.18.1.0 | CHANGELOG.md |
ouroboros-consensus | 0.16.0.0 | CHANGELOG.md |
ouroboros-consensus-cardano | 0.14.1.0 | CHANGELOG.md |
ouroboros-consensus-diffusion | 0.14.0.0 | CHANGELOG.md |
ouroboros-consensus-protocol | 0.7.0.0 | CHANGELOG.md |
ouroboros-network | 0.15.0.0 | CHANGELOG.md |
ouroboros-network-api | 0.7.1.0 | CHANGELOG.md |
ouroboros-network-framework | 0.13.0.0 | CHANGELOG.md |
ouroboros-network-mock | 0.1.1.1 | CHANGELOG.md |
ouroboros-network-protocols | 0.8.1.0 | CHANGELOG.md |
ouroboros-network-testing | 0.6.0.1 | CHANGELOG.md |
plutus-core | 1.21.0.0 | CHANGELOG.md |
plutus-ledger-api | 1.21.0.0 | CHANGELOG.md |
plutus-tx | 1.21.0.0 | CHANGELOG.md |
prettyprinter-configurable | 1.21.0.0 | |
set-algebra | 1.1.0.2 | CHANGELOG.md |
small-steps | 1.0.1.0 | CHANGELOG.md |
small-steps-test | 1.0.1.0 | CHANGELOG.md |
sop-extras | 0.1.0.0 | CHANGELOG.md |
strict-checked-vars | 0.2.0.0 | CHANGELOG.md |
strict-sop-core | 0.1.0.0 | CHANGELOG.md |
tracer-transformers | 0.1.0.4 | |
typed-protocols | 0.1.1.0 | CHANGELOG.md |
typed-protocols-cborg | 0.1.0.4 | CHANGELOG.md |
typed-protocols-examples | 0.2.0.2 | |
vector-map | 1.1.0.0 | CHANGELOG.md |
Legend
-
🟢 - signed / agreed / supported
-
🟥 - not agreed / unsupported