Node 10.5.1
provides a number of improvements over node 10.5.0
. In particular, the Tracing system fixes the slotsMissed_int
metric, while networking improvements include Windows socket fixes, reduced caching time of DNS lookup errors, refined PeerSharing
configuration behavior (see networking changes below for details), and the deprecation of --non-producer-node
in favor of --start-as-non-producer-node
command line switch for starting the node. This release also removes a number of irrelevant binaries from the Node artifacts and adds tx-generator
.
Benchmarking reports relevant to the 10.5.1
release can be found in this post on Cardano Updates.
System testing results for the 10.5.1
release can be found on the corresponding tag testing page.
Please note the changed default behavior for PeerSharing
for relay nodes, but not for block producers. This reflects the recommendations for mainnet usage -- mainnet block producers may not meet the Praos performance guarantees if PeerSharing
is enabled and IP will also be leaked, but this is not an issue for relays.
Known issues
- There is a known bug when starting from a Byron snapshot. The node will reject the snapshot and replay the chain from the start. However the time it takes to replay the Byron era is small, and very few users are expected to need to start the node from a Byron snapshot. Therefore the issue will be fixed in 10.6.0.
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, M3 or M4) processor
- 24GB of RAM when running with the
InMemory
backend, 8GB when running with theOnDisk
backend (pending confirmation) - 300GB of free storage (350GB recommended for future growth)
Platforms
- Linux 64-bit (Ubuntu 20.04 LTS, 22.04 LTS, 24.04 LTS; Mint 20, 21, 21.1, 21.2, 21.3, 22, 22.1; Debian 11, 12)
- Windows 64-bit (10, 11)
- MacOS 10.15, 11 (Big Sur), 12 (Monterey), 13 (Ventura), 14 (Sonoma), 15 (Sequioa)
GHC/Cabal supported versions
- GHC 9.6
- Cabal 3.8/3.12
Supported roles
Platform | Block Production | Relay | Client (Desktop) |
---|---|---|---|
Linux | 🟢 | 🟢 | 🟢 |
Windows | 🟥 | 🟥 | 🟢 |
MacOS | 🟥 | 🟥 | 🟢 |
Downloads
Documentation
- Cardano Node documentation
- For details about changes to configuration for
UTxO-HD
please refer to the Consensus docs on UTxO-HD - The getting started guide may also be helpful for general queries.
- Networking options and related changes are listed on the P2P section
- For details about changes to configuration for
- Cardano CLI
- Internal API docs for ledger, consensus and network
- Compatibility matrix
Sign-off
Role | Approval |
---|---|
Technical Steering Committee (Intersect) | 🟢 |
Product Committee (Intersect) | 🟢 |
Test Engineer | 🟢 |
Performance Engineer | 🟢 |
Site Reliability Engineer | 🟢 |
Release Engineer | 🟢 |
Legend
- 🟢 - signed / agreed / supported
- 🟥 - not agreed / unsupported
Changelogs
Node
- Some irrelevant binaries have been removed from the release binary artifacts, and
tx-generator
added.
Tracing
- New Tracing System: fixed
slotsMissed_int
metric
Consensus
- No changes
Ledger
- No changes
Network
- Fixed an issue on Windows: setting unsupported Windows socket option which resulted in connections being torn down
- Lowered the time of caching DNS lookup errors to at most 15 minutes
- Allow
PeerSharing
inInitiatorOnlyDiffusionMode
- The default value of
PeerSharing
configuration parameter depends on whether the node is configured as a block producer (=PeerSharingDisabled
) or a relay (=PeerSharingEnabled
) for normal operations. For this purpose, the node is considered a BP if any of the protocol files are present at startup. The default can be overridden by explicitly setting thePeerSharing
key in the configuration file to the desired value.
CLI
- No changes
API
- No changes
Submit API
- No changes
Plutus
- No changes
Detailed Changelogs
Individual packages' changelogs
Package changelogsPackage | Version | Changelog |
---|---|---|
Win32-network | 0.2.0.1 | ChangeLog.md |
base-deriving-via | 0.1.0.2 | CHANGELOG.md |
byron-spec-chain | 1.0.1.0 | CHANGELOG.md |
byron-spec-ledger | 1.1.0.0 | CHANGELOG.md |
cardano-api | 10.16.3.0 | CHANGELOG.md |
cardano-binary | 1.7.1.0 | CHANGELOG.md |
cardano-cli | 10.11.0.0 | CHANGELOG.md |
cardano-crypto-class | 2.2.2.0 | CHANGELOG.md |
cardano-crypto-praos | 2.2.1.0 | CHANGELOG.md |
cardano-crypto-test | 1.6.0.0 | CHANGELOG.md |
cardano-crypto-tests | 2.2.1.0 | CHANGELOG.md |
cardano-crypto-wrapper | 1.6.0.0 | CHANGELOG.md |
cardano-data | 1.2.4.0 | CHANGELOG.md |
cardano-git-rev | 0.2.2.0 | |
cardano-ledger-allegra | 1.7.0.0 | CHANGELOG.md |
cardano-ledger-alonzo | 1.13.0.0 | CHANGELOG.md |
cardano-ledger-alonzo-test | 1.3.1.0 | CHANGELOG.md |
cardano-ledger-api | 1.11.0.0 | CHANGELOG.md |
cardano-ledger-babbage | 1.11.0.0 | CHANGELOG.md |
cardano-ledger-babbage-test | 1.3.1.0 | CHANGELOG.md |
cardano-ledger-binary | 1.6.0.0 | CHANGELOG.md |
cardano-ledger-byron | 1.1.0.0 | CHANGELOG.md |
cardano-ledger-byron-test | 1.5.2.1 | CHANGELOG.md |
cardano-ledger-conway | 1.19.0.0 | CHANGELOG.md |
cardano-ledger-conway-test | 1.3.1.0 | CHANGELOG.md |
cardano-ledger-core | 1.17.0.0 | CHANGELOG.md |
cardano-ledger-mary | 1.8.0.0 | CHANGELOG.md |
cardano-ledger-shelley | 1.16.0.0 | CHANGELOG.md |
cardano-ledger-shelley-ma-test | 1.3.0.0 | CHANGELOG.md |
cardano-ledger-shelley-test | 1.6.0.0 | CHANGELOG.md |
cardano-lmdb | 0.4.0.3 | CHANGELOG.md |
cardano-lmdb-simple | 0.8.0.1 | CHANGELOG.md |
cardano-ping | 0.8.0.1 | CHANGELOG.md |
cardano-prelude | 0.2.1.0 | ChangeLog.md |
cardano-prelude-test | 0.1.0.5 | |
cardano-protocol-tpraos | 1.4.0.0 | CHANGELOG.md |
cardano-slotting | 0.2.0.0 | CHANGELOG.md |
cardano-strict-containers | 0.1.4.0 | CHANGELOG.md |
contra-tracer | 0.1.0.1 | |
cuddle | 0.3.2.1 | CHANGELOG.md |
diff-containers | 1.3.0.0 | CHANGELOG.md |
ekg-forward | 0.9 | CHANGELOG.md |
fingertree-rm | 1.0.0.4 | CHANGELOG.md |
heapwords | 0.1.0.2 | CHANGELOG.md |
iohk-monitoring | 0.2.1.1 | |
lobemo-backend-aggregation | 0.1.0.0 | |
lobemo-backend-ekg | 0.2.0.0 | |
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.6 | CHANGELOG.md |
network-mux | 0.8.0.1 | CHANGELOG.md |
non-integral | 1.0.0.0 | CHANGELOG.md |
optparse-applicative-fork | 0.18.1.0 | CHANGELOG.md |
ouroboros-consensus | 0.27.0.0 | CHANGELOG.md |
ouroboros-consensus-cardano | 0.25.1.0 | CHANGELOG.md |
ouroboros-consensus-diffusion | 0.23.0.0 | CHANGELOG.md |
ouroboros-consensus-protocol | 0.12.0.0 | CHANGELOG.md |
ouroboros-network | 0.21.2.0 | CHANGELOG.md |
ouroboros-network-api | 0.14.0.0 | CHANGELOG.md |
ouroboros-network-framework | 0.18.0.1 | CHANGELOG.md |
ouroboros-network-mock | 0.1.1.2 | CHANGELOG.md |
ouroboros-network-protocols | 0.14.0.1 | CHANGELOG.md |
ouroboros-network-testing | 0.8.1.0 | CHANGELOG.md |
plutus-core | 1.45.0.0 | CHANGELOG.md |
plutus-ledger-api | 1.45.0.0 | CHANGELOG.md |
plutus-tx | 1.45.0.0 | CHANGELOG.md |
plutus-tx-plugin | 1.45.0.0 | CHANGELOG.md |
prettyprinter-configurable | 1.36.0.0 | |
quickcheck-monoids | 0.1.0.1 | CHANGELOG.md |
set-algebra | 1.1.0.3 | CHANGELOG.md |
small-steps | 1.1.1.0 | CHANGELOG.md |
sop-extras | 0.4.0.0 | CHANGELOG.md |
strict-checked-vars | 0.2.0.0 | CHANGELOG.md |
strict-sop-core | 0.1.3.0 | CHANGELOG.md |
tracer-transformers | 0.1.0.4 | |
typed-protocols | 0.3.0.0 | CHANGELOG.md |
typed-protocols-cborg | 0.3.0.0 | CHANGELOG.md |
typed-protocols-examples | 0.5.0.0 | |
typed-protocols-stateful | 0.3.0.0 | |
typed-protocols-stateful-cborg | 0.3.0.0 | ChangeLog.md |
validation-selective | 0.2.0.0.0.0.0.0.1 | CHANGELOG.md |
vector-map | 1.1.0.0 | CHANGELOG.md |