Skip to content

Commit 377a3c9

Browse files
authored
docs: fix flag defaults and remove non-existent flags in fundamentals (#19573)
## Summary Fixes multiple inaccuracies across the fundamentals documentation section — stale defaults, non-existent flags, and incorrect port labels. ### Changes by file **`fundamentals/basic-usage.md`** - `--torrent.download.rate`: corrected default from `128mb` → `512mb`; reworded description to reflect the flag caps bandwidth rather than overclock it **`fundamentals/performance-tricks.md`** - Same download rate default fix: `128MB` → `512mb` **`fundamentals/default-ports.md`** - Port 30304 (sentry) labelled `eth/67` → `eth/69` **`fundamentals/logs.md`** - `--verbosity` default was shown as `2` (numeric level); corrected to `info` (the actual string value used by the flag) **`fundamentals/security.md`** - Removed mention of `--txpool.nolocals=true` — this flag does not exist in Erigon **`fundamentals/multiple-instances.md`** - Removed `--db.growth.step` from example code block — this flag does not exist in Erigon - Fixed env var: `ERIGON_SNAPSHOT_MADV_RND` → `SNAPSHOT_MADV_RND` (appears twice) **`fundamentals/modules/rpc-daemon.md`** - Removed `--grpc` from the Erigon command in the Remote mode table — the flag is not available on the main `erigon` binary - Added a clarifying note explaining that the internal gRPC interface is exposed automatically via `--private.api.addr` **`fundamentals/modules/downloader.md`** - `--torrent.download.rate` default: `"128mb"` → `"512mb"` - `--torrent.upload.rate` default: `"4mb"` → `"16mb"` - `--torrent.download.slots`: marked as DEPRECATED, default corrected `128` → `32` **`fundamentals/configuring-erigon/README.md`** - `--discovery.v4` default: `true` → `false` - Removed `--discovery.parallelism` (non-existent flag) - Removed `--discovery.ban-threshold` (non-existent flag, also had a markdown typo) - `--log.dir.verbosity` default: `info` → `dbug` - Consolidated two duplicate commitment-history flags into one combined entry - Added `--override.amsterdam` to General Options (narrative + help listing) - Added MCP Server section: `--mcp.addr`, `--mcp.port` (narrative + help listing) - Added FCU section: `--fcu.timeout`, `--fcu.background.prune`, `--fcu.background.commit` (narrative + help listing)
1 parent 5700f1b commit 377a3c9

File tree

9 files changed

+42
-25
lines changed

9 files changed

+42
-25
lines changed

docs/gitbook/src/fundamentals/basic-usage.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ To run Erigon with RPCDaemon, TxPool, and other components in a single process i
9595
* `--log.dir.path` dictates where [logs](logs.md) will be output - useful for sending reports to the Erigon team when issues occur.
9696
* Based on the [sync mode](sync-modes.md) you want to run you can add `--prune.mode=archive` to run a archive node, `--prune.mode=full` for a full node (default value) or `--prune.mode=minimal` for a minimal node.
9797
* `--http.addr="0.0.0.0" --http.api=eth,web3,net,debug,trace,txpool` to use [RPC Service](../interacting-with-erigon/) and e.g. be able to connect your [wallet](web3-wallet.md).
98-
* `--torrent.download.rate=512mb` to increase download speed. While the default downloading speed is 128mb, with this flag Erigon will use as much download speed as it can, up to a maximum of 512 megabytes per second. This means it will try to download data as quickly as possible, but it won't exceed the 512 MB/s limit you've set.
98+
* `--torrent.download.rate=512mb` sets the maximum download speed. The default is `512mb`. You can lower this value to limit bandwidth usage, for example `--torrent.download.rate=128mb` to cap downloads at 128 MB/s.
9999

100100
To stop the Erigon node you can use the `CTRL+C` command.
101101

docs/gitbook/src/fundamentals/configuring-erigon/README.md

Lines changed: 31 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,8 @@ These flags cover the general behavior and configuration of the Erigon client.
3838
* Default: `false`, means that Caplin is enabled.
3939
* `--override.osaka value`: Manually specifies the Osaka fork time.
4040
* Default: `0`
41+
* `--override.amsterdam value`: Manually specifies the Amsterdam fork time.
42+
* Default: `0`
4143
* `--vmdebug`: Records information for VM and contract debugging.
4244
* Default: `false`
4345
* `--gdbme`: Restarts Erigon under gdb for debugging.
@@ -80,9 +82,7 @@ Flags for managing how old chain data is handled and stored.
8082
* Default: `0`
8183
* `--prune.distance.blocks value`: Keeps block history for the latest `N` blocks.
8284
* Default: `0`
83-
* `--prune.experimental.include-commitment-history, --experimental.commitment-history`: Enables faster `eth_getProof` for executed blocks.
84-
* Default: `false`
85-
* `--prune.include-commitment-history` : (experimental) Enables the storage of commitment history. When enabled, it allows for blazing fast retrieval of Merkle proofs for executed blocks using the `eth_getProof` JSON-RPC method.
85+
* `--prune.include-commitment-history, --prune.experimental.include-commitment-history, --experimental.commitment-history`: (experimental) Enables blazing fast `eth_getProof` for executed blocks by storing commitment history.
8686
* Default: `false`
8787
* `--snap.keepblocks`: Keeps ancient blocks in the database for debugging.
8888
* Default: `false`
@@ -139,13 +139,9 @@ These flags manage network connectivity, peer discovery, and traffic control.
139139
* `--nodiscover`: Disables peer discovery.
140140
* Default: `false`
141141
* `--discovery.v4`, `--discv4`: Enables the Node Discovery Protocol v4 (Discv4) for managed ENRs and topic discovery.
142-
* Default: `true`
142+
* Default: `false`
143143
* `--discovery.v5`, `--discv5`, `--v5disc`: Enables the Node Discovery Protocol v5 (Discv5) for managed ENRs and topic discovery.
144144
* Default: `true`
145-
* `--discovery.parallelism value`: The number of concurrent lookup requests allowed per discovery query.
146-
* Default: `3`
147-
* `**`--discovery.ban-threshold value`: The number of failed handshake attempts before an IP is temporarily blacklisted.
148-
* Default: `5`
149145
* `--netrestrict value`: Restricts network communication to specific IP networks.
150146
* `--nodekey value`: The P2P node key file.
151147
* `--nodekeyhex value`: The P2P node key as a hexadecimal string.
@@ -242,6 +238,15 @@ Flags for configuring various RPC servers and their behavior.
242238
* `--healthcheck`: Enables gRPC health checks.
243239
* Default: `false`
244240

241+
### MCP Server
242+
243+
Flags for configuring the Model Context Protocol (MCP) server.
244+
245+
* `--mcp.addr value`: The MCP server listening address.
246+
* Default: `127.0.0.1`
247+
* `--mcp.port value`: The MCP server listening port.
248+
* Default: `8553`
249+
245250
### Logging and Profiling
246251

247252
Flags for controlling logging and performance profiling.
@@ -261,7 +266,7 @@ Flags for controlling logging and performance profiling.
261266
* `--log.dir.path value`: The path to store user and error logs.
262267
* `--log.dir.prefix value`: The file name prefix for logs stored on disk.
263268
* `--log.dir.verbosity value`: Sets the log verbosity for disk logs.
264-
* Default: `info`
269+
* Default: `dbug`
265270
* `--log.delays`: Enables block delay logging.
266271
* Default: `false`
267272
* `--pprof`: Enables the pprof HTTP server.
@@ -367,6 +372,17 @@ These flags control the block synchronization and data downloading process, incl
367372
* `--torrent.verbosity value`: Sets the verbosity level for BitTorrent logs. 0=silent, 1=error, 2=warn, 3=info, 4=debug, 5=detail (must set `--verbosity` to equal or higher level)
368373
* Default: `1`
369374

375+
### Fork Choice Update (FCU)
376+
377+
Flags for configuring Fork Choice Update behavior.
378+
379+
* `--fcu.timeout value`: FCU timeout before switching to async processing (use `0` to disable).
380+
* Default: `1s`
381+
* `--fcu.background.prune`: Enables background pruning after FCU.
382+
* Default: `true`
383+
* `--fcu.background.commit`: Enables background flush and commit after FCU.
384+
* Default: `false`
385+
370386
### Caplin (Consensus Layer)
371387

372388
Flags for configuring the Caplin consensus layer.
@@ -600,6 +616,7 @@ GLOBAL OPTIONS:
600616
--prune.include-commitment-history, --experimental.commitment-history, --prune.experimental.include-commitment-history Enables blazing fast eth_getProof for executed block (default: false)
601617
--fcu.timeout value FCU timeout before it switches to being process async (use 0 to disable) (default: 1s)
602618
--fcu.background.prune Enables background pruning post fcu (default: true)
619+
--fcu.background.commit Enables background flush and commit post fcu (default: false)
603620
--batchSize value Batch size for the execution stage (default: "512M")
604621
--bodies.cache value Limit on the cache for block bodies (default: "268435456")
605622
--database.verbosity value Enabling internal db logs. Very high verbosity levels may require recompile db. Default: 2, means warning. (default: 2)
@@ -688,7 +705,7 @@ GLOBAL OPTIONS:
688705
"stun" Uses STUN to detect an external IP using a default server
689706
"stun:<server>" Uses STUN to detect an external IP using the given server (host:port)
690707
--nodiscover Disables the peer discovery mechanism (manual peer addition) (default: false)
691-
--discovery.v4, --discv4 Enables the V4 discovery mechanism (default: true)
708+
--discovery.v4, --discv4 Enables the V4 discovery mechanism (default: false)
692709
--discovery.v5, --discv5, --v5disc Enables the V5 discovery mechanism (default: true)
693710
--netrestrict value Restricts network communication to the given IP networks (CIDR masks)
694711
--nodekey value P2P node key file
@@ -725,6 +742,8 @@ GLOBAL OPTIONS:
725742
--no-downloader Disables downloader component (default: false)
726743
--downloader.verify Verify snapshots on startup. It will not report problems found, but re-download broken pieces. (default: false)
727744
--healthcheck Enable grpc health check (default: false)
745+
--mcp.addr value MCP server listening interface (default: "127.0.0.1")
746+
--mcp.port value MCP server listening port (default: 8553)
728747
--bor.heimdall value URL of Heimdall service (default: "http://localhost:1317")
729748
--webseed value Comma-separated URL's, holding metadata about network-support infrastructure (like S3 buckets with snapshots, bootnodes, etc...)
730749
--bor.withoutheimdall Run without Heimdall service (for testing purposes) (default: false)
@@ -733,6 +752,7 @@ GLOBAL OPTIONS:
733752
--aa Enable AA transactions (default: false)
734753
--ethstats value Reporting URL of a ethstats service (nodename:secret@host:port)
735754
--override.osaka value Manually specify the Osaka fork time, overriding the bundled setting (default: 0)
755+
--override.amsterdam value Manually specify the Amsterdam fork time, overriding the bundled setting (default: 0)
736756
--override.balancer value Manually specify the Balancer fork time, overriding the bundled setting (default: 0)
737757
--keep.stored.chain.config Avoid overriding chain config already stored in the DB (default: false)
738758
--caplin.discovery.addr value Address for Caplin DISCV5 protocol (default: "0.0.0.0")
@@ -818,7 +838,7 @@ GLOBAL OPTIONS:
818838
--log.dir.disable disable disk logging (default: false)
819839
--log.dir.path value Path to store user and error logs to disk
820840
--log.dir.prefix value The file name prefix for logs stored to disk
821-
--log.dir.verbosity value Set the log verbosity for logs stored to disk (default: "info")
841+
--log.dir.verbosity value Set the log verbosity for logs stored to disk (default: "dbug")
822842
--log.delays Enable block delay logging (default: false)
823843
--config value Sets erigon flags from YAML/TOML file
824844
--help, -h show help

docs/gitbook/src/fundamentals/default-ports.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ Erigon use the following default port for each service:
1515
| engine | `42069` | TCP & UDP | Snap sync (Bittorrent) | Public |
1616
| engine | `8551` | TCP | Engine API (JWT auth) | Private |
1717
| sentry | `30303` | TCP & UDP | eth/68 peering | Public |
18-
| sentry | `30304` | TCP & UDP | eth/67 peering | Public |
18+
| sentry | `30304` | TCP & UDP | eth/69 peering | Public |
1919
| sentry | `9091` | TCP | incoming gRPC Connections | Private |
2020
| rpcdaemon | `8545` | TCP | HTTP & WebSockets & GraphQL | Private |
2121
| shutter | `23102` | TCP | Peering | Public |

docs/gitbook/src/fundamentals/logs.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ Erigon implements a custom logging framework that supports structured logging wi
2626
Erigon provides extensive logging configuration through command-line flags. Key configuration options include:
2727

2828
* `--log.json`: Enable JSON formatting for console logs
29-
* `--verbosity`: Set console log level (default: `2`)
29+
* `--verbosity`: Set console log level (default: `info`)
3030
* `--log.dir.path`: Specify directory for log files. By default Erigon writing logs to `datadir/logs` directory.
3131
* `--log.dir.verbosity`: Set file log level
3232
* `--log.delays`: Enable block delay logging

docs/gitbook/src/fundamentals/modules/downloader.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -105,12 +105,12 @@ Flags:
105105
--pprof.port int pprof HTTP server listening port (default 6060)
106106
--seedbox Turns downloader into independent (doesn't need Erigon) software which discover/download/seed new files - useful for Erigon network, and can work on very cheap hardware. It will: 1) download .torrent from webseed 2) download new files after upgrade 3) we planing add discovery of new files soon
107107
--torrent.conns.perfile int Number of connections per file (default 10)
108-
--torrent.download.rate string Bytes per second, example: 32mb (default "128mb")
109-
--torrent.download.slots int Amount of files to download in parallel. (default 128)
108+
--torrent.download.rate string Bytes per second, example: 32mb (default "512mb")
109+
--torrent.download.slots int (DEPRECATED: No longer has any effect) Amount of files to download in parallel. (default 32)
110110
--torrent.maxpeers int Unused parameter (reserved for future use) (default 100)
111111
--torrent.port int Port to listen and serve BitTorrent protocol (default 42069)
112112
--torrent.staticpeers string Comma separated host:port to connect to
113-
--torrent.upload.rate string Bytes per second, example: 32mb (default "4mb")
113+
--torrent.upload.rate string Bytes per second, example: 32mb (default "16mb")
114114
--torrent.verbosity int 0=silent, 1=error, 2=warn, 3=info, 4=debug, 5=detail (must set --verbosity to equal or higher level and has default: 2) (default 2)
115115
--trace string Write execution trace to the given file
116116
--verbosity string Set the log level for console logs (default "info")

docs/gitbook/src/fundamentals/modules/rpc-daemon.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ The RPC daemon is a vital part of Erigon, as it implements the [**RPC Service**]
1414

1515
The Erigon RPC service offers three distinct deployment modes when it comes to the logical functionality, depending on whether it runs as part of the main `erigon` process or as a standalone `rpcdaemon` process.
1616

17-
<table data-header-hidden><thead><tr><th width="137"></th><th></th><th></th><th></th></tr></thead><tbody><tr><td><strong>Mode</strong></td><td><strong>Configuration</strong></td><td><strong>CLI Command to Run</strong></td><td><strong>Key Characteristics</strong></td></tr><tr><td>Embedded 🏡</td><td>RPC server is hosted within the <code>erigon</code> process.</td><td><code>./build/bin/erigon</code></td><td>The simplest, all-in-one solution. No separate RPC command is needed.</td></tr><tr><td>Local ⚙️</td><td><code>rpcdaemon</code> runs as a standalone process on the same machine as <code>erigon</code>. It directly accesses local data storage.</td><td><p>First (Erigon):</p><p><code>./build/bin/erigon --private.api.addr="&#x3C;host_IP>:9090"</code><br></p><p>Second (<code>rpcdaemon</code>):</p><p><code>./build/bin/rpcdaemon --datadir="&#x3C;erigon_data_path>"</code></p></td><td>Improves isolation, increases tuning options, and maintains high-performance data access. Requires two processes running on the same machine.</td></tr><tr><td>Remote 🌐</td><td><code>rpcdaemon</code> runs as a standalone process on a separate machine and accesses data storage remotely via the Erigon gRPC interface.</td><td><p>First (Erigon):</p><p><code>./build/bin/erigon --private.api.addr="&#x3C;host_IP>:9090" --grpc</code></p><p>Second (<code>rpcdaemon</code>):</p><p><code>./build/bin/rpcdaemon --private.api.addr="&#x3C;erigon_IP>:9090"</code></p></td><td>Highly scalable, leverages the same data storage for multiple service endpoints. Uses the <code>--private.api.addr</code> flag to point the daemon to the remote Erigon instance.</td></tr></tbody></table>
17+
<table data-header-hidden><thead><tr><th width="137"></th><th></th><th></th><th></th></tr></thead><tbody><tr><td><strong>Mode</strong></td><td><strong>Configuration</strong></td><td><strong>CLI Command to Run</strong></td><td><strong>Key Characteristics</strong></td></tr><tr><td>Embedded 🏡</td><td>RPC server is hosted within the <code>erigon</code> process.</td><td><code>./build/bin/erigon</code></td><td>The simplest, all-in-one solution. No separate RPC command is needed.</td></tr><tr><td>Local ⚙️</td><td><code>rpcdaemon</code> runs as a standalone process on the same machine as <code>erigon</code>. It directly accesses local data storage.</td><td><p>First (Erigon):</p><p><code>./build/bin/erigon --private.api.addr="&#x3C;host_IP>:9090"</code><br></p><p>Second (<code>rpcdaemon</code>):</p><p><code>./build/bin/rpcdaemon --datadir="&#x3C;erigon_data_path>"</code></p></td><td>Improves isolation, increases tuning options, and maintains high-performance data access. Requires two processes running on the same machine.</td></tr><tr><td>Remote 🌐</td><td><code>rpcdaemon</code> runs as a standalone process on a separate machine and accesses data storage remotely via the Erigon gRPC interface.</td><td><p>First (Erigon):</p><p><code>./build/bin/erigon --private.api.addr="&#x3C;host_IP>:9090"</code></p><p>Second (<code>rpcdaemon</code>):</p><p><code>./build/bin/rpcdaemon --private.api.addr="&#x3C;erigon_IP>:9090"</code></p></td><td>Highly scalable, leverages the same data storage for multiple service endpoints. Uses the <code>--private.api.addr</code> flag to point the daemon to the remote Erigon instance. Note: the <code>--grpc</code> flag is only available on the standalone <code>rpcdaemon</code> binary; the main <code>erigon</code> binary exposes its gRPC interface automatically via <code>--private.api.addr</code>.</td></tr></tbody></table>
1818

1919
For a comprehensive understanding and the latest instructions, the official documentation is essential:
2020

0 commit comments

Comments
 (0)