Skip to content

Cardano Node 8.9.3

Compare
Choose a tag to compare
@coot coot released this 28 May 18:07
· 703 commits to master since this release

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

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