Solana v1 transaction upgrade may freeze RPC readers and bypass fee limits
Solana v1 transaction format expands payload size
Solana is preparing a new transaction format, called v1, that raises the maximum transaction payload from 1,232 bytes to 4,096 bytes – a more than three‑fold increase. The change is not yet active on mainnet as of September 4 2026, but testnet and devnet already support it.
RPC client failures without opt‑in
Remote procedure call (RPC) services that read Solana data must include the integer maxSupportedTransactionVersion: 1 when using getTransaction, getBlock or blockSubscribe. If a client does not opt‑in, a v1 transaction will cause an error -32015 on getTransaction, make getBlock fail for the whole block, and stop blockSubscribe at the first affected slot.
Indexers and fee sponsors may enforce wrong limits
In v1 the compute‑unit limits, loaded‑account data limits and priority fees are moved into a transactionConfig object instead of the older ComputeBudget instructions. Indexers that still look for ComputeBudget will see a zero budget for v1 transactions without raising an error. Fee sponsors that enforce caps by scanning those old instructions will no longer have a binding cap, because the instructions are ignored in v1. This is an application‑level issue, not a consensus flaw.
Upgrade timeline and required software versions
Solana’s upgrade page lists v1 as not yet activated on mainnet. Developers have a pre‑activation window to update. Minimum compatible client releases include @solana/kit 8.0.0, @solana/web3.js 3.0.0‑rc.3, Rust solana‑* 4.2.x, Python solders 0.29.0 and solana‑go 1.23.0. Geyser users need at least yellowstone‑grpc‑proto 12.6.0, geyser plugin 15.1.1, gRPC client 12.0.0 or @triton‑one/yellowstone‑grpc 6.0.0.
Key points
- v1 raises the transaction payload limit to 4,096 bytes.
- RPC readers must opt‑in with
maxSupportedTransactionVersion: 1or they will encounter hard errors. - Indexers and fee sponsors that do not read the new
transactionConfigmay enforce incorrect limits silently. - The upgrade is not yet active on mainnet; testnet and devnet already support it.
- Specific client libraries and server components need to be updated before the first v1 transaction appears.