mirror of
https://github.com/status-im/nimbus-eth1.git
synced 2025-02-13 04:27:03 +00:00
* Stop negotiating pivot if peer repeatedly replies w/usesless answers why: There is some fringe condition where a peer replies with legit but useless empty headers repetely. This goes on until somebody stops. We stop now. * Rename `missingNodes` => `sickSubTries` why: These (probably missing) nodes represent in reality fully or partially missing sub-tries. The top nodes may even exist, e.g. as a shallow sub-trie. also: Keep track of account healing on/of by bool variable `accountsHealing` controlled in `pivot_helper.execSnapSyncAction()` * Add `nimbus` option argument `snapCtx` for starting snap recovery (if any) also: + Trigger the recovery (or similar) process from inside the global peer worker initialisation `worker.setup()` and not by the `snap.start()` function. + Have `runPool()` returned a `bool` code to indicate early stop to scheduler. * Can import partial snap sync checkpoint at start details: + Modified what is stored with the checkpoint in `snapdb_pivot.nim` + Will be loaded within `runDaemon()` if activated * Forgot to import total coverage range why: Only the top (or latest) pivot needs coverage but the total coverage is the list of all ranges for all pivots -- simply forgotten.
55 lines
1.2 KiB
Nim
55 lines
1.2 KiB
Nim
# nimbus-eth1
|
|
# Copyright (c) 2021 Status Research & Development GmbH
|
|
# Licensed under either of
|
|
# * Apache License, version 2.0, ([LICENSE-APACHE](LICENSE-APACHE) or
|
|
# http://www.apache.org/licenses/LICENSE-2.0)
|
|
# * MIT license ([LICENSE-MIT](LICENSE-MIT) or
|
|
# http://opensource.org/licenses/MIT)
|
|
# at your option. This file may not be copied, modified, or distributed
|
|
# except according to those terms.
|
|
|
|
type
|
|
HexaryDbError* = enum
|
|
NothingSerious = 0
|
|
|
|
AccountNotFound
|
|
AccountsNotSrictlyIncreasing
|
|
AccountRangesOverlap
|
|
LowerBoundAfterFirstEntry
|
|
LowerBoundProofError
|
|
NodeNotFound
|
|
RlpEncoding
|
|
SlotsNotSrictlyIncreasing
|
|
TrieLoopAlert
|
|
TrieIsEmpty
|
|
TooManyProcessedChunks
|
|
TooManySlotAccounts
|
|
|
|
# import
|
|
DifferentNodeValueExists
|
|
ExpectedNodeKeyDiffers
|
|
Rlp2Or17ListEntries
|
|
RlpBlobExpected
|
|
RlpBranchLinkExpected
|
|
RlpExtPathEncoding
|
|
RlpNonEmptyBlobExpected
|
|
|
|
# interpolate
|
|
AccountRepairBlocked
|
|
InternalDbInconsistency
|
|
RightBoundaryProofFailed
|
|
RootNodeMismatch
|
|
RootNodeMissing
|
|
|
|
# bulk storage
|
|
AddBulkItemFailed
|
|
CannotOpenRocksDbBulkSession
|
|
CommitBulkItemsFailed
|
|
NoRocksDbBackend
|
|
UnresolvedRepairNode
|
|
OSErrorException
|
|
StateRootNotFound
|
|
|
|
# End
|
|
|