Skip to content

Conversation

@sashass1315
Copy link

Backfill intended to penalize only peers that actually participated in serving batches, but participating_peers was never populated. This meant no peers were penalized on terminal faulty failure. This change records the block peer on successful batch downloads in on_block_response() and records the peer on error in inject_error() after registering a failed download. This restores the intended behavior without altering APIs or broader flow.

@sashass1315 sashass1315 requested a review from jxs as a code owner December 3, 2025 18:56
@michaelsproul michaelsproul added Networking ready-for-review The code is ready for review labels Dec 15, 2025
@michaelsproul
Copy link
Member

Thanks for the PR, please rebase your changes on unstable and we can assign someone to review

@michaelsproul michaelsproul added waiting-on-author The reviewer has suggested changes and awaits thier implementation. and removed ready-for-review The code is ready for review labels Dec 15, 2025
@sashass1315 sashass1315 changed the base branch from stable to unstable December 15, 2025 09:13
@dapplion
Copy link
Collaborator

I think the concept of participating_peers in backfill sync doesn't make sense. If the hash chain is correct and the crypto passes validation that batch can be considered permanently ok. If backfill sync fails later for some reason, peers from previous batches don't need to be penalized. participating_peers existing in backfill sync feels like a copy-pasta from forward sync back in the day.

@sashass1315
Copy link
Author

I think the concept of participating_peers in backfill sync doesn't make sense. If the hash chain is correct and the crypto passes validation that batch can be considered permanently ok. If backfill sync fails later for some reason, peers from previous batches don't need to be penalized. participating_peers existing in backfill sync feels like a copy-pasta from forward sync back in the day.

I’ve removed participating_peers from BackFillSync and updated on_batch_process_result so that now only penalize the peer that provided the faulty batch (similar to range sync)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Networking waiting-on-author The reviewer has suggested changes and awaits thier implementation.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants