diff --git a/beacon_node/beacon_chain/src/attestation_verification.rs b/beacon_node/beacon_chain/src/attestation_verification.rs index 9dc10a6be5..faa396966f 100644 --- a/beacon_node/beacon_chain/src/attestation_verification.rs +++ b/beacon_node/beacon_chain/src/attestation_verification.rs @@ -1371,7 +1371,7 @@ pub fn verify_signed_aggregate_signatures( .spec .fork_at_epoch(indexed_attestation.data().target.epoch); - let signature_sets = vec![ + let signature_sets = [ signed_aggregate_selection_proof_signature_set( |validator_index| pubkey_cache.get(validator_index).map(Cow::Borrowed), signed_aggregate, diff --git a/beacon_node/beacon_chain/src/sync_committee_verification.rs b/beacon_node/beacon_chain/src/sync_committee_verification.rs index f804176921..41d29d5526 100644 --- a/beacon_node/beacon_chain/src/sync_committee_verification.rs +++ b/beacon_node/beacon_chain/src/sync_committee_verification.rs @@ -628,7 +628,7 @@ pub fn verify_signed_aggregate_signatures( (signed_aggregate.message.contribution.slot + 1).epoch(T::EthSpec::slots_per_epoch()); let fork = chain.spec.fork_at_epoch(next_slot_epoch); - let signature_sets = vec![ + let signature_sets = [ signed_sync_aggregate_selection_proof_signature_set( |validator_index| pubkey_cache.get(validator_index).map(Cow::Borrowed), signed_aggregate, diff --git a/beacon_node/client/src/notifier.rs b/beacon_node/client/src/notifier.rs index 10d9587ccc..b1cf1bd7f5 100644 --- a/beacon_node/client/src/notifier.rs +++ b/beacon_node/client/src/notifier.rs @@ -298,28 +298,28 @@ pub fn spawn_notifier( let speed = speedo.slots_per_second(); let display_speed = speed.is_some_and(|speed| speed != 0.0); - + let est_time_in_secs = if let (Some(da_boundary_epoch), Some(original_slot)) = ( + beacon_chain.get_column_da_boundary(), + original_earliest_data_column_slot, + ) { + let target = original_slot.saturating_sub( + da_boundary_epoch.start_slot(T::EthSpec::slots_per_epoch()), + ); + speedo.estimated_time_till_slot(target) + } else { + None + }; if display_speed { info!( distance, speed = sync_speed_pretty(speed), - est_time = - estimated_time_pretty(beacon_chain.get_column_da_boundary().and_then( - |da_boundary| speedo.estimated_time_till_slot( - da_boundary.start_slot(T::EthSpec::slots_per_epoch()) - ) - )), + est_time = estimated_time_pretty(est_time_in_secs), "Downloading historical data columns" ); } else { info!( distance, - est_time = - estimated_time_pretty(beacon_chain.get_column_da_boundary().and_then( - |da_boundary| speedo.estimated_time_till_slot( - da_boundary.start_slot(T::EthSpec::slots_per_epoch()) - ) - )), + est_time = estimated_time_pretty(est_time_in_secs), "Downloading historical data columns" ); } diff --git a/beacon_node/execution_layer/src/test_utils/execution_block_generator.rs b/beacon_node/execution_layer/src/test_utils/execution_block_generator.rs index 29c764ee30..5652e557f2 100644 --- a/beacon_node/execution_layer/src/test_utils/execution_block_generator.rs +++ b/beacon_node/execution_layer/src/test_utils/execution_block_generator.rs @@ -29,7 +29,7 @@ use super::DEFAULT_TERMINAL_BLOCK; const TEST_BLOB_BUNDLE: &[u8] = include_bytes!("fixtures/mainnet/test_blobs_bundle.ssz"); const TEST_BLOB_BUNDLE_V2: &[u8] = include_bytes!("fixtures/mainnet/test_blobs_bundle_v2.ssz"); -pub const DEFAULT_GAS_LIMIT: u64 = 45_000_000; +pub const DEFAULT_GAS_LIMIT: u64 = 60_000_000; const GAS_USED: u64 = DEFAULT_GAS_LIMIT - 1; #[derive(Clone, Debug, PartialEq)] diff --git a/beacon_node/execution_layer/src/test_utils/mock_builder.rs b/beacon_node/execution_layer/src/test_utils/mock_builder.rs index f0991f1733..dbf393706c 100644 --- a/beacon_node/execution_layer/src/test_utils/mock_builder.rs +++ b/beacon_node/execution_layer/src/test_utils/mock_builder.rs @@ -40,7 +40,7 @@ use warp::reply::{self, Reply}; use warp::{Filter, Rejection}; pub const DEFAULT_FEE_RECIPIENT: Address = Address::repeat_byte(42); -pub const DEFAULT_GAS_LIMIT: u64 = 45_000_000; +pub const DEFAULT_GAS_LIMIT: u64 = 60_000_000; pub const DEFAULT_BUILDER_PRIVATE_KEY: &str = "607a11b45a7219cc61a3d9c5fd08c7eebd602a6a19a977f8d3771d5711a550f2"; diff --git a/book/src/advanced_builders.md b/book/src/advanced_builders.md index 3beb7c71c4..7202bd7bb9 100644 --- a/book/src/advanced_builders.md +++ b/book/src/advanced_builders.md @@ -60,7 +60,7 @@ relays, run one of the following services and configure lighthouse to use it wit ## Validator Client Configuration In the validator client you can configure gas limit and fee recipient on a per-validator basis. If no gas limit is -configured, Lighthouse will use a default gas limit of 45,000,000, which is the current default value used in execution +configured, Lighthouse will use a default gas limit of 60,000,000, which is the current default value used in execution engines. You can also enable or disable use of external builders on a per-validator basis rather than using `--builder-proposals`, `--builder-boost-factor` or `--prefer-builder-proposals`, which apply builder related preferences for all validators. In order to manage these configurations per-validator, you can either make updates to the `validator_definitions.yml` file @@ -75,7 +75,7 @@ transaction within the block to the fee recipient, so a discrepancy in fee recip is something afoot. > Note: The gas limit configured here is effectively a vote on block size, so the configuration should not be taken lightly. -> 45,000,000 is currently seen as a value balancing block size with how expensive it is for +> 60,000,000 is currently seen as a value balancing block size with how expensive it is for > the network to validate blocks. So if you don't feel comfortable making an informed "vote", using the default value is > encouraged. We will update the default value if the community reaches a rough consensus on a new value. diff --git a/book/src/help_vc.md b/book/src/help_vc.md index bd6a606ff3..b19ff0ba38 100644 --- a/book/src/help_vc.md +++ b/book/src/help_vc.md @@ -40,7 +40,7 @@ Options: The gas limit to be used in all builder proposals for all validators managed by this validator client. Note this will not necessarily be used if the gas limit set here moves too far from the previous block's - gas limit. [default: 45000000] + gas limit. [default: 60000000] --genesis-state-url A URL of a beacon-API compatible server from which to download the genesis state. Checkpoint sync server URLs can generally be used with diff --git a/common/eth2/src/types.rs b/common/eth2/src/types.rs index a90fe6d058..c3f9c305e0 100644 --- a/common/eth2/src/types.rs +++ b/common/eth2/src/types.rs @@ -1522,20 +1522,15 @@ pub struct ForkChoiceNode { pub execution_block_hash: Option, } -#[derive(Copy, Clone, Debug, Serialize, Deserialize, PartialEq, Eq)] +#[derive(Copy, Clone, Debug, Default, Serialize, Deserialize, PartialEq, Eq)] #[serde(rename_all = "snake_case")] pub enum BroadcastValidation { + #[default] Gossip, Consensus, ConsensusAndEquivocation, } -impl Default for BroadcastValidation { - fn default() -> Self { - Self::Gossip - } -} - impl Display for BroadcastValidation { fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { match self { diff --git a/lighthouse/tests/validator_client.rs b/lighthouse/tests/validator_client.rs index 913011ea3a..398c6fbd6b 100644 --- a/lighthouse/tests/validator_client.rs +++ b/lighthouse/tests/validator_client.rs @@ -505,7 +505,7 @@ fn no_doppelganger_protection_flag() { fn no_gas_limit_flag() { CommandLineTest::new() .run() - .with_config(|config| assert!(config.validator_store.gas_limit == Some(45_000_000))); + .with_config(|config| assert!(config.validator_store.gas_limit == Some(60_000_000))); } #[test] fn gas_limit_flag() { diff --git a/validator_client/http_api/src/tests/keystores.rs b/validator_client/http_api/src/tests/keystores.rs index a3c6cb4be3..dd2266e3f6 100644 --- a/validator_client/http_api/src/tests/keystores.rs +++ b/validator_client/http_api/src/tests/keystores.rs @@ -2091,7 +2091,7 @@ async fn import_remotekey_web3signer_disabled() { // Import web3signers. tester .client - .post_lighthouse_validators_web3signer(&vec![web3signer_req]) + .post_lighthouse_validators_web3signer(&[web3signer_req]) .await .unwrap(); @@ -2146,7 +2146,7 @@ async fn import_remotekey_web3signer_enabled() { // Import web3signers. tester .client - .post_lighthouse_validators_web3signer(&vec![web3signer_req.clone()]) + .post_lighthouse_validators_web3signer(&[web3signer_req.clone()]) .await .unwrap(); diff --git a/validator_client/initialized_validators/src/key_cache.rs b/validator_client/initialized_validators/src/key_cache.rs index a5a481923d..b600013c8b 100644 --- a/validator_client/initialized_validators/src/key_cache.rs +++ b/validator_client/initialized_validators/src/key_cache.rs @@ -291,7 +291,7 @@ mod tests { #[tokio::test] async fn test_encryption() { let mut key_cache = KeyCache::new(); - let keypairs = vec![Keypair::random(), Keypair::random()]; + let keypairs = [Keypair::random(), Keypair::random()]; let uuids = vec![Uuid::from_u128(1), Uuid::from_u128(2)]; let passwords = vec![ PlainText::from(vec![1, 2, 3, 4, 5, 6]), diff --git a/validator_client/lighthouse_validator_store/src/lib.rs b/validator_client/lighthouse_validator_store/src/lib.rs index ed1ffa6bf6..d10fecb32e 100644 --- a/validator_client/lighthouse_validator_store/src/lib.rs +++ b/validator_client/lighthouse_validator_store/src/lib.rs @@ -56,7 +56,7 @@ const SLASHING_PROTECTION_HISTORY_EPOCHS: u64 = 512; /// Currently used as the default gas limit in execution clients. /// /// https://ethpandaops.io/posts/gaslimit-scaling/. -pub const DEFAULT_GAS_LIMIT: u64 = 45_000_000; +pub const DEFAULT_GAS_LIMIT: u64 = 60_000_000; pub struct LighthouseValidatorStore { validators: Arc>, diff --git a/validator_client/src/cli.rs b/validator_client/src/cli.rs index 85e40ae6d3..477781d3e8 100644 --- a/validator_client/src/cli.rs +++ b/validator_client/src/cli.rs @@ -388,7 +388,7 @@ pub struct ValidatorClient { #[clap( long, value_name = "INTEGER", - default_value_t = 45_000_000, + default_value_t = 60_000_000, requires = "builder_proposals", help = "The gas limit to be used in all builder proposals for all validators managed \ by this validator client. Note this will not necessarily be used if the gas limit \