Skip to content

Beacon sync remove some test options#3619

Merged
mjfh merged 4 commits intomasterfrom
Beacon-sync-remove-some-test-options
Sep 3, 2025
Merged

Beacon sync remove some test options#3619
mjfh merged 4 commits intomasterfrom
Beacon-sync-remove-some-test-options

Conversation

@mjfh
Copy link
Copy Markdown
Contributor

@mjfh mjfh commented Sep 3, 2025

No description provided.

mjfh added 4 commits September 3, 2025 11:42
why
  This allows to complete syncer initialisation for particular tasks,
  for test purposes as well as potential production run-time extensions.
why
  Only used for particular debugging tests. It has to be enabled by
  setting a constant in the `nimbus_config` (rather than a command
  line option.)

  The ticker or a similar functionality can be set up differently, not
  affecting the production binary.
why
  Only used for particular debugging tests. These test can be set up
  differently, not affecting the production binary.
@mjfh mjfh merged commit c672d6e into master Sep 3, 2025
19 of 20 checks passed
@mjfh mjfh deleted the Beacon-sync-remove-some-test-options branch September 3, 2025 12:58
Comment thread execution_chain/sync/beacon.nim
mjfh added a commit that referenced this pull request Sep 5, 2025
why
  The implementation on PR #3619 relied on a global variable to be set
  before the constructor was called. This not gc-safe in general (see
  remarks on PR #3619.)
mjfh added a commit that referenced this pull request Sep 5, 2025
* Re-implement the config hook inside the `BeaconSyncRef` descriptor

why
  The implementation on PR #3619 relied on a global variable to be set
  before the constructor was called. This not gc-safe in general (see
  remarks on PR #3619.)

* Remove `shouldRun()` from syncer

why
  The decision whether running the syncer will have any effect at all
  should be made only within the function that sets up the syncer. There
  is no need for an external register (i.e. `ctx.shouldRun`.)

* Fix header records list `metrics` race condition

why
  By using list manipulation functions directly (e.g.
  ctx.hdr.staged.clear() without updating `metrics`) there were
  odd metrics states displayed.

  The `header` module now always uses wrappers for changing the header
  records list. These wrappers update the `metrics` variable accordingly.

* Fix potential block records list `metrics` race condition

why
   The `block` module now always uses wrappers for changing the block
   records list. These wrappers update the `metrics` variable accordingly.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants