solana-perf
Solana Performance APIs
4.2.1
8.0M downloads/mo
#3513 most downloaded on crates.io
anza-xyz/agave
What this package is like to depend on
Last release 2 days ago
21 Aug 2026
Ships on a steady schedule
a new release about every 2 weeks
Rarely documented
notes for 10 of 519 stable releases
4 versions withdrawn
withdrawn after publishing
7 years old
548 releases · first in 2019
65 releases in the last 12 months
see the full history below
Release timeline
548 releases · Dec 2019 to Aug 2026Releases
latest 60 of 548-
4.3.0-beta.221 Aug 2026 pre-releaseNothing published for this version
-
4.3.0-beta.121 Aug 2026 pre-release withdrawnRelease notes
Open source →Warning
This release has no binary artifacts and must not be deployed. Use
v4.3.0-beta.2.The build for this tag failed
cargo auditon
RUSTSEC-2026-0258
(h20.4.13), so no Linux, macOS, or Windows assets were produced.
Crates for4.3.0-beta.1were published before the failure was detected and
have since been yanked.Superseded by
v4.3.0-beta.2, which carries the same changes plus the
advisory mitigation.Changes since v4.3.0-beta.0
- v4.3: fix(core): silence dead_code for alpenglow_slot_clock on non-unix (backport of #14542) (#14565)
- v4.3: gossip: wrap epoch slots index after 254 (backport of #14566) (#14571)
- v4.3: [ed25519] bump solana-signature version (backport of #14578) (#14602)
- v4.3: replay: allow execution of leader banks after SwitchBank (backport of #14580) (#14604)
All of the above are included in
v4.3.0-beta.2. -
4.3.0-beta.014 Aug 2026 pre-releaseRelease notes
Open source →What's Changed
- votor: adjust FirstShred modulo gate to account for unaligned migration by @AshwinSekar in #14228
- deps: update wincode to 0.6 and bump interface crates to match by @kskalski in #14214
- bls_sigverify: tightly bound admitted votes to current window + 40 by @AshwinSekar in #14337
- use a custom pool for async verification by @alessandrod in #14128
- votor: fix bug where we can vote skip on the genesis block by @AshwinSekar in #14358
- accounts-db: batch account lt-hashes during index generation by @kskalski in #13773
- bls-sigverify: removes reallocations for datagrams by @akhi3030 in #14373
- rpc: Make Bigtable open failure a fatal error by @steviez in #14363
- bls-sigverifier: adds some stats by @akhi3030 in #14374
- votor: account for group identity in base 4 certificates by @AshwinSekar in #14390
- Sets default incremental snapshot interval to 200 slots by @brooksprumo in #14350
- block id repair: enforce strict proof size check for FecSetRoot by @AshwinSekar in #14359
- Default Minimal index mode to threshold by @roryharr in #14354
- bls sigverify: reduce ban timeout to 10 secs by @AshwinSekar in #13524
- Adding tombstones during flush by @roryharr in #14322
- accounts-db: Removes SortedStorages by @brooksprumo in #14398
- block id repair: only compare the first 20 bytes of fec set roots by @AshwinSekar in #14360
- core: parallelize banking stage ingress checks by @apfitzge in #14129
- votor-transport: make set_identity block until success by @alexpyattaev in #14391
- votor: robust exit by @alexpyattaev in #14389
- votor-transport: close conn when data is sent wrong direction by @gregcusack in #14407
- validator: remove deprecated --tpu-connection-pool-size cli argument by @alexpyattaev in #14366
- Refactor
EntryBytesBudget::reserveby @plafer in #14172 - ag: fix startup replay rooting by @AshwinSekar in #14418
- Fake future parent by @bw-solana in #14408
- bls-sigverify: verify batches of votes in parallel by @akhi3030 in #14380
- votor: reject staked to staked set-identity by @gregcusack in #14396
- feat(accountsdb): use wincode (through StateMutWincode) for account serialization by @kskalski in #14429
- UpdateParent boundary dead by @bw-solana in #14443
- alpenglow: do not advance credits_observed for inactive stakes by @2501babe in #14441
- votor: clear stale state on set-identity by @AshwinSekar in #14450
- Do not accept AG reward certs for tower slots by @akhi3030 in #14430
- bcl: reset entry bytes budget on sad FLH by @AshwinSekar in #14449
- bcl: fix sad handover when switching between duplicate blocks by @AshwinSekar in #14447
- migration: fix hashes per tick bug by @AshwinSekar in #14451
- votor: only write bank hash details if block was finalized by @AshwinSekar in #14456
- votor: bump prealloc limit for vote history by @AshwinSekar in #14459
- feat: use wincode (through StateMutWincode) for account serialization by @kskalski in #14415
- Revert - #13894 (Global program cache entry pruning) by @Lichtso in #14442
- feat(svm): use wincode (through StateMutWincode) for account serialization by @kskalski in #14411
- Adds a manager thread for the async accounts lt hash updates by @brooksprumo in #14073
- Sets
Clock::epoch_start_timestampcorrectly on epoch boundaries by @akhi3030 in #14469 - replay: defer switch bank during leader window by @AshwinSekar in #14481
- transaction types: prep for ALT relaxation by @2501babe in #14446
- program-runtime: increase program cache depth to 1024 by @buffalojoec in #14482
- Remove minimal index option by @roryharr in #14437
- Defer tombstoning zero lamport entries to clean by @roryharr in #14431
- repair: reuse pinnable slices by @alessandrod in #14470
- votor-transport: allow more inflight handshakes by @alexpyattaev in #14464
- Solana SBPF v0.23.0 by @Lichtso in #14487
- blockstore: only mark slot dead for Original column by @AshwinSekar in #14488
- gossip purge duration by @bw-solana in #14455
- votor-transport: scale MAX_INCOMING with number of endpoints by @alexpyattaev in #14439
- svm: slot-based criteria for program cache extract by @buffalojoec in #14484
- blockstore: avoid allocations/page faults by reusing pinnable slices by @alessandrod in #14489
- Revert "replace reserve/refund with track-with-actual-cost in banking-stage (#12986)" by @apfitzge in #14504
- votor-transport: allow unstaked participation by @alexpyattaev in #14440
- xdp: support per-module transmit queue subsets by @efagerho in #14364
- rpc: update health check for alpenglow by @AshwinSekar in #14483
- progress-tracker: alpenglow compatibility by @apfitzge in #14323
- streamer: evict QUIC connections from peers that lost their stake by @stablebits in #14466
- Remove zero lamport single ref by @roryharr in #14495
- rm TCP server in BanksServer by @alexpyattaev in #12056
New Contributors
Full Changelog: v4.3.0-alpha.3...v4.3.0-beta.0
-
4.3.0-alpha.306 Aug 2026 pre-releaseRelease notes
Open source →This is a pre-release for testing only. Do not deploy to mainnet, testnet, or any production host.
https://github.com/anza-xyz/agave/blob/master/CHANGELOG.md#edge-channel
-
4.3.0-alpha.221 Jul 2026 pre-releaseRelease notes
Open source →This is a pre-release for testing only. Do not deploy to mainnet, testnet, or any production host.
https://github.com/anza-xyz/agave/blob/master/CHANGELOG.md#edge-channel
-
4.3.0-alpha.113 Jul 2026 pre-releaseNothing published for this version
-
4.2.113 Aug 2026 -
4.2.007 Aug 2026Release notes
Open source →This a stable release suitable for Testnet, Devnet and Mainnet Beta.
https://github.com/anza-xyz/agave/blob/v4.2/CHANGELOG.md
What's Changed
- v4.2: runtime: do not rewrite inactive stakes (backport of #14213) by @mergify[bot] in #14263
- v4.2: Sets stack size for accounts hasher rayon thread pool (backport of #14295) by @mergify[bot] in #14297
- v4.2: feat: Migrate to spl-token-2022-interface 3.x and parse PermissionedBurn (backport of #13504) by @mergify[bot] in #14009
- v4.2: feat(transaction-status): Parse the token Batch instruction (backport of #13512) by @mergify[bot] in #14259
- v4.2: feat(transaction-status): Parse the permissioned burn ConfidentialBurn instruction (backport of #13511) by @mergify[bot] in #14258
- v4.2: poh: wake replay after controller message completion (backport of #14038) by @mergify[bot] in #14276
- v4.2: Sets default incremental snapshot interval to 200 slots (backport of #14350) by @mergify[bot] in #14393
Full Changelog: v4.2.0-rc.1...v4.2.0
Release notes
Open source →RPC
Breaking
- The
jsonParsedoutput for confidential transferDeposit(depositConfidentialTransfer) andWithdraw(withdrawConfidentialTransfer) instructions has been corrected. These instructions operate on a single token account, so the mislabeledsourceanddestinationfields have been replaced by a singleaccountfield (themintfield is unchanged). - Blockstore reward column legacy format support removed.
- The
Rewardscolumn was updated in v1.5 (Solana Labs client) to switch from storing bincode serialized values to protobuf encoded values. The old bincode format will no longer be supported for fallback reads as of v4.2
- The
Changes
- Added
RpcClient::get_latest_blockhash_with_commitment_and_context, which returns thegetLatestBlockhashresponse together with its context (notablycontext.slot).
Validator
Breaking
- XDP transmit in SKB (copy) mode is now enabled by default on Linux. The validator requires
CAP_NET_ADMINandCAP_NET_RAWcapabilities (plusCAP_BPFandCAP_PERFMONfor--xdp-zero-copy). Pass--no-xdpto fall back to UDP sockets. The XDP CPU core is auto-selected to avoid overlapping the PoH core; passing--xdp-cpu-coreswith a core that conflicts with the PoH core is an error.
Deprecations
--accounts-db-access-storages-methodis now deprecated and a no-op (themmapvalue was deprecated in v4.0.0; mmap mode has now been removed entirely). The flag is still accepted for backward compatibility, but account storages are always accessed via file I/O.--accounts-db-cache-limit-mbis now deprecated. Use--accounts-db-write-cache-limitinstead.--experimental-poh-pinned-cpu-coreis now deprecated. Use--poh-pinned-cpu-coreinstead.
Changes
- Turbine shred ingestion now rejects shreds more than half an epoch in the future (previously up to 2 full epochs ahead was accepted).
- When XDP is enabled, gossip egress does not support private and loopback addresses. Operators running with
--allow-private-addrmust also pass--no-xdp. - The default incremental snapshot interval is now 200 slots.
CLI
Breaking
Changes
vote-accountsupports Alpenglow and as suchvote-account --output jsonbreaks compatibility with older versions.- Support Keystone hardware wallets using
usb://keystone
-
4.2.0-rc.131 Jul 2026 pre-releaseRelease notes
Open source →This is Mainnet-beta Upgrade Candidate release recommended for 10% adoption.
It is also recommended for Testnet and Devnet.https://github.com/anza-xyz/agave/blob/v4.2/CHANGELOG.md
What's Changed
- v4.2: ClusterSlots: tighten slot support calculations (backport of #14223) by @mergify[bot] in #14226
- v4.2: replay: increase rayon pool stack size (backport of #14162) by @mergify[bot] in #14164
- v4.2: fix: bound wincode-related sdk deps to <= wincode 0.5.5 by @cpubot in #14178
- v4.2: civl: match shred ingest bound (backport of #14231) by @mergify[bot] in #14235
Full Changelog: v4.2.0-rc.0...v4.2.0-rc.1
-
4.2.0-rc.024 Jul 2026 pre-releaseRelease notes
Open source →This is Mainnet-beta Upgrade Candidate release recommended for 10% adoption.
It is also recommended for Testnet and Devnet.https://github.com/anza-xyz/agave/blob/v4.2/CHANGELOG.md
What's Changed
- v4.2: chore(dep): backport RUSTSEC-2026-0204 crossbeam-epoch fix by @cfkelly18 in #13933
- v4.2: Use vendored rust-rocksdb fork (backport of #14008) by @mergify[bot] in #14017
Full Changelog: v4.2.0-beta.2...v4.2.0-rc.0
-
4.2.0-beta.217 Jul 2026 pre-releaseRelease notes
Open source →This is a testnet release.
What's Changed
- v4.2: Loads accounts in parallel for lt hash updates of stake accounts (backport of #13696) by @mergify[bot] in #13752
- v4.2: receive_and_buffer: remove expensive status-cache check (backport of #13437) by @mergify[bot] in #13703
- v4.2: xdp: improve packet drop perf (backport of #13658) by @mergify[bot] in #13723
- v4.2: status_cache: use SmallVec instead of Vec for tx fork status (backport of #13876) by @mergify[bot] in #13893
- v4.2: Handle dead keys secondary (backport of #13717) by @mergify[bot] in #13818
Full Changelog: v4.2.0-beta.1...v4.2.0-beta.2
-
4.2.0-beta.110 Jul 2026 pre-releaseNothing published for this version
-
4.2.0-beta.006 Jul 2026 pre-releaseNothing published for this version
-
4.1.210 Jul 2026Nothing published for this version
-
4.1.102 Jul 2026Nothing published for this version
-
4.1.026 Jun 2026Release notes
Open source →RPC
Breaking
Changes
Validator
Breaking
--block-production-method central-scheduleris no longer supported. If passed, a warning is emitted and behavior will default to the greedy-scheduler implementation.- scheduler-bindings version has been increased to 4. Connecting external schedulers must be updated.
- Validator now requires 26 ports,
--dynamic-port-rangemust be at least 26 wide.
Deprecations
- Using
minimalfor--accounts-index-limitis now deprecated. --account-shrink-pathis now deprecated.sbf-sdk.tar.bz2is not included anymore in the Agave release tarball. The file will be made available in the newcargo-build-sbfrepository.- XDP support is no longer experimental. The
--experimental-retransmit-xdp-interface,--experimental-retransmit-xdp-cpu-cores, and--experimental-retransmit-xdp-zero-copyflags have been deprecated. Use--xdp-interface,--xdp-cpu-cores, and--xdp-zero-copyinstead. Behavior is unchanged: pass--xdp-cpu-coresto enable XDP on the specified cores.
Changes
-
4.1.0-rc.116 Jun 2026 pre-releaseNothing published for this version
-
4.1.0-rc.012 Jun 2026 pre-releaseNothing published for this version
-
4.1.0-beta.305 Jun 2026 pre-releaseNothing published for this version
-
4.1.0-beta.201 Jun 2026 pre-releaseNothing published for this version
-
4.1.0-beta.122 May 2026 pre-releaseNothing published for this version
-
4.0.316 Jun 2026Nothing published for this version
-
4.0.020 May 2026Release notes
Open source →RPC
Breaking
--public-tpu-addressand--public-tpu-forwards-addressCLI arguments andsetPublicTpuForwardsAddress,setPublicTpuAddressRPC methods now specify QUIC ports, not UDP.- Blockstore
PerfSamplescolumn legacy format removed.- The
PerfSamplescolumn format was updated in agave v1.15 to writePerfSampleV2. The old format,PerfSampleV1, will no longer be supported for fallback reads as of v4.0.
- The
- Blockstore transaction metadata column legacy format support removed.
- The
TransactionStatus,TransactionMemos, andAddressSignaturescolumns were updated in v1.18 to write a new key format. The old key format will no no longer be supported for fallback reads as of v4.0
- The
getSignaturesForAddressreturns an error with code-32020if thebeforeoruntilsignatures are not found, rather than a successful response with an empty array
Changes
- Added
--enable-scheduler-bindingswhich binds an IPC server at<ledger-path>/scheduler_bindings.ipcfor external schedulers to connect to. - Added
clientIdfield to each node ingetClusterNodesresponse
Validator
Breaking
- Removed deprecated arguments
--accounts-db-clean-threads--accounts-db-hash-threads--accounts-db-read-cache-limit-mb--accounts-hash-cache-path--cuda--disable-accounts-disk-index--dev-halt-at-slot--monitor(exitsubcommand)--transaction-struct--wait-for-exit(exitsubcommand)--tpu-coalesce-ms--tpu-disable-quic--tpu-enable-udp
--block-verification-method blockstore-processoris no longer supported. Remove the argument or switch to--block-verification-method unified-schedulerinstead.- Removed support for ingestion of transactions via UDP. QUIC is now the only option.
- All monorepo crates falling outside the
backward compatibility policy are now part
of the Agave Unstable API and their symbols have been made private. Enable the
agave-unstable-apicrate feature to acknowledge use of an interface that may break without warning. - Linux Capability handling has been hardened wrt requirements for configuring XDP (#9133)
- It is now an explicit error + exit(1) if the process has not been permitted a capability required by the current configuration
- A warning is logged if the process has been permitted capabilities not required by any configuration supported by the binary
- All permitted capabilities not required by the current configuration are now dropped at startup. This includes all validator subcommands which never require capabilities
- Operations which require capabilities are now performed on the main thread and
capabilities dropped before any other threads are spawned, with two exceptions
- One thread retains cap_net_admin in order to reinitialize its netlink socket upon error
- If any niceness flags are passed, all threads retain cap_sys_nice, which has been the case since those feature were originally added
- Updated instructions for permitting Linux Capabilities for the validator process are
as follow. Either of these two options is supported. Choose whichever best fits your
operational procedures
-
Add the following to the
[Service]section of you Systemd service file# Permit Linux Capabilities required to configure XDP AmbientCapabilities=CAP_NET_RAW CAP_NET_ADMIN CAP_BPF CAP_PERFMON # Disallow inheritance of any Linux Capabilities not required by any configuration CapabilityBoundingSet=CAP_NET_RAW CAP_NET_ADMIN CAP_BPF CAP_PERFMON
-
set xattr capabilities directly on the binary file. note that this step must be repeated every time that the binary file is replaced
sudo setcap cap_net_raw,cap_net_admin,cap_bpf,cap_perfmon=p /path/to/agave-validator
-
- Interpretation of the
Versionstruct fields in gossipContactInfohas been changed to support communicating semver prerelease notation. Implementations lacking this support will observe a larger than expectedminversion field from node publishing from a prerelease version. The new interpretation is as follows:- The top two bits (14 and 15) of the
minorfield are now reserved for prerelease status - Prerelease status bit values are; 3 - alpha, 2 - beta, 1 - release candidate (rc), 0 - stable
- When prerelease status bits are non-zero, the
Version::patchfield is interpreted as the prerelease number and the actualpatchvalue is implicitly zero - Examples:
- { min: 0x0001, patch: 0x0003 } -> X.1.3
- { min: 0x4002, patch: 0x0002 } -> X.2.0-rc.2
- { min: 0x8003, patch: 0x0001 } -> X.3.0-beta.1
- { min: 0xC004, patch: 0x0000 } -> X.4.0-alpha.0
- The top two bits (14 and 15) of the
- Blockstore
SlotMetaandIndexcolumns legacy format removed.- The
Indexcolumn was updated in v2.2 to writeIndexV2. - The
SlotMetacolumn format was updated in v3.1 to writeSlotMetaV2. - The old formats,
SlotMetaV1andIndexV1, will no longer be supported for fallback reads as of v4.0
- The
Deprecations
- Using
mmapfor--accounts-db-access-storages-methodis now deprecated. - The
--enable-accounts-disk-indexflag is now deprecated. Use--accounts-index-limitinstead. To retain the same behavior, use--accounts-index-limit minimal.
Changes
agave-validator exitnow saves bank state before exiting. This enables restarts from local state when snapshot generation is disabled.- Added
--accounts-index-limitto specify the memory limit of the accounts index. - Snapshot archive unpacking now uses direct I/O by default to improve performance by bypassing the OS page cache. Use
--no-accounts-db-snapshots-direct-ioto opt out if your file system does not supportO_DIRECT. Direct I/O will be extended to snapshot creation in a future release. --block-production-method central-scheduleris now deprecated and will be removed in a future release. Usecentral-scheduler-greedyinstead.
CLI
Breaking
- Removed deprecated arguments
--use-quic--use-udp
Deprecations
- The
pingcommand is deprecated and will be removed in v4.1.
Changes
- Support Trezor hardware wallets using
usb://trezor
Platform tools
Breaking
cargo-build-sbf --debugnow generates a fileprogram.so.debuginstead ofprogram.debug.cargo-build-sbf --debugplaces all debug related objects insidetarget/deploy/debug.
Geyser
Changes
- Account update notifications have their fields populated from the account values post transaction execution. This means notifications for closed accounts (accounts with a balance of zero lamports) will no longer have their
owner/data/etc manually zeroed out. Note that if the on-chain program does zero out any fields itself, those will remain zeroed out in the notification.
Test Validator
Changes
- Now shows TPU QUIC address instead of TPU UDP in the dashboard.
-
4.0.0-rc.024 Apr 2026 pre-releaseNothing published for this version
-
4.0.0-beta.710 Apr 2026 pre-releaseNothing published for this version
-
4.0.0-beta.603 Apr 2026 pre-releaseNothing published for this version
-
4.0.0-beta.527 Mar 2026 pre-releaseNothing published for this version
-
4.0.0-beta.423 Mar 2026 pre-releaseNothing published for this version
-
4.0.0-beta.320 Mar 2026 pre-releaseNothing published for this version
-
4.0.0-beta.213 Mar 2026 pre-releaseNothing published for this version
-
4.0.0-beta.110 Mar 2026 pre-releaseNothing published for this version
-
4.0.0-beta.006 Mar 2026 pre-releaseNothing published for this version
-
4.0.0-alpha.027 Feb 2026 pre-releaseNothing published for this version
-
3.1.1424 Apr 2026Nothing published for this version
-
3.1.1203 Apr 2026Nothing published for this version
-
3.1.1120 Mar 2026Nothing published for this version
-
3.1.1010 Mar 2026Nothing published for this version
-
3.1.919 Feb 2026Nothing published for this version
-
3.1.826 Jan 2026Nothing published for this version
-
3.1.719 Jan 2026Nothing published for this version
-
3.1.610 Jan 2026Nothing published for this version
-
3.1.521 Dec 2025Nothing published for this version
-
3.1.403 Dec 2025Nothing published for this version
-
3.1.329 Nov 2025Nothing published for this version
-
3.1.222 Nov 2025Nothing published for this version
-
3.1.114 Nov 2025Nothing published for this version
-
3.0.1410 Jan 2026Nothing published for this version
-
3.0.1321 Dec 2025Nothing published for this version
-
3.0.1229 Nov 2025Nothing published for this version
-
3.0.1122 Nov 2025Nothing published for this version
-
3.0.1004 Nov 2025Nothing published for this version
-
3.0.824 Oct 2025Nothing published for this version
-
3.0.717 Oct 2025Nothing published for this version
-
3.0.608 Oct 2025Nothing published for this version
-
3.0.501 Oct 2025Nothing published for this version
-
3.0.426 Sep 2025Nothing published for this version
-
3.0.319 Sep 2025Nothing published for this version
-
3.0.212 Sep 2025Nothing published for this version
-
3.0.105 Sep 2025Nothing published for this version
-
3.0.021 Aug 2025Release notes
Open source →RPC
Breaking
- Added a
slotproperty toEpochRewardsPeriodActiveErrorData - Added error data containing a
slotproperty toRpcCustomError::SlotNotEpochBoundary
Changes
- The subscription server now prioritizes processing received messages before sending out responses. This ensures that new subscription requests and time-sensitive messages like
PINGopcodes take priority over notifications.
Validator
Breaking
- When XDP is enabled, the validator process requires the
CAP_NET_RAW,CAP_NET_ADMIN,CAP_BPF, andCAP_PERFMONcapabilities. These can be configured in the systemd service file by settingCapabilityBoundingSet=CAP_NET_RAW CAP_NET_ADMIN CAP_BPF CAP_PERFMONunder the[Service]section or directly on the binary with the commandsudo setcap cap_net_raw,cap_net_admin,cap_bpf,cap_perfmon=p <path/to/agave-validator>(this command must be run each time the binary is replaced) - Enabling XDP zero copy on systems configured with LACP bond requires manually passing
--experimental-retransmit-xdp-interface <real-interface>(e.g.:eno17395np0notbond0), as zero copy is only available on physical interfaces. - Require increased
memlocklimits - recommended setting isLimitMEMLOCK=2000000000in systemd service configuration. Lack of sufficient limit (on Linux) will cause startup error. - Remove deprecated arguments
--accounts-index-memory-limit-mb--accountsdb-repl-bind-address,--accountsdb-repl-port,--accountsdb-repl-threads,--enable-accountsdb-repl--disable-quic-servers,--enable-quic-servers--etcd-cacert-file,--etcd-cert-file,--etcd-domain-name,--etcd-endpoint,--etcd-key-file,--tower-storage--no-check-vote-account--no-rocksdb-compaction,--rocksdb-compaction-interval-slots,--rocksdb-max-compaction-jitter-slots--replay-slots-concurrently- Use
--replay-forks-threadswith a value of4to match preexisting behavior
- Use
--rpc-pubsub-max-connections,--rpc-pubsub-max-fragment-size,--rpc-pubsub-max-in-buffer-capacity,--rpc-pubsub-max-out-buffer-capacity,--enable-cpi-and-log-storage,--minimal-rpc-api--skip-poh-verify
- Deprecated snapshot archive formats have been removed and are no longer loadable.
- Using
--snapshot-interval-slots 0to disable generating snapshots has been removed. Use--no-snapshotsinstead. - Validator will now bind all ports within provided
--dynamic-port-range, including the client ports. A range of at least 25 ports is recommended to avoid failures to bind during startup. - Agave and agave-ledger-tool can no longer operate with legacy shreds. Legacy shreds have not been in circulation since the activation of https://explorer.solana.com/address/GV49KKQdBNaiv2pgqhS2Dy3GWYJGXMTVYbYkdk91orRy. This change may break operations with old ledgers that may still contain legacy shreds.
Changes
--transaction-structure viewis now the default.- The default full snapshot interval is now 100,000 slots.
SOLANA_BANKING_THREADSenvironment variable is no longer supported. Use--block-prouduction-num-workersinstead.- By default,
agave-validator exitwill now wait for the validator process to terminate before returning. The--wait-for-exitflag has been deprecated, but operators can still opt out with the new--no-wait-for-exitflag.
- Added a