erigontech / erigontech/erigon

Turn `inMem` heuristic to bool cfg

Open
#11,774 2 comments 0 reactions 0 assignees View on GitHub
tech debt reduction
Dominant language
Go
Stars
3.6k
Forks
1.5k
Avg merge
1d 16h
Merged PRs (30d)
465

Description

need get rid of `inMemExec := txc.Doms != nil`

Let's turn `inMemExec` and `isMining` into enum with 3 options:
`Mining/ForkValidation/ApplyBlocks` (feel free to propose better naming)

`InMem` - it's `ForkValidation`

Value let's store inside `type Sync struct` (we have 3 sync instances) and set to `StageState.CurrentSyncCycle.Mode`

Contributor guide

Open the contributing guide

Research direction

Start by tracing inMemExec, isMining, and txc.Doms to the type Sync definition and the three Sync instances. Read how StageState.CurrentSyncCycle.Mode is populated, then confirm the three modes cover Mining, ForkValidation, and ApplyBlocks, with InMem mapped to ForkValidation. Done means the heuristic is removed and all Sync instances use the explicit mode.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
blockchain
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
28/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.