mirror of
https://github.com/sigp/lighthouse.git
synced 2026-03-20 13:24:44 +00:00
merge with capella
This commit is contained in:
@@ -772,6 +772,38 @@ pub fn cli_app<'a, 'b>() -> App<'a, 'b> {
|
||||
experimental as it may obscure performance issues.")
|
||||
.takes_value(false)
|
||||
)
|
||||
.arg(
|
||||
Arg::with_name("disable-proposer-reorgs")
|
||||
.long("disable-proposer-reorgs")
|
||||
.help("Do not attempt to reorg late blocks from other validators when proposing.")
|
||||
.takes_value(false)
|
||||
)
|
||||
.arg(
|
||||
Arg::with_name("proposer-reorg-threshold")
|
||||
.long("proposer-reorg-threshold")
|
||||
.value_name("PERCENT")
|
||||
.help("Percentage of vote weight below which to attempt a proposer reorg. \
|
||||
Default: 20%")
|
||||
.conflicts_with("disable-proposer-reorgs")
|
||||
)
|
||||
.arg(
|
||||
Arg::with_name("proposer-reorg-epochs-since-finalization")
|
||||
.long("proposer-reorg-epochs-since-finalization")
|
||||
.value_name("EPOCHS")
|
||||
.help("Maximum number of epochs since finalization at which proposer reorgs are \
|
||||
allowed. Default: 2")
|
||||
.conflicts_with("disable-proposer-reorgs")
|
||||
)
|
||||
.arg(
|
||||
Arg::with_name("prepare-payload-lookahead")
|
||||
.long("prepare-payload-lookahead")
|
||||
.value_name("MILLISECONDS")
|
||||
.help("The time before the start of a proposal slot at which payload attributes \
|
||||
should be sent. Low values are useful for execution nodes which don't \
|
||||
improve their payload after the first call, and high values are useful \
|
||||
for ensuring the EL is given ample notice. Default: 1/3 of a slot.")
|
||||
.takes_value(true)
|
||||
)
|
||||
.arg(
|
||||
Arg::with_name("fork-choice-before-proposal-timeout")
|
||||
.long("fork-choice-before-proposal-timeout")
|
||||
|
||||
@@ -1,3 +1,7 @@
|
||||
use beacon_chain::chain_config::{
|
||||
ReOrgThreshold, DEFAULT_PREPARE_PAYLOAD_LOOKAHEAD_FACTOR,
|
||||
DEFAULT_RE_ORG_MAX_EPOCHS_SINCE_FINALIZATION, DEFAULT_RE_ORG_THRESHOLD,
|
||||
};
|
||||
use clap::ArgMatches;
|
||||
use clap_utils::flags::DISABLE_MALLOC_TUNING_FLAG;
|
||||
use client::{ClientConfig, ClientGenesis};
|
||||
@@ -18,6 +22,7 @@ use std::net::Ipv6Addr;
|
||||
use std::net::{IpAddr, Ipv4Addr, ToSocketAddrs};
|
||||
use std::path::{Path, PathBuf};
|
||||
use std::str::FromStr;
|
||||
use std::time::Duration;
|
||||
use types::{Checkpoint, Epoch, EthSpec, Hash256, PublicKeyBytes, GRAFFITI_BYTES_LEN};
|
||||
use unused_port::{unused_tcp_port, unused_udp_port};
|
||||
|
||||
@@ -680,11 +685,32 @@ pub fn get_config<E: EthSpec>(
|
||||
client_config.chain.enable_lock_timeouts = false;
|
||||
}
|
||||
|
||||
if cli_args.is_present("disable-proposer-reorgs") {
|
||||
client_config.chain.re_org_threshold = None;
|
||||
} else {
|
||||
client_config.chain.re_org_threshold = Some(
|
||||
clap_utils::parse_optional(cli_args, "proposer-reorg-threshold")?
|
||||
.map(ReOrgThreshold)
|
||||
.unwrap_or(DEFAULT_RE_ORG_THRESHOLD),
|
||||
);
|
||||
client_config.chain.re_org_max_epochs_since_finalization =
|
||||
clap_utils::parse_optional(cli_args, "proposer-reorg-epochs-since-finalization")?
|
||||
.unwrap_or(DEFAULT_RE_ORG_MAX_EPOCHS_SINCE_FINALIZATION);
|
||||
}
|
||||
|
||||
// Note: This overrides any previous flags that enable this option.
|
||||
if cli_args.is_present("disable-deposit-contract-sync") {
|
||||
client_config.sync_eth1_chain = false;
|
||||
}
|
||||
|
||||
client_config.chain.prepare_payload_lookahead =
|
||||
clap_utils::parse_optional(cli_args, "prepare-payload-lookahead")?
|
||||
.map(Duration::from_millis)
|
||||
.unwrap_or_else(|| {
|
||||
Duration::from_secs(spec.seconds_per_slot)
|
||||
/ DEFAULT_PREPARE_PAYLOAD_LOOKAHEAD_FACTOR
|
||||
});
|
||||
|
||||
if let Some(timeout) =
|
||||
clap_utils::parse_optional(cli_args, "fork-choice-before-proposal-timeout")?
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user