Skip to content

Full node with no validators attached to store only custody columns and discard extra sampling columns #8129

@jimmygchen

Description

@jimmygchen

Description

When subnet sampling was implemented in #6410, I didn't implement discarding the extra sampling columns (see comment) for the reasons below

  • It wasn't clear whether we were going to implement peer sampling in Fulu at the time, which would make the change redundant
  • CustodyContext didn't exist and there wasn't an simple and clean way for the beacon chain to filter out sampling columns
    all_custody_columns_ordered: OnceLock<Box<[ColumnIndex]>>,

So there was a bit of extra effort with some chance that it would be eventually reverted - and even with the change, the benefit for full nodes was quite minimal - they would still have to download & sample the 4 extra columns, and saving only 64kb for a 8-blob block.

However, this seems worth implementing now peer sampling has been completely removed from the spec, and also this is now straight forward to do because BeaconChain knows exact which columns to discard.

Metadata

Metadata

Assignees

Labels

backwards-incompatBackwards-incompatible API changev8.0.0Q4 2025 Fusaka Mainnet Release

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions