Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
a90cfe4
Add Nitro configuration system guide
anegg0 Mar 26, 2026
320d580
Add data availability tools reference page
anegg0 Mar 26, 2026
1505af8
Add Nitro configuration system guide
anegg0 Mar 26, 2026
331639b
Add Docker images and CLI binaries reference page
anegg0 Mar 26, 2026
a86d75f
Revert sidebar change (sidebar entries added in separate PR)
anegg0 Mar 26, 2026
1a154c2
Add data availability tools reference page
anegg0 Mar 26, 2026
05c4ea1
Add node tuning and monitoring guide
anegg0 Mar 26, 2026
54e515d
Add CLI flags reference page and auto-generation script
anegg0 Mar 26, 2026
9c8e9d0
Fix --check mode to account for Prettier formatting
anegg0 Mar 26, 2026
09b30a6
Merge branch 'master' into nitro-cli-guide
anegg0 Mar 26, 2026
a06bd95
Fix broken link to AnyTrust protocol page
anegg0 Mar 27, 2026
9895ea9
Fix broken link to AnyTrust protocol page
anegg0 Mar 27, 2026
f1cfffa
Fix MDX curly brace escaping in CLI flags reference
anegg0 Mar 27, 2026
cbe44be
Remove nitro-memory-management page (content merged into node-tuning-…
anegg0 Mar 27, 2026
0c0f4f3
Merge branch 'master' into nitro-cli-guide
anegg0 Apr 1, 2026
2053862
Apply suggestion from @Jason-W123
anegg0 Apr 14, 2026
f02e0f8
Apply suggestion from @Jason-W123
anegg0 Apr 14, 2026
f4d6d81
Apply suggestion from @Jason-W123
anegg0 Apr 14, 2026
3b7f1d2
Apply suggestion from @Jason-W123
anegg0 Apr 14, 2026
767da00
Apply suggestion from @Jason-W123
anegg0 Apr 14, 2026
9ca828a
Update da-tools-reference.mdx
anegg0 Apr 14, 2026
25845b6
Apply suggestion from @Jason-W123
anegg0 Apr 14, 2026
602cee7
Update da-tools-reference.mdx
anegg0 Apr 14, 2026
605b553
remove anytrustserver references and replace with daserver
anegg0 Apr 14, 2026
ed5dc73
Merge branch 'nitro-cli-guide' into nitro-cli/da-tools-reference
anegg0 Apr 14, 2026
2e70439
Apply suggestion from @Jason-W123
anegg0 Apr 14, 2026
c12e036
Merge pull request #3177 from OffchainLabs/nitro-cli/da-tools-reference
anegg0 Apr 14, 2026
26e8880
Merge branch 'nitro-cli-guide' into nitro-cli/config-system
anegg0 Apr 14, 2026
37411c5
Merge pull request #3175 from OffchainLabs/nitro-cli/config-system
anegg0 Apr 14, 2026
105be37
Merge branch 'master' into nitro-cli-guide
anegg0 Apr 15, 2026
3a188bb
remove all execution-related flags from the CLI reference for Nitro
anegg0 Apr 20, 2026
cf3676a
remove dangerous flag references and execution tuning from node docs
anegg0 Apr 20, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,6 @@ The exact phrasing and context of retry errors can vary across Nitro versions. T
2. **Review the queued transaction storage**: If using DB or Redis, the stored transaction state may be stale. A node restart typically resolves transient storage inconsistencies.
3. **Check parent chain connectivity**: Ensure the batch poster can reliably reach the parent chain RPC. Intermittent connectivity causes retry failures.
4. **Inspect RBF fee escalation**: If the error mentions “replacement transaction underpriced”, the fee increase between attempts may be insufficient. The parent chain typically requires at least a 10% fee increase for RBF. Review the `blob-tx-replacement-times` schedule—shorter intervals may not allow enough price movement between attempts.
5. **Consider clearing storage as a last resort**: The `--node.batch-poster.data-poster.dangerous.clear-dbstorage` flag clears the queued transaction database on startup. Use this only when necessary, as it discards any tracked pending transactions. See the [Node key rotation guide](/launch-arbitrum-chain/04-maintain-your-chain/04-guidance/key-rotation.mdx) for context on when this flag is used.

## Quick reference

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,22 +55,12 @@ setBatchPosterManager(<new_address>)
- Update your node configuration to use the new private key
- Restart the batch poster service with the new configuration

#### 3. Handle potential mempool issues

If you encounter the error: `"posting this transaction will exceed max mempool size: transaction nonce: xxx, unconfirmed nonce: xx, max mempool size: xx"`

**Temporary fix**:

- Add the `--node.batch-poster.data-poster.dangerous.clear-dbstorage` flag
- Restart the batch poster
- **Remove this flag** before the next start

#### 4. Verify operation
#### 3. Verify operation

- Monitor logs to confirm the new batch poster is successfully submitting batches
- Check that transactions are processing normally

#### 5. Disable the old batch poster
#### 4. Disable the old batch poster

```solidity
setIsBatchPoster(<old_address>, false)
Expand Down Expand Up @@ -101,20 +91,12 @@ setValidator([<new_validator_address>], [true])
- Update your validator node configuration to use the new private key
- Restart the validator service

#### 3. Handle potential mempool issues

If you encounter the error: `"posting this transaction will exceed max mempool size: transaction nonce: xxx, unconfirmed nonce: xx, max mempool size: xx"`

- Add `--node.staker.data-poster.dangerous.clear-dbstorage` flag temporarily
- Restart the validator
- **Remove this flag** before the next start

#### 4. Verify the new validator operation
#### 3. Verify the new validator operation

- Monitor that the new validator successfully posts bond transactions
- Confirm that assertion and confirmation transactions are submitted successfully

#### 5. Disable the old validator
#### 4. Disable the old validator

```solidity
setValidator([<old_validator_address>], [false])
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ Next, make your changes to the State Transition Function. For example, you could
After this step, you should visit [Customize ArbOS version](./customize-arbos.mdx) to see if your changes need to upgrade the ArbOS version. If so, please continue
follow that document to add an ArbOS upgrade logic to your code.

### Step 3. Run the node without fraud proofs
### Step 3. Run the node

To build the Arbitrum Nitro node image, you'll first need to install Docker.
You can confirm if it's already setup by running `docker version` in a terminal.
Expand All @@ -81,23 +81,13 @@ install Docker from your distribution's package manager and start the Docker ser

Once you have Docker installed, you can simply run `docker build . --tag custom-nitro-node` in the `nitro` folder to build your custom node.

Once you've built your new Nitro node image, you have to modify the configuration file of your node to add a new parameter, `--node.staker.dangerous.without-block-validator`, which disables fraud proof verification.
:::note

To do that, open your `nodeConfig.json` file (stored by default in the `config` folder) and add the new parameter inside the `staker` element:
A chain running a customized State Transition Function will produce blocks that don't match the verified Nitro WASM module root on the parent chain. Coordinate with Offchain Labs before operating a customized STF against a production chain, as the validator configuration required is not covered in this guide.

```json
...
"staker": {
...
"dangerous": {
"without-block-validator": true
}
...
},
...
```
:::

With that, you have now two ways of running your node.
You have two ways of running your node.

#### 1. Using the docker-compose file

Expand Down Expand Up @@ -163,11 +153,9 @@ Once you have the WASM module root, you can put it onchain by calling `setWasmMo
The `upgradeExecutor` contract address and Rollup contract address can be found in the chain deployment info JSON.
You can confirm that the WASM module root was updated by calling `wasmModuleRoot()` on the Rollup contract.

Once you have set the new WASM module root onchain, you can re-enable fraud proofs and run your node.

To re-enable fraud proofs, open your `nodeConfig.json` file again, and remove the `"dangerous"` section (containing the `without-block-validator` property) that you previously added.
Once you have set the new WASM module root onchain, the validator will recognize blocks produced by your customized STF. You can now run your node with fraud proof verification enabled.

After that, you'll have, again, two ways of running your node.
You have two ways of running your node.

#### 1. Using the docker-compose file

Expand Down
163 changes: 0 additions & 163 deletions docs/run-arbitrum-node/nitro/05-nitro-memory-management.mdx

This file was deleted.

Loading
Loading