4

My geth consistenly stops synchronising after approximately 5-10 minutes of healthy downloading blocks. I've google around and tried various fixes including:

  • Running with the flags: --rpc, --cache=512 as mentioned in: Geth stopped syncing after a while
  • Installing the latest mist wallet and synchronising with that but synchronisation also hangs after about 5 minutes

I ran using the flag --vmodule=downloader=6 as suggested here and the output always converges to something like:

I0601 17:17:38.609524 3531 downloader.go:240] Unregistering peer 2af85be2f92b1abe I0601 17:17:38.658460 3531 downloader.go:931] Peer 038325873b9be31b [blocks 0.00/s, receipts 0.00/s, states 0.00/s, lacking 0]: head header timeout I0601 17:17:38.658514 3531 downloader.go:339] Synchronisation terminated after 3.001480912s I0601 17:17:38.658529 3531 downloader.go:263] Removing peer 038325873b9be31b: timeout I0601 17:17:38.658543 3531 downloader.go:240] Unregistering peer 038325873b9be31b I0601 17:17:38.723505 3531 downloader.go:252] Attempting synchronisation: 55836d952b9d4432, head [f427565c…], TD 23853227086448968682 I0601 17:17:38.723629 3531 downloader.go:337] Synchronising with the network using: 55836d952b9d4432 [eth/63] I0601 17:17:38.723662 3531 downloader.go:905] Peer 55836d952b9d4432 [blocks 0.00/s, receipts 0.00/s, states 0.00/s, lacking 0]: retrieving remote chain height I0601 17:17:38.747023 3531 downloader.go:228] Registering peer 3527031fc9945b8a I0601 17:17:38.905869 3531 downloader.go:240] Unregistering peer be55471dfeaddea0 I0601 17:17:40.509484 3531 downloader.go:240] Unregistering peer a7f8f52fa4b64dfa I0601 17:17:41.227673 3531 downloader.go:252] Attempting synchronisation: 55836d952b9d4432, head [f427565c…], TD 23853227086448968682 I0601 17:17:41.227723 3531 downloader.go:260] Synchronisation already in progress I0601 17:17:41.252802 3531 downloader.go:228] Registering peer 172d5f6904a60131 I0601 17:17:41.725586 3531 downloader.go:931] Peer 55836d952b9d4432 [blocks 0.00/s, receipts 0.00/s, states 0.00/s, lacking 0]: head header timeout I0601 17:17:41.725675 3531 downloader.go:339] Synchronisation terminated after 3.002020145s I0601 17:17:41.725689 3531 downloader.go:263] Removing peer 55836d952b9d4432: timeout I0601 17:17:41.725701 3531 downloader.go:240] Unregistering peer 55836d952b9d4432 I0601 17:17:41.994328 3531 downloader.go:240] Unregistering peer f42cd23b442bed31

Cancelling (using ctrl-c) and restarting causes geth to sync from the last downloaded block without any issues (but I don't want to have to continuously do this, I'm about 100000 blocks behind -.-).

Any help greatly appreciated!

P.s. I'm willing to remove my entire db and resync using --fast but I thought I'd check if there was anything else I could do first.

1 Answers1

1

It's an open bug. Follow it here.

Workaround:

sync on a fast system, and copy chaindata to slow system. If error occurs during the (short) sync after the transfer, then just wait, eventually a reply will come during a break in I/O workload, and the sync will make progress. Once synced, the node generates neglibily little I/O work, so it runs smoothly on a system with severly slow I/O (like an ARM board with USB2.0 flash drive).

q9f
  • 32,913
  • 47
  • 156
  • 395