Remove Proposer from Service (#1171)

* Remove Proposer from Service

Refs #1021, #1158
This commit is contained in:
Benjamin Kampmann
2018-11-27 17:22:28 +01:00
committed by GitHub
parent 9ee6bdd203
commit c27c613445
5 changed files with 14 additions and 19 deletions
+1
View File
@@ -24,6 +24,7 @@ substrate-service = { path = "../../core/service" }
substrate-transaction-pool = { path = "../../core/transaction-pool" }
substrate-network = { path = "../../core/network" }
substrate-consensus-aura = { path = "../../core/consensus/aura" }
substrate-consensus-common = { path = "../../core/consensus/common" }
substrate-finality-grandpa = { path = "../../core/finality-grandpa" }
sr-primitives = { path = "../../core/sr-primitives" }
node-executor = { path = "../executor" }
+2
View File
@@ -33,6 +33,7 @@ extern crate substrate_transaction_pool as transaction_pool;
#[macro_use]
extern crate substrate_network as network;
extern crate substrate_consensus_aura as consensus;
extern crate substrate_consensus_common as consensus_common;
extern crate substrate_client as client;
extern crate substrate_finality_grandpa as grandpa;
extern crate node_primitives;
@@ -44,6 +45,7 @@ extern crate substrate_keystore;
#[macro_use]
extern crate log;
extern crate structopt;
extern crate parking_lot;
pub use cli::error;
pub mod chain_spec;
+9 -1
View File
@@ -28,9 +28,11 @@ use substrate_service::{
};
use node_executor;
use consensus::{import_queue, start_aura, Config as AuraConfig, AuraImportQueue, NothingExtra};
use consensus_common::offline_tracker::OfflineTracker;
use primitives::ed25519::Pair;
use client;
use std::time::Duration;
use parking_lot::RwLock;
use grandpa;
const AURA_SLOT_DURATION: u64 = 6;
@@ -99,6 +101,12 @@ construct_service_factory! {
}
if !service.config.custom.grandpa_authority_only {
info!("Using authority key {}", key.public());
let proposer = Arc::new(substrate_service::ProposerFactory {
client: service.client(),
transaction_pool: service.transaction_pool(),
offline: Arc::new(RwLock::new(OfflineTracker::new())),
force_delay: 0 // FIXME: allow this to be configured https://github.com/paritytech/substrate/issues/1170
});
executor.spawn(start_aura(
AuraConfig {
local_key: Some(key),
@@ -106,7 +114,7 @@ construct_service_factory! {
},
service.client(),
block_import.clone(),
service.proposer(),
proposer,
service.network(),
));
}