Arbitrum Nitro v3.0.1
This release is available as a Docker image on Docker Hub at offchainlabs/nitro-node:v3.0.1-cf4b74e
This Docker image specifies default flags in its entrypoint which should be replicated if you're overriding the entrypoint: /usr/local/bin/nitro --validation.wasm.allowed-wasm-module-roots /home/user/nitro-legacy/machines,/home/user/target/machines
If you're running a validator without a split validation server (this will be true of most validators), you should instead use the image offchainlabs/nitro-node:v3.0.1-cf4b74e-validator
which has the extra script /usr/local/bin/split-val-entry.sh
as the entrypoint.
If you're running daserver committee members and/or mirrors you should update to at least this release to get an important fix to mirror eager syncing and also for batch store request chunking, see notes below.
What's Changed
This release rebuilds the wasmstore if missing on startup, and adds various configuration options.
Configuration Changes
--node.parent-chain.wallet.*
is no longer available. Keys for the batch poster and validator must now be specified with--node.batch-poster.parent-chain-wallet.*
and--node.staker.parent-chain-wallet.*
respectively.- The staker and batch poster must be run with different keys. Previously, this would produce unexpected errors as they tried to make transactions, but this will now produce a hard error on startup.
- The option for daserver
--data-availability.rest-aggregator.sync-to-storage.check-already-exists
has been removed because multiple batches can have the exact same data if they consist of only delayed messages. - The new AnyTrust option
--node.data-availability.rpc-aggregator.max-store-chunk-body-size
is the HTTP POST body size that the operator wants the chunk requests to stay under. Batch sizes are now no longer limited by HTTP limits due to chunking.
User-facing Improvements
- Add rebuilding of wasmstore as a part of node initialization: #2314
- Config option: rebuild-local-wasm: #2400
- Add batch poster dangerous config: AllowPostingFirstBatchWhenSequencerMessageCountMismatch: #2375
- Init: add option to download latest db snapshot: #2367
- Add prune-threads and prune-trie-clean-cache config option: #2389
- Add missing redis-url flag initialization for validation redis streams: #2396
Bug Fixes
- DAS l1SyncService should sync full not chunked payload: #2383
Internal Highlights
- Make sure fee > tip in validator wallet estimateGas: #2386
- Remove IterableStorageService from DAS: #2361
- Remove IPFS das factory logic and stubs: #2359
- Das batch store chunking: #2341
- Use an atomic bool for returnedResult: #2401
- Create a safety check that the batch poster and staker aren’t enabled with the same key: #2381
- Fix solgen paths with new foundry versions: #2387
Full Changelog: v3.0.0...v3.0.1