add --mandatory-headers-only cli option to complex relay (#1129)

This commit is contained in:
Svyatoslav Nikolsky
2021-09-13 09:26:36 +03:00
committed by Bastian Köcher
parent 7e98cc8f37
commit 77969c567f
2 changed files with 9 additions and 1 deletions
@@ -57,6 +57,9 @@ pub struct HeadersAndMessagesSharedParams {
lane: Vec<HexLaneId>,
#[structopt(long, possible_values = RelayerMode::VARIANTS, case_insensitive = true, default_value = "rational")]
relayer_mode: RelayerMode,
/// If passed, only mandatory headers (headers that are changing the GRANDPA authorities set) are relayed.
#[structopt(long)]
only_mandatory_headers: bool,
#[structopt(flatten)]
prometheus_params: PrometheusParams,
}
@@ -278,6 +281,7 @@ impl RelayHeadersAndMessages {
right_transactions_mortality,
LeftToRightFinality::new(right_client.clone(), right_sign.clone()),
MAX_MISSING_LEFT_HEADERS_AT_RIGHT,
params.shared.only_mandatory_headers,
);
let right_to_left_on_demand_headers = OnDemandHeadersRelay::new(
right_client.clone(),
@@ -285,6 +289,7 @@ impl RelayHeadersAndMessages {
left_transactions_mortality,
RightToLeftFinality::new(left_client.clone(), left_sign.clone()),
MAX_MISSING_RIGHT_HEADERS_AT_LEFT,
params.shared.only_mandatory_headers,
);
// Need 2x capacity since we consider both directions for each lane