Use this release instead of m1.1.1. The m1.1.1 artifacts were built against glibc 2.39 and require GLIBC_2.38, so they do not start on Ubuntu 20.04 or 22.04:
gmet: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found
The source is unchanged. m1.1.2 is the same code built so that it runs on every distribution in the deployment fleet.
| Activation block | 117,764,000 (authoritative) |
| Expected time | around 2026-08-27 12:15 KST (approximate — height-based activation drifts with block time) |
| Version | 1.1.2-stable |
| Minimum OS | Ubuntu 20.04 or newer (glibc 2.31+) |
All mainnet node operators must upgrade before the activation block. Nodes running older binaries will follow a diverging chain.
What changed since m1.1.1
Build only. params/config.go is untouched, so fork blocks and consensus rules are identical.
- Release artifacts are built on Ubuntu 20.04 (focal), the oldest distribution in the fleet, instead of on whatever the release host happened to run. A binary built there runs on that release and every newer one; the reverse does not hold.
- libstdc++ is linked statically, so the RocksDB artifact carries no
GLIBCXX/CXXABIrequirement at all. Development builds keep the shared library and are unaffected. make release-checknow refuses artifacts that reference a glibc newer than the fleet's oldest distribution, or that link libstdc++ dynamically. It runs automatically as part ofmake gmet-linux, so this class of defect fails the build rather than reaching a release.VersionPatch1 → 2, and the documentation that told operators to use the m1.1.1 asset now names m1.1.2.
Measured on the published artifacts:
| artifact | max GLIBC | GLIBCXX / CXXABI |
|---|---|---|
| rocksdb | GLIBC_2.30 |
none |
| leveldb | GLIBC_2.17 |
none |
What Camellia activates
Unchanged from m1.1.1 — Ethereum's Shanghai and Cancun EIPs in a single upgrade, running on Metadium testnet since block 86,449,000 (2026-05-20) with no incidents:
| EIP | Feature |
|---|---|
| EIP-3855 | PUSH0 opcode |
| EIP-3860 | Limit and meter initcode |
| EIP-1153 | Transient storage (TSTORE/TLOAD) |
| EIP-4844 | Blob transactions |
| EIP-5656 | MCOPY |
| EIP-6780 | SELFDESTRUCT only in same transaction |
| EIP-4788 | Beacon block root in the EVM |
Everything listed under "Also in this release" in the m1.1.1 notes is in this build as well — shutdown reliability, systemd units, 32-bit portability, the restored 256KB txpool ceiling, and the metclient.SendValue signature change.
Upgrade
The operator documentation for this release is the README at the release tag:
Upgrading from 0.10.x
is the full ten-item checklist the warnings below are drawn from, and
Node Configuration Reference
documents every .rc knob with its default, with a worked example for an
exchange or API full node. Both are pinned to the m1.1.2 tag, so they
describe this build rather than whatever master holds later.
Corruption: Unknown Footer version. Reverting then requires restoring chain data and resyncing, so back up or budget resync time before upgrading from anything older than 0.10.2.
static-nodes.json is ignored on 1.1.x. Nodes that pin peers through geth/static-nodes.json must move them to P2P.StaticNodes in config.toml; the file is read, reported as deprecated, and otherwise skipped. Nodes using discovery are unaffected.
petersburgBlock dropped) that rewinds a 0.10.x node's chain to block 5,622,999 (~80M-block resync) on first start. Testnet nodes must also be started with --metadium-testnet (or TESTNET=1 in the node's .rc) for compiled-in config updates, including the Camellia fork block, to apply.
--syncmode that starts on Metadium networks is full — light is gone from the tree, and snap/fast are deliberately rejected. For fast new-node bring-up, bootstrap from the published chain snapshot. The personal RPC namespace is disabled by default; nodes whose tooling uses personal_* must start with --rpc.enabledeprecatedpersonal.
HTTP_ADDR=0.0.0.0 and WS_ADDR=0.0.0.0 in their per-node .rc before restarting — the default bind is now loopback. An in-place upgrade without these knobs silently stops external serving.
# per node (engine-matched tarball!):
cd /opt/meta
bin/gmet.sh stop # graceful; never kill -9
tar xzvf metadium-1.1.2-linux-<leveldb|rocksdb>.tar.gz
bin/gmet version # run this BEFORE starting: it fails immediately
# if the binary cannot run on this host
# expect 1.1.2-stable; verify the Git Commit line
# matches this release
bin/gmet.sh start
grep -m1 Camellia logs/log # fork config prints at chain init -- expect
# the Camellia activation height
The chain data archives at packages.metadium.com are produced by a node running m1.1.x and require m1.1.2 or newer. Operators still on 0.10.x should use metadium-mainnet-chaindata-rocksdb-20260809130001.tar.gz.
Deploying before the activation block is safe: the fork activates automatically at the block height.
Assets
metadium-1.1.2-linux-leveldb.tar.gz— md59d4b711f38b27f50ee37dcad2054bc01metadium-1.1.2-linux-rocksdb.tar.gz— md5e043c5e16bb26ec6d0810b59ae8b7165
Built from commit 2f50ace367d02b6b309cbd1b469decd2a8c23103.
Self-builders: the release build is make gmet-linux, described under
Release artifacts.