nimbus-eth1/nimbus/sync/misc
Jordan Hrycaj a689e9185a
Prep for full sync after snap make 5 (#1286)
* Update docu and logging

* Extracted and updated constants from `worker_desc` into separate file

* Update and re-calibrate communication error handling

* Allow simplified pivot negotiation

why:
  This feature allows to turn off pivot negotiation so that peers agree
  on a a pivot header.

  For snap sync with fast changing pivots this only throttles the sync
  process. The finally downloaded DB snapshot is typically a merged
  version of different pivot states augmented by a healing process.

* Re-model worker queues for accounts download & healing

why:
  Currently there is only one data fetch per download or healing task.
  This task is then repeated by the scheduler after a short time. In
  many cases, this short time seems enough for some peers to decide to
  terminate connection.

* Update main task batch `runMulti()`

details:
  The function `runMulti()` is activated in quasi-parallel mode by the
  scheduler. This function calls the download, healing and fast-sync
  functions.

  While in debug mode, after each set of jobs run by this function the
  database is analysed (by the `snapdb_check` module) and the result
  printed.
2022-11-01 15:07:44 +00:00
..
notused Prep for full sync after snap make 4 (#1282) 2022-10-27 14:49:28 +01:00
best_pivot.nim Prep for full sync after snap make 5 (#1286) 2022-11-01 15:07:44 +00:00
block_queue.nim Remodel persistent snapdb access (#1274) 2022-10-20 17:59:54 +01:00
timer_helper.nim Isolating sync action modules (#1249) 2022-09-30 09:22:14 +01:00