We are upgrading our Ethereum Mainnet infrastructure to Erigon v3.6.0. This release delivers more reliable Caplin block production, pruned-node snapshot reclamation, plain commitment snapshots for faster state access, and several RPC improvements.
During the maintenance window, brief interruptions to RPC availability may occur.
RPC Changes: - eth_getBalance — Now defaults an omitted block parameter to `latest` instead of requiring explicit specification. - eth_getCode — Now defaults an omitted block parameter to `latest` instead of requiring explicit specification. - eth_getStorageAt — Now defaults an omitted block parameter to `latest` instead of requiring explicit specification. - eth_getTransactionCount — Now defaults an omitted block parameter to `latest` instead of requiring explicit specification. - eth_getProof — Now defaults an omitted block parameter to `latest` instead of requiring explicit specification. - eth_getStorageValues — Now defaults an omitted block parameter to `latest` instead of requiring explicit specification. - eth_newFilter — Idle filters now expire after five minutes; clients must poll within the timeout or recreate the filter. Configure `--rpc.subscription.filters.timeout` or set to `0` to disable eviction. - eth_newBlockFilter — Idle filters now expire after five minutes; clients must poll within the timeout or recreate the filter. Configure `--rpc.subscription.filters.timeout` or set to `0` to disable eviction. - eth_newPendingTransactionFilter — Idle filters now expire after five minutes; clients must poll within the timeout or recreate the filter. Configure `--rpc.subscription.filters.timeout` or set to `0` to disable eviction. - JSON-RPC block number format — Quoted decimal block numbers such as `“3”` are now rejected; use `“0x3"`, a bare integer, or a named tag instead. - Streaming trace errors — Error responses no longer include `result: null` alongside `error`. - eth_fillTransaction — New method added; fills missing transaction fields and returns the unsigned raw transaction plus its JSON form, compatible with geth. - eth_getWitness — With `--prune.include-commitment-history`, now builds and verifies a lean witness for any block within retained history. - trace_block — Can now include beacon-withdrawal balance changes through the optional `IncludeWithdrawals` trace setting. - trace_replayBlockTransactions — Can now include beacon-withdrawal balance changes through the optional `IncludeWithdrawals` trace setting. - Receipt and log RPCs — Historical receipts are off by default on fresh datadirs in every prune mode; without the cache, receipt and log RPCs re-execute within the state-history window at higher latency. Blocks-mode operators needing receipts and logs back to genesis must use `--prune.include-receipts --prune.receipts.distance=keep-all`.