mirror of
https://github.com/sigp/lighthouse.git
synced 2026-06-30 11:24:31 +00:00
Enable mplex by default and change --enable-mplex to take bool (#9476)
Enable Mplex by default, and let `--enable-mplex` take a bool argument. Co-Authored-By: Daniel Knopik <daniel@dknopik.de> Co-Authored-By: Michael Sproul <michael@sigmaprime.io> Co-Authored-By: Michael Sproul <michaelsproul@users.noreply.github.com>
This commit is contained in:
@@ -125,7 +125,7 @@ pub struct Config {
|
|||||||
/// Whether light client protocols should be enabled.
|
/// Whether light client protocols should be enabled.
|
||||||
pub enable_light_client_server: bool,
|
pub enable_light_client_server: bool,
|
||||||
|
|
||||||
/// Whether to enable the deprecated mplex multiplexer alongside yamux.
|
/// Whether to enable the mplex multiplexer alongside yamux. Enabled by default.
|
||||||
pub enable_mplex: bool,
|
pub enable_mplex: bool,
|
||||||
|
|
||||||
/// Configuration for the outbound rate limiter (requests made by this node).
|
/// Configuration for the outbound rate limiter (requests made by this node).
|
||||||
@@ -365,7 +365,7 @@ impl Default for Config {
|
|||||||
proposer_only: false,
|
proposer_only: false,
|
||||||
metrics_enabled: false,
|
metrics_enabled: false,
|
||||||
enable_light_client_server: true,
|
enable_light_client_server: true,
|
||||||
enable_mplex: false,
|
enable_mplex: true,
|
||||||
outbound_rate_limiter_config: None,
|
outbound_rate_limiter_config: None,
|
||||||
invalid_block_storage: None,
|
invalid_block_storage: None,
|
||||||
inbound_rate_limiter_config: None,
|
inbound_rate_limiter_config: None,
|
||||||
|
|||||||
@@ -390,9 +390,12 @@ pub fn cli_app() -> Command {
|
|||||||
.arg(
|
.arg(
|
||||||
Arg::new("enable-mplex")
|
Arg::new("enable-mplex")
|
||||||
.long("enable-mplex")
|
.long("enable-mplex")
|
||||||
.action(ArgAction::SetTrue)
|
.value_name("BOOLEAN")
|
||||||
.help_heading(FLAG_HEADER)
|
.action(ArgAction::Set)
|
||||||
.help("Enables mplex multiplexer alongside yamux. Yamux is preferred when both are available.")
|
.num_args(0..=1)
|
||||||
|
.default_value("true")
|
||||||
|
.default_missing_value("true")
|
||||||
|
.help("Enables the mplex multiplexer alongside yamux. Yamux is preferred when both are available. Enabled by default; set to \"false\" to disable.")
|
||||||
.display_order(0)
|
.display_order(0)
|
||||||
)
|
)
|
||||||
.arg(
|
.arg(
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ use beacon_chain::graffiti_calculator::GraffitiOrigin;
|
|||||||
use bls::PublicKeyBytes;
|
use bls::PublicKeyBytes;
|
||||||
use clap::{ArgMatches, Id, parser::ValueSource};
|
use clap::{ArgMatches, Id, parser::ValueSource};
|
||||||
use clap_utils::flags::DISABLE_MALLOC_TUNING_FLAG;
|
use clap_utils::flags::DISABLE_MALLOC_TUNING_FLAG;
|
||||||
use clap_utils::{parse_flag, parse_required};
|
use clap_utils::{parse_flag, parse_optional, parse_required};
|
||||||
use client::{ClientConfig, ClientGenesis};
|
use client::{ClientConfig, ClientGenesis};
|
||||||
use directory::{DEFAULT_BEACON_NODE_DIR, DEFAULT_NETWORK_DIR, DEFAULT_ROOT_DIR};
|
use directory::{DEFAULT_BEACON_NODE_DIR, DEFAULT_NETWORK_DIR, DEFAULT_ROOT_DIR};
|
||||||
use environment::RuntimeContext;
|
use environment::RuntimeContext;
|
||||||
@@ -1434,8 +1434,8 @@ pub fn set_network_config(
|
|||||||
config.disable_quic_support = true;
|
config.disable_quic_support = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if parse_flag(cli_args, "enable-mplex") {
|
if let Some(enable_mplex) = parse_optional(cli_args, "enable-mplex")? {
|
||||||
config.enable_mplex = true;
|
config.enable_mplex = enable_mplex;
|
||||||
}
|
}
|
||||||
|
|
||||||
if parse_flag(cli_args, "disable-upnp") {
|
if parse_flag(cli_args, "disable-upnp") {
|
||||||
|
|||||||
@@ -84,6 +84,10 @@ Options:
|
|||||||
--discovery-port6 <PORT>
|
--discovery-port6 <PORT>
|
||||||
The UDP port that discovery will listen on over IPv6 if listening over
|
The UDP port that discovery will listen on over IPv6 if listening over
|
||||||
both IPv4 and IPv6. Defaults to `port6`
|
both IPv4 and IPv6. Defaults to `port6`
|
||||||
|
--enable-mplex [<BOOLEAN>]
|
||||||
|
Enables the mplex multiplexer alongside yamux. Yamux is preferred when
|
||||||
|
both are available. Enabled by default; set to "false" to disable.
|
||||||
|
[default: true]
|
||||||
--enr-address <ADDRESS>...
|
--enr-address <ADDRESS>...
|
||||||
The IP address/ DNS address to broadcast to other peers on how to
|
The IP address/ DNS address to broadcast to other peers on how to
|
||||||
reach this node. If a DNS address is provided, the enr-address is set
|
reach this node. If a DNS address is provided, the enr-address is set
|
||||||
@@ -489,9 +493,6 @@ Flags:
|
|||||||
Sets the local ENR IP address and port to match those set for
|
Sets the local ENR IP address and port to match those set for
|
||||||
lighthouse. Specifically, the IP address will be the value of
|
lighthouse. Specifically, the IP address will be the value of
|
||||||
--listen-address and the UDP port will be --discovery-port.
|
--listen-address and the UDP port will be --discovery-port.
|
||||||
--enable-mplex
|
|
||||||
Enables mplex multiplexer alongside yamux. Yamux is preferred when
|
|
||||||
both are available.
|
|
||||||
--enable-partial-columns
|
--enable-partial-columns
|
||||||
Enable partial messages for data columns. This can reduce the amount
|
Enable partial messages for data columns. This can reduce the amount
|
||||||
of data sent over the network. Enabled by default on Hoodi and
|
of data sent over the network. Enabled by default on Hoodi and
|
||||||
|
|||||||
@@ -2785,6 +2785,45 @@ fn invalid_block_roots_default_mainnet() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn enable_mplex_default() {
|
||||||
|
CommandLineTest::new()
|
||||||
|
.run_with_zero_port()
|
||||||
|
.with_config(|config| {
|
||||||
|
assert!(config.network.enable_mplex);
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn enable_mplex_true() {
|
||||||
|
CommandLineTest::new()
|
||||||
|
.flag("enable-mplex", Some("true"))
|
||||||
|
.run_with_zero_port()
|
||||||
|
.with_config(|config| {
|
||||||
|
assert!(config.network.enable_mplex);
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn enable_mplex_false() {
|
||||||
|
CommandLineTest::new()
|
||||||
|
.flag("enable-mplex", Some("false"))
|
||||||
|
.run_with_zero_port()
|
||||||
|
.with_config(|config| {
|
||||||
|
assert!(!config.network.enable_mplex);
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn enable_mplex_no_value() {
|
||||||
|
CommandLineTest::new()
|
||||||
|
.flag("enable-mplex", None)
|
||||||
|
.run_with_zero_port()
|
||||||
|
.with_config(|config| {
|
||||||
|
assert!(config.network.enable_mplex);
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn partial_columns() {
|
fn partial_columns() {
|
||||||
CommandLineTest::new()
|
CommandLineTest::new()
|
||||||
|
|||||||
Reference in New Issue
Block a user