Skip to content

Agave Transition

steviez edited this page May 15, 2024 · 6 revisions

Overview

Core development of the solana-labs/solana monorepo has transitioned to the anza-xyz/agave fork. For the next few months new commits to the v1.17 and v1.18 branches will be synced from anza-xyz/agave to solana-labs/solana and all releases will be duplicated between the two repos. The release commit hashes don't match between the repos because of crate renames and CI changes, but binaries with matching version numbers are functionally equivalent.

Crates Renamed

Six of the crates have been renamed:

Original Name New Name
solana-validator agave-validator
solana-ledger-tool agave-ledger-tool
solana-watchtower agave-watchtower
solana-install agave-install
solana-geyser-plugin-interface agave-geyser-plugin-interface
solana-cargo-registry agave-cargo-registry

Migration

Releases will continue in parallel until the end of v1.18 at which point the solana-validator releases will be discontinued. Operators should switch to agave-validator before then.

Approximate mainnet-beta rollout date Labs Client Agave
2024-01-15 v1.17 v1.17
2024-04-15 v1.18 v1.18
2024-07-01 - v2.0
2024-10-01 - v2.1

Migration Steps

Operators can switch to Agave any time between now and upgrading to v2.0 (when solana-validator will be discontinued). The exact steps will vary depending on the configuration, but most operators will need these changes:

  • If you build from source, switch to the new repo: anza-xyz/agave.
  • If you use solana-install then switch to agave-install. Use this command for your next upgrade (replace X and Y with the version numbers). After using this once you can use agave-install for subsequent upgrades.
    • sh -c "$(curl -sSfL https://release.anza.xyz/v1.X.Y/install)"
  • Update scripts that reference solana-validator or any of the other renamed binaries.
  • Update systemd configs if they reference the binary names (eg solana-validator exit).
  • If you specify RUST_LOG in your configs update it to include agave. The default is now solana=info,agave=info.

Anza Nodes

Most of Anza's nodes have been migrated to Agave. A handful of canaries are being intentionally held back to catch any bugs that happen when syncing repos.

Mainnet-beta

Node Agave? Node Agave?
bv1 bw1
bv2 bw2
bv3 bw3
bv4 bw4
bw5
be bw6
bt bw7

Devnet

Node Agave? Node Agave?
dv1 dw1
dv2 dw2
dv3
dv4
de
dt

Testnet

Node Agave? Node Agave?
tv tw1
tw2
te
tt

Canaries

mce6, mcb6, mcs6, sce3, scb2, and scs2 are being intentionally held back on solana-validator. The *7 should be switched to agave-validator the next time they need to be restarted (when they fail).

Node Agave? Node Agave? Node Agave?
mce1 mcb1 mcs1
mce2 mcb2 mcs2
mce3 mcb3 mcs3
mce4 mcb4 mcs4
mce5 mcb5 mcs5
mce6 mcb6 mcs6
mce7 mcb7 mcs7
sce1 scb1 scs1
sce2 scb2 scs2
sce3