Skip to content

Cardano Node 8.12.1

Compare
Choose a tag to compare
@github-actions github-actions released this 27 Jun 14:42
· 348 commits to master since this release
06943b6

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 TxBodys. 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

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 and txNonDistinctRefScriptsSize
  • 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