Cardano Node 8.12.1
Node 8.12.1
fixes an issue that could lead to high system load when specific transactions were submitted to Cardano.
It also includes all the changes from node 8.12.0-pre
and 8.11.0-pre
that have been made since node 8.9.3
.
Specifically, node 8.12.1
includes essential changes and fixes that are needed for the Chang hard fork. It provides an implementation of CIP-69 for Plutus v3 (only). Existing Plutus v3 scripts will therefore need to be changed. Most existing Plutus V1 or V2 scripts will continue to compile without errors, modulo some minor changes in the PlutusTx.Prelude
functionality (namely the check
function) that was needed to implement CIP-117. The hardfork combinator (HFC) has been made more robust and governance actions have been limited for the bootstrap phase. The PlutusV3
cost model has been added to the Conway
genesis file. Network code includes further peer sharing improvements and changes that are related to inbound and outbound governors. Modifications have also been made to the Praos chain order. New API features include the possibility to query the account state, and to estimate and calculate balanced TxBody
s. Finally, three new CLI commands have been introduced: governance action create-hardfork
to generate a hard fork governance action, transaction build-estimate
, to produce a balanced transaction body without requiring a connection to a live node, and debug log-epoch-state
to record the epoch state. The node also includes a number of bug fixes and performance improvements.
For full details of changes since 8.9.3 also review:
https://github.com/IntersectMBO/cardano-node/releases/tag/8.11.0-pre
https://github.com/IntersectMBO/cardano-node/releases/tag/8.10.0-pre
Benchmarking reports relevant to the 8.12.1
release can be found in this post on Cardano Updates.
State Snapshot
Until mithril snapshots for 8.12.1 are available, an 8.12.1 state tarball, detached GPG signature and sha256sum are available here:
https://update-cardano-mainnet.iohk.io/cardano-node-state/db-mainnet-8-12-1-slot-127934016.tar.zstd
https://update-cardano-mainnet.iohk.io/cardano-node-state/db-mainnet-8-12-1-slot-127934016.tar.zstd.asc
https://update-cardano-mainnet.iohk.io/cardano-node-state/db-mainnet-8-12-1-slot-127934016.tar.zstd.sha256sum
Known Issues
Bootstrap Peers
A networking issue has been reported relating to bootstrap peers. Until this is resolved, it is recommended either to run the node with this disabled in the configuration file, or to use node version 8.9.4
, which is unaffected by the issue.
To disable bootstrap peers, remove the bootstrap peer section from the topology file and use the following publicRoots
section:
"publicRoots": [
{
"accessPoints": [
{
"address": "backbone.cardano.iog.io",
"port": 3001
},
{
"address": "backbone.mainnet.emurgornd.com",
"port": 3001
},
{
"address": "backbone.mainnet.cardanofoundation.org",
"port": 3001
}
],
"advertise": false
}
],
IntersectMBO/ouroboros-network#4898
Transaction Build CLI Command
The transaction build
CLI command no longer checks the datum that is provided for PlutusV1
and PlutusV2
scripts.
If the datum is missing or incorrect, then the transaction will now be built, but will fail when submitted on chain, as expected.
https://github.com/IntersectMBO/cardano-ledger/issues/4444
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
- New metric
cardano_build_info
, using label syntax ({x="a", y="b", ...}
) to provide detailed build info about the Node binary. (since 8.12.0) - New metric
forging_enabled
, indicating whether the Node's protocol has been instantiated with forger credentials or not. (since 8.12.0)
Consensus
- Enforce Conway minfees for ref scripts in the mempool, even in Babbage
Ledger
- Add
tierRefScriptFee
andtxNonDistinctRefScriptsSize
- Make reference scripts fee grow exponentially with size
Network
- Fix
InboundGovernorCounters
Cardano-cli
NONE
Cardano-api
NONE
Submit-api
NONE
Plutus
NONE
Individual packages' changelogs
Package | Version | Changelog |
---|---|---|
Win32-network | 0.2.0.0 | ChangeLog.md |
base-deriving-via | 0.1.0.2 | CHANGELOG.md |
byron-spec-chain | 1.0.1.0 | CHANGELOG.md |
byron-spec-ledger | 1.0.1.0 | CHANGELOG.md |
cardano-api | 8.48.0.1 | CHANGELOG.md |
cardano-binary | 1.7.1.0 | CHANGELOG.md |
cardano-cli | 8.24.0.0 | CHANGELOG.md |
cardano-crypto | 1.1.2 | |
cardano-crypto-class | 2.1.5.0 | CHANGELOG.md |
cardano-crypto-praos | 2.1.2.0 | CHANGELOG.md |
cardano-crypto-test | 1.5.0.2 | |
cardano-crypto-tests | 2.1.2.0 | CHANGELOG.md |
cardano-crypto-wrapper | 1.5.1.2 | CHANGELOG.md |
cardano-data | 1.2.2.0 | CHANGELOG.md |
cardano-git-rev | 0.2.2.0 | |
cardano-ledger-allegra | 1.5.0.0 | CHANGELOG.md |
cardano-ledger-alonzo | 1.9.0.0 | CHANGELOG.md |
cardano-ledger-alonzo-test | 1.2.1.2 | CHANGELOG.md |
cardano-ledger-api | 1.9.2.0 | CHANGELOG.md |
cardano-ledger-babbage | 1.8.1.0 | CHANGELOG.md |
cardano-ledger-babbage-test | 1.2.0.3 | CHANGELOG.md |
cardano-ledger-binary | 1.3.3.0 | CHANGELOG.md |
cardano-ledger-byron | 1.0.1.0 | CHANGELOG.md |
cardano-ledger-byron-test | 1.5.1.1 | CHANGELOG.md |
cardano-ledger-conway | 1.15.1.0 | CHANGELOG.md |
cardano-ledger-conway-test | 1.2.1.6 | CHANGELOG.md |
cardano-ledger-core | 1.13.1.0 | CHANGELOG.md |
cardano-ledger-mary | 1.6.1.0 | CHANGELOG.md |
cardano-ledger-shelley | 1.12.1.0 | CHANGELOG.md |
cardano-ledger-shelley-ma-test | 1.2.2.2 | CHANGELOG.md |
cardano-ledger-shelley-test | 1.4.0.2 | CHANGELOG.md |
cardano-ping | 0.2.0.14 | CHANGELOG.md |
cardano-prelude | 0.2.0.0 | ChangeLog.md |
cardano-prelude-test | 0.1.0.3 | |
cardano-protocol-tpraos | 1.2.0.1 | CHANGELOG.md |
cardano-slotting | 0.2.0.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 | |
libsystemd-journal | 1.4.5.0.0.0.0.1 | Changelog.md |
lobemo-backend-aggregation | 0.1.0.0 | |
lobemo-backend-ekg | 0.1.1.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.5 | CHANGELOG.md |
network-mux | 0.4.5.2 | CHANGELOG.md |
non-integral | 1.0.0.0 | CHANGELOG.md |
optparse-applicative-fork | 0.18.1.0 | CHANGELOG.md |
ouroboros-consensus | 0.19.1.0 | CHANGELOG.md |
ouroboros-consensus-cardano | 0.17.1.0 | CHANGELOG.md |
ouroboros-consensus-diffusion | 0.17.0.1 | CHANGELOG.md |
ouroboros-consensus-protocol | 0.9.0.1 | CHANGELOG.md |
ouroboros-network | 0.16.1.0 | CHANGELOG.md |
ouroboros-network-api | 0.7.3.0 | CHANGELOG.md |
ouroboros-network-framework | 0.13.2.1 | CHANGELOG.md |
ouroboros-network-mock | 0.1.1.1 | CHANGELOG.md |
ouroboros-network-protocols | 0.9.0.0 | CHANGELOG.md |
ouroboros-network-testing | 0.6.2.0 | CHANGELOG.md |
plutus-core | 1.30.0.0 | CHANGELOG.md |
plutus-ledger-api | 1.30.0.0 | CHANGELOG.md |
plutus-tx | 1.30.0.0 | CHANGELOG.md |
prettyprinter-configurable | 1.30.0.0 | |
quickcheck-monoids | 0.1.0.0 | CHANGELOG.md |
set-algebra | 1.1.0.3 | CHANGELOG.md |
small-steps | 1.1.0.0 | CHANGELOG.md |
sop-extras | 0.2.0.0 | CHANGELOG.md |
strict-checked-vars | 0.2.0.0 | CHANGELOG.md |
strict-sop-core | 0.1.1.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 | |
validation-selective | 0.2.0.0.0.0.0.0.1 | CHANGELOG.md |
vector-map | 1.1.0.0 | CHANGELOG.md |
Legend
-
🟢 - signed / agreed / supported
-
🟥 - not agreed / unsupported