Skip to content

Fix duplicate data columns in DataColumnsByRange responses#8843

Merged
mergify[bot] merged 5 commits into
sigp:release-v8.1from
jimmygchen:fix-data-columns-by-range-duplicates
Feb 18, 2026
Merged

Fix duplicate data columns in DataColumnsByRange responses#8843
mergify[bot] merged 5 commits into
sigp:release-v8.1from
jimmygchen:fix-data-columns-by-range-duplicates

Conversation

@jimmygchen

Copy link
Copy Markdown
Member

Description

Fix a regression introduced in #8682 where get_block_roots_from_store returns duplicate block roots for skip slots, causing duplicate data columns to be served in DataColumnsByRange responses. Peers receiving these duplicates downscore the node with DuplicatedData errors.

The return type was changed from Vec<Hash256> to Vec<(Hash256, Slot)>, but .unique() on tuples no longer deduplicates correctly because skip slots share the same block root but have different slots. Fix by using .unique_by(|(root, _)| *root).

Closes #8842

@jimmygchen jimmygchen requested a review from jxs as a code owner February 18, 2026 01:47
@jimmygchen jimmygchen added the v8.1.1 Hotfix for v8.1.0 label Feb 18, 2026
Comment thread beacon_node/network/src/network_beacon_processor/rpc_methods.rs
@michaelsproul

Copy link
Copy Markdown
Member

@jimmygchen Just needs a cargo fmt

@jimmygchen jimmygchen added the ready-for-review The code is ready for review label Feb 18, 2026
@jimmygchen

Copy link
Copy Markdown
Member Author

Thanks @michaelsproul!

We really should merge this lol

@mergify

This comment was marked as outdated.

@mergify mergify Bot 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 Feb 18, 2026
@jimmygchen jimmygchen added ready-for-review The code is ready for review and removed waiting-on-author The reviewer has suggested changes and awaits thier implementation. labels Feb 18, 2026

@michaelsproul michaelsproul left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good. Test logic makes sense (request 1 column over a range of slots -> block roots should be unique).

@michaelsproul michaelsproul added ready-for-merge This PR is ready to merge. and removed ready-for-review The code is ready for review labels Feb 18, 2026
@mergify mergify Bot added the queued label Feb 18, 2026
@mergify

mergify Bot commented Feb 18, 2026

Copy link
Copy Markdown

Merge Queue Status

Rule: default


This pull request spent 37 minutes 22 seconds in the queue, including 31 minutes 14 seconds running CI.

Required conditions to merge
  • check-success=local-testnet-success
  • check-success=test-suite-success

mergify Bot added a commit that referenced this pull request Feb 18, 2026
mergify Bot added a commit that referenced this pull request Feb 18, 2026
mergify Bot added a commit that referenced this pull request Feb 18, 2026
@mergify mergify Bot merged commit 691c8cf into sigp:release-v8.1 Feb 18, 2026
36 checks passed
@mergify mergify Bot removed the queued label Feb 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ready-for-merge This PR is ready to merge. syncing v8.1.1 Hotfix for v8.1.0

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants