difftreelog
feat add cli param disable-autoseal-on-tx
in: master
3 files changed
node/cli/src/cli.rsdiffbeforeafterboth--- a/node/cli/src/cli.rs
+++ b/node/cli/src/cli.rs
@@ -84,6 +84,10 @@
#[structopt(default_value = "500", long)]
pub idle_autoseal_interval: u64,
+ /// Disable auto-sealing blocks on new transactions in the `--dev` mode.
+ #[structopt(long)]
+ pub disable_autoseal_on_tx: bool,
+
/// Disable automatic hardware benchmarks.
///
/// By default these benchmarks are automatically ran at startup and measure
node/cli/src/command.rsdiffbeforeafterboth488 config.state_pruning = Some(sc_service::PruningMode::ArchiveAll);488 config.state_pruning = Some(sc_service::PruningMode::ArchiveAll);489489490 return start_node_using_chain_runtime! {490 return start_node_using_chain_runtime! {491 start_dev_node(config, autoseal_interval).map_err(Into::into)491 start_dev_node(config, autoseal_interval, cli.disable_autoseal_on_tx).map_err(Into::into)492 };492 };493 };493 };494494node/cli/src/service.rsdiffbeforeafterboth--- a/node/cli/src/service.rs
+++ b/node/cli/src/service.rs
@@ -886,6 +886,7 @@
pub fn start_dev_node<Runtime, RuntimeApi, ExecutorDispatch>(
config: Configuration,
autoseal_interval: Duration,
+ disable_autoseal_on_tx: bool,
) -> sc_service::error::Result<TaskManager>
where
Runtime: RuntimeInstance + Send + Sync + 'static,
@@ -980,6 +981,7 @@
.pool()
.validated_pool()
.import_notification_stream()
+ .filter(move |_| futures::future::ready(!disable_autoseal_on_tx))
.map(|_| EngineCommand::SealNewBlock {
create_empty: true,
finalize: false, // todo:collator finalize true