Resolve merge conflicts

This commit is contained in:
Eitan Seri-Levi
2026-04-25 17:14:57 +09:00
72 changed files with 6137 additions and 709 deletions

View File

@@ -392,6 +392,7 @@ pub enum Work<E: EthSpec> {
GossipBlock(AsyncFn),
GossipBlobSidecar(AsyncFn),
GossipDataColumnSidecar(AsyncFn),
GossipPartialDataColumnSidecar(AsyncFn),
DelayedImportBlock {
beacon_block_slot: Slot,
beacon_block_root: Hash256,
@@ -473,6 +474,7 @@ pub enum WorkType {
GossipBlock,
GossipBlobSidecar,
GossipDataColumnSidecar,
GossipPartialDataColumnSidecar,
DelayedImportBlock,
DelayedImportEnvelope,
GossipVoluntaryExit,
@@ -528,6 +530,7 @@ impl<E: EthSpec> Work<E> {
Work::GossipBlock(_) => WorkType::GossipBlock,
Work::GossipBlobSidecar(_) => WorkType::GossipBlobSidecar,
Work::GossipDataColumnSidecar(_) => WorkType::GossipDataColumnSidecar,
Work::GossipPartialDataColumnSidecar(_) => WorkType::GossipPartialDataColumnSidecar,
Work::DelayedImportBlock { .. } => WorkType::DelayedImportBlock,
Work::DelayedImportEnvelope { .. } => WorkType::DelayedImportEnvelope,
Work::GossipVoluntaryExit(_) => WorkType::GossipVoluntaryExit,
@@ -841,6 +844,10 @@ impl<E: EthSpec> BeaconProcessor<E> {
Some(item)
} else if let Some(item) = work_queues.gossip_data_column_queue.pop() {
Some(item)
} else if let Some(item) =
work_queues.gossip_partial_data_column_queue.pop()
{
Some(item)
} else if let Some(item) = work_queues.column_reconstruction_queue.pop() {
Some(item)
// Check the priority 0 API requests after blocks and blobs, but before attestations.
@@ -1151,6 +1158,9 @@ impl<E: EthSpec> BeaconProcessor<E> {
Work::GossipDataColumnSidecar { .. } => {
work_queues.gossip_data_column_queue.push(work, work_id)
}
Work::GossipPartialDataColumnSidecar { .. } => work_queues
.gossip_partial_data_column_queue
.push(work, work_id),
Work::DelayedImportBlock { .. } => {
work_queues.delayed_block_queue.push(work, work_id)
}
@@ -1291,6 +1301,9 @@ impl<E: EthSpec> BeaconProcessor<E> {
WorkType::GossipDataColumnSidecar => {
work_queues.gossip_data_column_queue.len()
}
WorkType::GossipPartialDataColumnSidecar => {
work_queues.gossip_partial_data_column_queue.len()
}
WorkType::DelayedImportBlock => work_queues.delayed_block_queue.len(),
WorkType::DelayedImportEnvelope => work_queues.delayed_envelope_queue.len(),
WorkType::GossipVoluntaryExit => {
@@ -1516,6 +1529,7 @@ impl<E: EthSpec> BeaconProcessor<E> {
Work::GossipBlock(work)
| Work::GossipBlobSidecar(work)
| Work::GossipDataColumnSidecar(work)
| Work::GossipPartialDataColumnSidecar(work)
| Work::GossipExecutionPayload(work) => task_spawner.spawn_async(async move {
work.await;
}),

View File

@@ -126,6 +126,7 @@ pub struct BeaconProcessorQueueLengths {
gossip_block_queue: usize,
gossip_blob_queue: usize,
gossip_data_column_queue: usize,
gossip_partial_data_column_queue: usize,
delayed_block_queue: usize,
delayed_envelope_queue: usize,
status_queue: usize,
@@ -199,6 +200,7 @@ impl BeaconProcessorQueueLengths {
gossip_block_queue: 1024,
gossip_blob_queue: 1024,
gossip_data_column_queue: 1024,
gossip_partial_data_column_queue: 1024,
delayed_block_queue: 1024,
delayed_envelope_queue: 1024,
status_queue: 1024,
@@ -255,6 +257,7 @@ pub struct WorkQueues<E: EthSpec> {
pub gossip_block_queue: FifoQueue<Work<E>>,
pub gossip_blob_queue: FifoQueue<Work<E>>,
pub gossip_data_column_queue: FifoQueue<Work<E>>,
pub gossip_partial_data_column_queue: FifoQueue<Work<E>>,
pub delayed_block_queue: FifoQueue<Work<E>>,
pub delayed_envelope_queue: FifoQueue<Work<E>>,
pub status_queue: FifoQueue<Work<E>>,
@@ -323,6 +326,8 @@ impl<E: EthSpec> WorkQueues<E> {
let gossip_block_queue = FifoQueue::new(queue_lengths.gossip_block_queue);
let gossip_blob_queue = FifoQueue::new(queue_lengths.gossip_blob_queue);
let gossip_data_column_queue = FifoQueue::new(queue_lengths.gossip_data_column_queue);
let gossip_partial_data_column_queue =
FifoQueue::new(queue_lengths.gossip_partial_data_column_queue);
let delayed_block_queue = FifoQueue::new(queue_lengths.delayed_block_queue);
let delayed_envelope_queue = FifoQueue::new(queue_lengths.delayed_envelope_queue);
@@ -388,6 +393,7 @@ impl<E: EthSpec> WorkQueues<E> {
gossip_block_queue,
gossip_blob_queue,
gossip_data_column_queue,
gossip_partial_data_column_queue,
delayed_block_queue,
delayed_envelope_queue,
status_queue,