Remove RequestState trait from block lookup sync#9399
Closed
dapplion wants to merge 7 commits into
Closed
Conversation
… classification Combine PR sigp#9327's processing-result classification redesign (BlockProcessingResult becomes Imported/ParentUnknown/Error with producer-side penalty classification in network_beacon_processor) with PR sigp#9155's RequestState trait removal (concrete BlockRequest/DataRequest state machine in single_block_lookup.rs, concrete download/ processing handlers in block_lookups/mod.rs). The common.rs RequestState trait is deleted. ParentUnknown remains reactive (surfaced from the processing result), as in unstable. All gloas constructs are stripped.
…move-request-state-trait # Conflicts: # beacon_node/network/src/network_beacon_processor/sync_methods.rs # beacon_node/network/src/sync/block_lookups/mod.rs # beacon_node/network/src/sync/manager.rs # beacon_node/network/src/sync/tests/lookups.rs
- BlockRequest::new: replace todo!() (panicked on every lookup creation) - continue_requests: add missing break in data Some arm (was an infinite loop once block processed; spun at 100% CPU and starved the bound from ever returning TooManyAttempts) - remove dead SingleBlockLookup.failed_processing field (bounding lives in the per-state counter, matching unstable) - lint-full fixes: drop never-looping block-request loop, collapse if into a let-chain, remove redundant &/unused PeerGroup import Still open: expected_blobs>0 gating (TODO(gloas)) — happy_path_unknown_*_parent tests request columns for blobless blocks.
- Remove diff noise vs unstable: delete NewLookupTrigger (enum + threaded params + call sites + log), dead SyncNetworkContext::spec(), unused LookupRequestError::InternalError; revert has_peers->has_no_peers; restore upstream comments; restore is_for_block ordering. - BUG-1: gate custody/column request on should_fetch_custody_columns(epoch) (DA-window + peer-das), not just block.has_data(). - BUG-2: forward real seen_timestamp to block/column processing (was ZERO). - Round 2: drop now-dead consensus/types has_data() accessor and the needless DownloadResult #[allow(dead_code)]. (BUG-3 not taken: hard-failing on data Imported(false)/MissingComponents breaks duplicate-fully-imported lookups, which legitimately produce it.)
Removes gratuitous diff churn vs unstable: the AwaitingParent wrapper struct (+ Display/from_block/from_root/parent_root) and the Option<AwaitingParent> field/param forced .map(|a| a.parent_root()) at many call sites and made neighbouring fns (e.g. is_for_block) show as moved. Adopt upstream's plain Option<Hash256> + set_awaiting_parent/resolve_awaiting_parent verbatim. parent_chain.rs is now identical to unstable.
Collaborator
Author
|
Closing — duplicate of #9391 (trait removal). Branch and work retained. |
Collaborator
Author
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Typo