mirror of
https://github.com/sigp/lighthouse.git
synced 2026-04-19 22:08:30 +00:00
Fix PeerDAS sync scoring (#7352)
* Remove request tracking inside syncing chains * Prioritize by range peers in network context * Prioritize custody peers for columns by range * Explicit error handling of the no peers error case * Remove good_peers_on_sampling_subnets * Count AwaitingDownload towards the buffer limit * Retry syncing chains in AwaitingDownload state * Use same peer priorization for lookups * Review PR * Address TODOs * Revert changes to peer erroring in range sync * Revert metrics changes * Update comment * Pass peers_to_deprioritize to select_columns_by_range_peers_to_request * more idiomatic * Idiomatic while * Add note about infinite loop * Use while let * Fix wrong custody column count for lookup blocks * Remove impl * Remove stale comment * Fix build errors. * Or default * Review PR * BatchPeerGroup * Match block and blob signatures * Explicit match statement to BlockError in range sync * Remove todo in BatchPeerGroup * Remove participating peers from backfill sync * Remove MissingAllCustodyColumns error * Merge fixes * Clean up PR * Consistent naming of batch_peers * Address multiple review comments * Better errors for das * Penalize column peers once * Restore fn * Fix error enum * Removed MismatchedPublicKeyLen * Revert testing changes * Change BlockAndCustodyColumns enum variant * Revert type change in import_historical_block_batch * Drop pubkey cache * Don't collect Vec * Classify errors * Remove ReconstructColumnsError * More detailed UnrequestedSlot error * Lint test * Fix slot conversion * Reduce penalty for missing blobs * Revert changes in peer selection * Lint tests * Rename block matching functions * Reorder block matching in historical blocks * Fix order of block matching * Add store tests * Filter blockchain in assert_correct_historical_block_chain * Also filter before KZG checks * Lint tests * Fix lint * Fix fulu err assertion * Check point is not at infinity * Fix ws sync test * Revert dropping filter fn --------- Co-authored-by: Jimmy Chen <jchen.tc@gmail.com> Co-authored-by: Jimmy Chen <jimmy@sigmaprime.io> Co-authored-by: Pawan Dhananjay <pawandhananjay@gmail.com>
This commit is contained in:
@@ -2372,6 +2372,7 @@ where
|
||||
// Blobs are stored as data columns from Fulu (PeerDAS)
|
||||
if self.spec.is_peer_das_enabled_for_epoch(block.epoch()) {
|
||||
let columns = self.chain.get_data_columns(&block_root).unwrap().unwrap();
|
||||
let expected_custody_indices = columns.iter().map(|d| d.index).collect::<Vec<_>>();
|
||||
let custody_columns = columns
|
||||
.into_iter()
|
||||
.map(CustodyDataColumn::from_asserted_custody)
|
||||
@@ -2380,7 +2381,7 @@ where
|
||||
Some(block_root),
|
||||
block,
|
||||
custody_columns,
|
||||
self.get_sampling_column_count(),
|
||||
expected_custody_indices,
|
||||
&self.spec,
|
||||
)
|
||||
.unwrap()
|
||||
@@ -2409,15 +2410,17 @@ where
|
||||
.take(sampling_column_count)
|
||||
.map(CustodyDataColumn::from_asserted_custody)
|
||||
.collect::<Vec<_>>();
|
||||
let expected_custody_indices =
|
||||
columns.iter().map(|d| d.index()).collect::<Vec<_>>();
|
||||
RpcBlock::new_with_custody_columns(
|
||||
Some(block_root),
|
||||
block,
|
||||
columns,
|
||||
sampling_column_count,
|
||||
expected_custody_indices,
|
||||
&self.spec,
|
||||
)?
|
||||
} else {
|
||||
RpcBlock::new_without_blobs(Some(block_root), block, 0)
|
||||
RpcBlock::new_without_blobs(Some(block_root), block, sampling_column_count)
|
||||
}
|
||||
} else {
|
||||
let blobs = blob_items
|
||||
|
||||
Reference in New Issue
Block a user