mirror of
https://github.com/ethereum/go-ethereum.git
synced 2026-07-28 07:36:44 +00:00
* Added checks to RPC requests and introduced new flags to customise the parameters (#657) * added a check to reject rpc requests with batch size > the one set using a newly added flag (rpcbatchlimit) * added a check to reject rpc requests whose result size > the one set using a newly added flag (rpcreturndatalimit) * updated the config files and docs * chg : trieTimeout from 60 to 10 mins (#692) * chg : trieTimeout from 60 to 10 mins * chg : cache.timout to 10m from 1h in configs * internal/cli/server : fix : added triesInMemory in config (#691) * changed version from 0.3.0 to 0.3.4-beta (#693) * fix nil state-sync issue, increase grpc limit (#695) * Increase grpc message size limit in pprof * consensus/bor/bor.go : stateSyncs init fixed [Fix #686] * eth/filters: handle nil state-sync before notify * eth/filters: update check Co-authored-by: Jerry <jerrycgh@gmail.com> Co-authored-by: Daniil <daniil.melnik@chainstack.com> * core, tests/bor: add more tests for state-sync validation (#710) * core: add get state sync function for tests * tests/bor: add validation for state sync events post consensus * Arpit/temp bor sync (#701) * Increase grpc message size limit in pprof * ReadBorReceipts improvements * use internal function * fix tests * fetch geth upstread for ReadBorReceiptRLP * Only query bor receipt when the query index is equal to # tx in block body This change reduces the frequency of calling ReadBorReceipt and ReadBorTransaction, which are CPU and db intensive. * Revert "fetch geth upstread for ReadBorReceiptRLP" This reverts commit 2e838a6b1313d26674f3a8df4b044e35dcbf35a0. * Restore ReadBorReceiptRLP * fix bor receipts * remove unused * fix lints --------- Co-authored-by: Jerry <jerrycgh@gmail.com> Co-authored-by: Manav Darji <manavdarji.india@gmail.com> Co-authored-by: Evgeny Danienko <6655321@bk.ru> * Revert "chg : trieTimeout from 60 to 10 mins (#692)" (#720) This reverts commit241843c7e7. * Arpit/add execution pool 2 (#719) * initial * linters * linters * remove timeout * update pool * change pool size function * check nil * check nil * fix tests * Use execution pool from server in all handlers * simplify things * test fix * add support for cli, config * add to cli and config * merge base branch * debug statements * fix bug * atomic pointer timeout * add apis * update workerpool * fix issues * change params * fix issues * fix ipc issue * remove execution pool from IPC * revert * fix tests * mutex * refactor flag and value names * ordering fix * refactor flag and value names * update default ep size to 40 * fix bor start issues * revert file changes * debug statements * fix bug * update workerpool * atomic pointer timeout * add apis * Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool * fix issues * change params * fix issues * fix ipc issue * remove execution pool from IPC * revert * merge base branch * Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool * mutex * fix tests * Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool * Change default size of execution pool to 40 * refactor flag and value names * fix merge conflicts * ordering fix * refactor flag and value names * update default ep size to 40 * fix bor start issues * revert file changes * fix linters * fix go.mod * change sec to ms * change default value for ep timeout * fix node api calls * comment setter for ep timeout --------- Co-authored-by: Evgeny Danienko <6655321@bk.ru> Co-authored-by: Jerry <jerrycgh@gmail.com> Co-authored-by: Manav Darji <manavdarji.india@gmail.com> * version change (#721) * Event based pprof (#732) * feature * Save pprof to /tmp --------- Co-authored-by: Jerry <jerrycgh@gmail.com> * Cherry-pick changes from develop (#738) * Check if block is nil to prevent panic (#736) * miner: use env for tracing instead of block object (#728) --------- Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com> * add max code init size check in txpool (#739) * Revert "Event based pprof" and update version (#742) * Revert "Event based pprof (#732)" This reverts commit22fa4033e8. * params: update version to 0.3.4-beta3 * packaging/templates: update bor version * params, packaging/templates: update bor version --------- Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com> Co-authored-by: Pratik Patil <pratikspatil024@gmail.com> Co-authored-by: Jerry <jerrycgh@gmail.com> Co-authored-by: Daniil <daniil.melnik@chainstack.com> Co-authored-by: Arpit Temani <temaniarpit27@gmail.com> Co-authored-by: Evgeny Danienko <6655321@bk.ru> Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>
225 lines
No EOL
9.7 KiB
Markdown
225 lines
No EOL
9.7 KiB
Markdown
# Server
|
|
|
|
The ```bor server``` command runs the Bor client.
|
|
|
|
## Options
|
|
|
|
- ```chain```: Name of the chain to sync ('mumbai', 'mainnet') or path to a genesis file (default: mainnet)
|
|
|
|
- ```identity```: Name/Identity of the node
|
|
|
|
- ```log-level```: Set log level for the server (default: INFO)
|
|
|
|
- ```datadir```: Path of the data directory to store information
|
|
|
|
- ```datadir.ancient```: Data directory for ancient chain segments (default = inside chaindata)
|
|
|
|
- ```keystore```: Path of the directory where keystores are located
|
|
|
|
- ```rpc.batchlimit```: Maximum number of messages in a batch (default=100, use 0 for no limits) (default: 100)
|
|
|
|
- ```rpc.returndatalimit```: Maximum size (in bytes) a result of an rpc request could have (default=100000, use 0 for no limits) (default: 100000)
|
|
|
|
- ```config```: File for the config file
|
|
|
|
- ```syncmode```: Blockchain sync mode (only "full" sync supported) (default: full)
|
|
|
|
- ```gcmode```: Blockchain garbage collection mode ("full", "archive") (default: full)
|
|
|
|
- ```eth.requiredblocks```: Comma separated block number-to-hash mappings to require for peering (<number>=<hash>)
|
|
|
|
- ```snapshot```: Enables the snapshot-database mode (default: true)
|
|
|
|
- ```bor.logs```: Enables bor log retrieval (default: false)
|
|
|
|
- ```bor.heimdall```: URL of Heimdall service (default: http://localhost:1317)
|
|
|
|
- ```bor.withoutheimdall```: Run without Heimdall service (for testing purpose) (default: false)
|
|
|
|
- ```bor.heimdallgRPC```: Address of Heimdall gRPC service
|
|
|
|
- ```ethstats```: Reporting URL of a ethstats service (nodename:secret@host:port)
|
|
|
|
- ```gpo.blocks```: Number of recent blocks to check for gas prices (default: 20)
|
|
|
|
- ```gpo.percentile```: Suggested gas price is the given percentile of a set of recent transaction gas prices (default: 60)
|
|
|
|
- ```gpo.maxprice```: Maximum gas price will be recommended by gpo (default: 5000000000000)
|
|
|
|
- ```gpo.ignoreprice```: Gas price below which gpo will ignore transactions (default: 2)
|
|
|
|
- ```disable-bor-wallet```: Disable the personal wallet endpoints (default: true)
|
|
|
|
- ```grpc.addr```: Address and port to bind the GRPC server (default: :3131)
|
|
|
|
- ```dev```: Enable developer mode with ephemeral proof-of-authority network and a pre-funded developer account, mining enabled (default: false)
|
|
|
|
- ```dev.period```: Block period to use in developer mode (0 = mine only if transaction pending) (default: 0)
|
|
|
|
### Account Management Options
|
|
|
|
- ```unlock```: Comma separated list of accounts to unlock
|
|
|
|
- ```password```: Password file to use for non-interactive password input
|
|
|
|
- ```allow-insecure-unlock```: Allow insecure account unlocking when account-related RPCs are exposed by http (default: false)
|
|
|
|
- ```lightkdf```: Reduce key-derivation RAM & CPU usage at some expense of KDF strength (default: false)
|
|
|
|
### Cache Options
|
|
|
|
- ```cache```: Megabytes of memory allocated to internal caching (default: 1024)
|
|
|
|
- ```cache.database```: Percentage of cache memory allowance to use for database io (default: 50)
|
|
|
|
- ```cache.trie```: Percentage of cache memory allowance to use for trie caching (default: 15)
|
|
|
|
- ```cache.trie.journal```: Disk journal directory for trie cache to survive node restarts (default: triecache)
|
|
|
|
- ```cache.trie.rejournal```: Time interval to regenerate the trie cache journal (default: 1h0m0s)
|
|
|
|
- ```cache.gc```: Percentage of cache memory allowance to use for trie pruning (default: 25)
|
|
|
|
- ```cache.snapshot```: Percentage of cache memory allowance to use for snapshot caching (default: 10)
|
|
|
|
- ```cache.noprefetch```: Disable heuristic state prefetch during block import (less CPU and disk IO, more time waiting for data) (default: false)
|
|
|
|
- ```cache.preimages```: Enable recording the SHA3/keccak preimages of trie keys (default: false)
|
|
|
|
- ```cache.triesinmemory```: Number of block states (tries) to keep in memory (default = 128) (default: 128)
|
|
|
|
- ```txlookuplimit```: Number of recent blocks to maintain transactions index for (default: 2350000)
|
|
|
|
### JsonRPC Options
|
|
|
|
- ```rpc.gascap```: Sets a cap on gas that can be used in eth_call/estimateGas (0=infinite) (default: 50000000)
|
|
|
|
- ```rpc.txfeecap```: Sets a cap on transaction fee (in ether) that can be sent via the RPC APIs (0 = no cap) (default: 5)
|
|
|
|
- ```ipcdisable```: Disable the IPC-RPC server (default: false)
|
|
|
|
- ```ipcpath```: Filename for IPC socket/pipe within the datadir (explicit paths escape it)
|
|
|
|
- ```http.corsdomain```: Comma separated list of domains from which to accept cross origin requests (browser enforced) (default: localhost)
|
|
|
|
- ```http.vhosts```: Comma separated list of virtual hostnames from which to accept requests (server enforced). Accepts '*' wildcard. (default: localhost)
|
|
|
|
- ```ws.origins```: Origins from which to accept websockets requests (default: localhost)
|
|
|
|
- ```graphql.corsdomain```: Comma separated list of domains from which to accept cross origin requests (browser enforced) (default: localhost)
|
|
|
|
- ```graphql.vhosts```: Comma separated list of virtual hostnames from which to accept requests (server enforced). Accepts '*' wildcard. (default: localhost)
|
|
|
|
- ```http```: Enable the HTTP-RPC server (default: false)
|
|
|
|
- ```http.addr```: HTTP-RPC server listening interface (default: localhost)
|
|
|
|
- ```http.port```: HTTP-RPC server listening port (default: 8545)
|
|
|
|
- ```http.rpcprefix```: HTTP path path prefix on which JSON-RPC is served. Use '/' to serve on all paths.
|
|
|
|
- ```http.api```: API's offered over the HTTP-RPC interface (default: eth,net,web3,txpool,bor)
|
|
|
|
- ```http.ep-size```: Maximum size of workers to run in rpc execution pool for HTTP requests (default: 40)
|
|
|
|
- ```http.ep-requesttimeout```: Request Timeout for rpc execution pool for HTTP requests (default: 0s)
|
|
|
|
- ```ws```: Enable the WS-RPC server (default: false)
|
|
|
|
- ```ws.addr```: WS-RPC server listening interface (default: localhost)
|
|
|
|
- ```ws.port```: WS-RPC server listening port (default: 8546)
|
|
|
|
- ```ws.rpcprefix```: HTTP path prefix on which JSON-RPC is served. Use '/' to serve on all paths.
|
|
|
|
- ```ws.api```: API's offered over the WS-RPC interface (default: net,web3)
|
|
|
|
- ```ws.ep-size```: Maximum size of workers to run in rpc execution pool for WS requests (default: 40)
|
|
|
|
- ```ws.ep-requesttimeout```: Request Timeout for rpc execution pool for WS requests (default: 0s)
|
|
|
|
- ```graphql```: Enable GraphQL on the HTTP-RPC server. Note that GraphQL can only be started if an HTTP server is started as well. (default: false)
|
|
|
|
### P2P Options
|
|
|
|
- ```bind```: Network binding address (default: 0.0.0.0)
|
|
|
|
- ```port```: Network listening port (default: 30303)
|
|
|
|
- ```bootnodes```: Comma separated enode URLs for P2P discovery bootstrap
|
|
|
|
- ```maxpeers```: Maximum number of network peers (network disabled if set to 0) (default: 50)
|
|
|
|
- ```maxpendpeers```: Maximum number of pending connection attempts (default: 50)
|
|
|
|
- ```nat```: NAT port mapping mechanism (any|none|upnp|pmp|extip:<IP>) (default: any)
|
|
|
|
- ```nodiscover```: Disables the peer discovery mechanism (manual peer addition) (default: false)
|
|
|
|
- ```v5disc```: Enables the experimental RLPx V5 (Topic Discovery) mechanism (default: false)
|
|
|
|
### Sealer Options
|
|
|
|
- ```mine```: Enable mining (default: false)
|
|
|
|
- ```miner.etherbase```: Public address for block mining rewards
|
|
|
|
- ```miner.extradata```: Block extra data set by the miner (default = client version)
|
|
|
|
- ```miner.gaslimit```: Target gas ceiling (gas limit) for mined blocks (default: 30000000)
|
|
|
|
- ```miner.gasprice```: Minimum gas price for mining a transaction (default: 1000000000)
|
|
|
|
### Telemetry Options
|
|
|
|
- ```metrics```: Enable metrics collection and reporting (default: false)
|
|
|
|
- ```metrics.expensive```: Enable expensive metrics collection and reporting (default: false)
|
|
|
|
- ```metrics.influxdb```: Enable metrics export/push to an external InfluxDB database (v1) (default: false)
|
|
|
|
- ```metrics.influxdb.endpoint```: InfluxDB API endpoint to report metrics to
|
|
|
|
- ```metrics.influxdb.database```: InfluxDB database name to push reported metrics to
|
|
|
|
- ```metrics.influxdb.username```: Username to authorize access to the database
|
|
|
|
- ```metrics.influxdb.password```: Password to authorize access to the database
|
|
|
|
- ```metrics.influxdb.tags```: Comma-separated InfluxDB tags (key/values) attached to all measurements
|
|
|
|
- ```metrics.prometheus-addr```: Address for Prometheus Server (default: 127.0.0.1:7071)
|
|
|
|
- ```metrics.opencollector-endpoint```: OpenCollector Endpoint (host:port) (default: 127.0.0.1:4317)
|
|
|
|
- ```metrics.influxdbv2```: Enable metrics export/push to an external InfluxDB v2 database (default: false)
|
|
|
|
- ```metrics.influxdb.token```: Token to authorize access to the database (v2 only)
|
|
|
|
- ```metrics.influxdb.bucket```: InfluxDB bucket name to push reported metrics to (v2 only)
|
|
|
|
- ```metrics.influxdb.organization```: InfluxDB organization name (v2 only)
|
|
|
|
### Transaction Pool Options
|
|
|
|
- ```txpool.locals```: Comma separated accounts to treat as locals (no flush, priority inclusion)
|
|
|
|
- ```txpool.nolocals```: Disables price exemptions for locally submitted transactions (default: false)
|
|
|
|
- ```txpool.journal```: Disk journal for local transaction to survive node restarts (default: transactions.rlp)
|
|
|
|
- ```txpool.rejournal```: Time interval to regenerate the local transaction journal (default: 1h0m0s)
|
|
|
|
- ```txpool.pricelimit```: Minimum gas price limit to enforce for acceptance into the pool (default: 1)
|
|
|
|
- ```txpool.pricebump```: Price bump percentage to replace an already existing transaction (default: 10)
|
|
|
|
- ```txpool.accountslots```: Minimum number of executable transaction slots guaranteed per account (default: 16)
|
|
|
|
- ```txpool.globalslots```: Maximum number of executable transaction slots for all accounts (default: 32768)
|
|
|
|
- ```txpool.accountqueue```: Maximum number of non-executable transaction slots permitted per account (default: 16)
|
|
|
|
- ```txpool.globalqueue```: Maximum number of non-executable transaction slots for all accounts (default: 32768)
|
|
|
|
- ```txpool.lifetime```: Maximum amount of time non-executable transaction are queued (default: 3h0m0s) |