mirror of
https://github.com/sigp/lighthouse.git
synced 2026-03-14 02:12:33 +00:00
Add Gloas data column support (#8682)
Co-Authored-By: Eitan Seri-Levi <eserilev@ucsc.edu> Co-Authored-By: Eitan Seri- Levi <eserilev@gmail.com>
This commit is contained in:
@@ -17,11 +17,12 @@ use tokio_util::{
|
||||
compat::{Compat, FuturesAsyncReadCompatExt},
|
||||
};
|
||||
use types::{
|
||||
BeaconBlock, BeaconBlockAltair, BeaconBlockBase, BlobSidecar, ChainSpec, DataColumnSidecar,
|
||||
EmptyBlock, Epoch, EthSpec, EthSpecId, ForkContext, ForkName, LightClientBootstrap,
|
||||
LightClientBootstrapAltair, LightClientFinalityUpdate, LightClientFinalityUpdateAltair,
|
||||
LightClientOptimisticUpdate, LightClientOptimisticUpdateAltair, LightClientUpdate,
|
||||
MainnetEthSpec, MinimalEthSpec, SignedBeaconBlock,
|
||||
BeaconBlock, BeaconBlockAltair, BeaconBlockBase, BlobSidecar, ChainSpec, DataColumnSidecarFulu,
|
||||
DataColumnSidecarGloas, EmptyBlock, Epoch, EthSpec, EthSpecId, ForkContext, ForkName,
|
||||
LightClientBootstrap, LightClientBootstrapAltair, LightClientFinalityUpdate,
|
||||
LightClientFinalityUpdateAltair, LightClientOptimisticUpdate,
|
||||
LightClientOptimisticUpdateAltair, LightClientUpdate, MainnetEthSpec, MinimalEthSpec,
|
||||
SignedBeaconBlock,
|
||||
};
|
||||
|
||||
// Note: Hardcoding the `EthSpec` type for `SignedBeaconBlock` as min/max values is
|
||||
@@ -640,10 +641,23 @@ pub fn rpc_data_column_limits<E: EthSpec>(
|
||||
current_digest_epoch: Epoch,
|
||||
spec: &ChainSpec,
|
||||
) -> RpcLimits {
|
||||
RpcLimits::new(
|
||||
DataColumnSidecar::<E>::min_size(),
|
||||
DataColumnSidecar::<E>::max_size(spec.max_blobs_per_block(current_digest_epoch) as usize),
|
||||
)
|
||||
let fork_name = spec.fork_name_at_epoch(current_digest_epoch);
|
||||
|
||||
if fork_name.gloas_enabled() {
|
||||
RpcLimits::new(
|
||||
DataColumnSidecarGloas::<E>::min_size(),
|
||||
DataColumnSidecarGloas::<E>::max_size(
|
||||
spec.max_blobs_per_block(current_digest_epoch) as usize
|
||||
),
|
||||
)
|
||||
} else {
|
||||
RpcLimits::new(
|
||||
DataColumnSidecarFulu::<E>::min_size(),
|
||||
DataColumnSidecarFulu::<E>::max_size(
|
||||
spec.max_blobs_per_block(current_digest_epoch) as usize
|
||||
),
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
/* Inbound upgrade */
|
||||
|
||||
Reference in New Issue
Block a user