16GB Linux, 512 GB SSD, mainly started for RPC purposes only. No mining activity.

geth --datadir ./data --syncmode fast console --rpc --rpcport 8545 --rpcaddr "" --rpccorsdomain "*" --rpcapi "db,eth,net,web3,personal" --etherbase "0x..Censored"

The node was synced after 3 ~ 4 days.

But then from time to time, it will get out of sync. Can't catchup with the mainnet.

Sometimes it can be few thousands block behind. Even when it is left idle (no RPC calls)

May I know if there is a way to improve?

> eth.syncing
  currentBlock: 7525381,
  highestBlock: 7525470,
  knownStates: 376823561,
  pulledStates: 376819512,
  startingBlock: 7422751
> INFO [04-08|05:04:52.886] Imported new state entries count=477  elapsed=3.605ms   processed=376819989 pending=3914  retry=0   duplicate=8198 unexpected=100391
  • Do you have another service running in the same machine? ie a database for example. Geth uses a lots of input/output so check if there's another process using it at the same time. Another check if if you have enough peers, if you are behind a NAT router it may prevent connecting with more peers if the p2p port 30303 is being blocked. Check your SSD for possible hardware problems. – Ismael Apr 8 '19 at 17:58
  • Thanks Ismael, there is nothing other than geth. Number of peers normally are 4 ~ 8. Port 30303 is opened for inbound. Do I need to open it for outbound as well? – s k Apr 9 '19 at 4:13
  • In a comment to this answer ethereum.stackexchange.com/a/810 they suggest to allow outbound connections to tcp port 30303. – Ismael Apr 9 '19 at 4:38

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.