Energy Web Documentation
  • Energy Web Ecosystem
  • Launchpad by Energy Web
  • EWC Validator Documentation
  • Community Ressources
  • Legacy documentation
  • Start here
    • EWC Validator Documentation Overview
  • EWC Governance
    • Governance process
    • Proof-of-Authority Consensus Mechanism
    • EWC Validator Node Operational Functions
    • EWC Validator Roles & Responsibilities
    • Validators eligibility
    • Validators code of conduct
  • Guides
    • Set-up your Validator node in minutes with EW Launchpad
    • Installing a Validator Node
      • Host Machine Requirements
      • Recommended Security Settings
      • Operating System Requirements
      • Validator Node Installation Instructions
    • Maintaining a Validator Node
      • Validator Node Architecture
      • Validator Node Service Commands
      • Updating the Client
      • Changing the Validator Config File
      • Checking node status & logs
      • Migrating a validator node to a new environment
      • How To Transfer EWT from a Validator Node
      • Problems connecting to peers
  • Secure Your Validator Node
    • Changing validator payout address and setting up multi-signature
Powered by GitBook
On this page
  • Warp Sync
  • Minimum Gas-Price
  • Block Gas Limit
Export as PDF
  1. Guides
  2. Maintaining a Validator Node

Changing the Validator Config File

To change parameters of the validator client you have to change the config file of your validator node.

In the host, make sure you have root access and go into the config folder

Now you can edit the parity-signing.toml file that should look similar to this:

[parity]
chain = "/parity/config/chainspec.json"
no_persistent_txqueue = true

[rpc]
disable = false
port = 8545
interface = "0.0.0.0"
cors = []
apis = ["eth", "net", "parity", "web3"]

[websockets]
disable = false
interface = "0.0.0.0"
port = 8546

[ipc]
disable = true

[secretstore]
disable = true

[network]
port = 30303
min_peers = 25
max_peers = 50
discovery = true
warp = false
allow_ips = "all"
snapshot_peers = 0
max_pending_peers = 64

[footprint]
db_compaction = "ssd"

[snapshots]
enable = false

[mining]
force_sealing = true
usd_per_tx = "0.000000000000000001"
usd_per_eth = "1"
price_update_period = "hourly"
min_gas_price = 1
gas_cap = "4000000"
gas_floor_target = "4000000"
tx_gas_limit = "4000000"
extra_data = "validator-XXX"
engine_signer = "0xXXX"

[account]
password = ["XXX"]
keys_iterations = XXX

Most parameters should not be changed. But there are several parameters that can be adapted.

Warp Sync

If your node is having trouble syncing after a client update, restarting the node, or an unplanned outage, you can speed up the syncing process by enabling warp sync:

  • Under [network] change: warp = true

  • Restart docker container: docker-compose up -d

Minimum Gas-Price

The minimum gas price defines the lowest price that you allow to be paid for a transaction in Wei/Gas to still be included into a block by your validator node. Every transaction that has a gas price below that will be ignored. What price to set should depend largely on the transaction volume at the current moment. Every validator can choose this parameter individually. If it is too low, there is little spam protection and spammers can just fill up the blocks for little cost. If it is too high, it unjustifiably increases the price per transaction and might deter usage.

usd_per_tx defines the amount of USD to be paid for a basic transaction of sending tokens. The minimum gas price is set accordingly.

usd_per_eth defines the USD value of one token.

price_update_period defines the time that is allowed to pass between each gas price update. T may be daily, hourly, a number of seconds, or a time string of the form "2 days", "30 minutes" etc.

min_gas_price defines the minimum gas price in Wei/Gas and overrides usd_per_tx.

Block Gas Limit

Validators can choose the size of the blocks and thereby the number of transactions to include in a block. The bigger the blocks, the higher the transaction throughput. But if the block is too big, executing all transactions in that block might create problems with latency. Therefore the EWF will advise on a target blockgas limit. Once the limit is changed in the config file it will slowly increase until it has reached the defined limit. If validators do not agree on a limit, it will increase and decrease depending on who proposed the block.

gas_cap defines the absolute maximum amount of gas that will be allowed in a block depending on the transaction volume.

gas_floor_target defines the block size that the validator node targets when creating a new block.

tx_gas_limit defines the maximum gas amount that is allowed for a single transaction.

To restart the validator node, run

The parity client should now be running with the new configurations.

PreviousUpdating the ClientNextChecking node status & logs

Last updated 2 years ago

For more information, see

You can read about all possible configurations here:

sudo -s 
cd docker-stack/config
docker-compose restart parity
https://openethereum.github.io/Warp-Sync
https://openethereum.github.io/Configuring-OpenEthereum.html