mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-04-26 14:37:57 +00:00
substrate-node: NativeElseWasmExecutor is no longer used (#2521)
This PR removes `NativeElseWasmExecutor` usage from substrate node. Instead [`WasmExecutor<(sp_io::SubstrateHostFunctions, sp_statement_store::runtime_api::HostFunctions)>`](https://github.com/paritytech/polkadot-sdk/blob/49a41ab3bb3f630c20e5b24cec8d92382404631c/substrate/bin/node/executor/src/lib.rs#L26) is used. Related to #2358. --------- Co-authored-by: Davide Galassi <davxy@datawok.net>
This commit is contained in:
committed by
GitHub
parent
1d5d4a4840
commit
39d6c95c0d
@@ -24,7 +24,6 @@ use crate::{
|
||||
};
|
||||
use frame_benchmarking_cli::*;
|
||||
use kitchensink_runtime::{ExistentialDeposit, RuntimeApi};
|
||||
use node_executor::ExecutorDispatch;
|
||||
use node_primitives::Block;
|
||||
use sc_cli::{Result, SubstrateCli};
|
||||
use sc_service::PartialComponents;
|
||||
@@ -89,7 +88,7 @@ pub fn run() -> Result<()> {
|
||||
Some(Subcommand::Inspect(cmd)) => {
|
||||
let runner = cli.create_runner(cmd)?;
|
||||
|
||||
runner.sync_run(|config| cmd.run::<Block, RuntimeApi, ExecutorDispatch>(config))
|
||||
runner.sync_run(|config| cmd.run::<Block, RuntimeApi>(config))
|
||||
},
|
||||
Some(Subcommand::Benchmark(cmd)) => {
|
||||
let runner = cli.create_runner(cmd)?;
|
||||
|
||||
@@ -26,11 +26,9 @@ use frame_benchmarking_cli::SUBSTRATE_REFERENCE_HARDWARE;
|
||||
use frame_system_rpc_runtime_api::AccountNonceApi;
|
||||
use futures::prelude::*;
|
||||
use kitchensink_runtime::RuntimeApi;
|
||||
use node_executor::ExecutorDispatch;
|
||||
use node_primitives::Block;
|
||||
use sc_client_api::{Backend, BlockBackend};
|
||||
use sc_consensus_babe::{self, SlotProportion};
|
||||
use sc_executor::NativeElseWasmExecutor;
|
||||
use sc_network::{event::Event, NetworkEventStream, NetworkService};
|
||||
use sc_network_sync::{warp::WarpSyncParams, SyncingService};
|
||||
use sc_service::{config::Configuration, error::Error as ServiceError, RpcHandlers, TaskManager};
|
||||
@@ -42,9 +40,25 @@ use sp_core::crypto::Pair;
|
||||
use sp_runtime::{generic, traits::Block as BlockT, SaturatedConversion};
|
||||
use std::sync::Arc;
|
||||
|
||||
/// Host functions required for kitchensink runtime and Substrate node.
|
||||
#[cfg(not(feature = "runtime-benchmarks"))]
|
||||
pub type HostFunctions =
|
||||
(sp_io::SubstrateHostFunctions, sp_statement_store::runtime_api::HostFunctions);
|
||||
|
||||
/// Host functions required for kitchensink runtime and Substrate node.
|
||||
#[cfg(feature = "runtime-benchmarks")]
|
||||
pub type HostFunctions = (
|
||||
sp_io::SubstrateHostFunctions,
|
||||
sp_statement_store::runtime_api::HostFunctions,
|
||||
frame_benchmarking::benchmarking::HostFunctions,
|
||||
);
|
||||
|
||||
/// A specialized `WasmExecutor` intended to use accross substrate node. It provides all required
|
||||
/// HostFunctions.
|
||||
pub type RuntimeExecutor = sc_executor::WasmExecutor<HostFunctions>;
|
||||
|
||||
/// The full client type definition.
|
||||
pub type FullClient =
|
||||
sc_service::TFullClient<Block, RuntimeApi, NativeElseWasmExecutor<ExecutorDispatch>>;
|
||||
pub type FullClient = sc_service::TFullClient<Block, RuntimeApi, RuntimeExecutor>;
|
||||
type FullBackend = sc_service::TFullBackend<Block>;
|
||||
type FullSelectChain = sc_consensus::LongestChain<FullBackend, Block>;
|
||||
type FullGrandpaBlockImport =
|
||||
@@ -174,7 +188,7 @@ pub fn new_partial(
|
||||
})
|
||||
.transpose()?;
|
||||
|
||||
let executor = sc_service::new_native_or_wasm_executor(&config);
|
||||
let executor = sc_service::new_wasm_executor(&config);
|
||||
|
||||
let (client, backend, keystore_container, task_manager) =
|
||||
sc_service::new_full_parts::<Block, RuntimeApi, _>(
|
||||
|
||||
Reference in New Issue
Block a user