review comments

This commit is contained in:
Anatoly Yakovenko
2018-07-10 12:02:51 -07:00
committed by Greg Fitzgerald
parent 6a1b5a222a
commit d531b9645d
7 changed files with 18 additions and 21 deletions

View File

@ -187,7 +187,7 @@ fn main() {
let leader: ReplicatedData; let leader: ReplicatedData;
if let Some(l) = matches.value_of("leader") { if let Some(l) = matches.value_of("leader") {
leader = read_leader(l.to_string()).network; leader = read_leader(l.to_string()).node_info;
} else { } else {
let server_addr = SocketAddr::new(IpAddr::V4(Ipv4Addr::new(0, 0, 0, 0)), 8000); let server_addr = SocketAddr::new(IpAddr::V4(Ipv4Addr::new(0, 0, 0, 0)), 8000);
leader = ReplicatedData::new_leader(&server_addr); leader = ReplicatedData::new_leader(&server_addr);

View File

@ -62,7 +62,7 @@ fn main() {
let leader: ReplicatedData; let leader: ReplicatedData;
if let Some(l) = matches.value_of("leader") { if let Some(l) = matches.value_of("leader") {
leader = read_leader(l.to_string()).network; leader = read_leader(l.to_string()).node_info;
} else { } else {
let server_addr = SocketAddr::new(IpAddr::V4(Ipv4Addr::new(0, 0, 0, 0)), 8000); let server_addr = SocketAddr::new(IpAddr::V4(Ipv4Addr::new(0, 0, 0, 0)), 8000);
leader = ReplicatedData::new_leader(&server_addr); leader = ReplicatedData::new_leader(&server_addr);

View File

@ -59,7 +59,7 @@ fn main() -> () {
let parse: serde_json::Result<Config> = serde_json::from_reader(file); let parse: serde_json::Result<Config> = serde_json::from_reader(file);
if let Ok(data) = parse { if let Ok(data) = parse {
keypair = data.keypair(); keypair = data.keypair();
repl_data = data.network; repl_data = data.node_info;
} else { } else {
eprintln!("failed to parse {}", path); eprintln!("failed to parse {}", path);
exit(1); exit(1);

View File

@ -143,7 +143,7 @@ fn parse_args() -> Result<WalletConfig, Box<error::Error>> {
let leader: ReplicatedData; let leader: ReplicatedData;
if let Some(l) = matches.value_of("leader") { if let Some(l) = matches.value_of("leader") {
leader = read_leader(l.to_string()).network; leader = read_leader(l.to_string()).node_info;
} else { } else {
let server_addr = SocketAddr::new(IpAddr::V4(Ipv4Addr::new(0, 0, 0, 0)), 8000); let server_addr = SocketAddr::new(IpAddr::V4(Ipv4Addr::new(0, 0, 0, 0)), 8000);
leader = ReplicatedData::new_leader(&server_addr); leader = ReplicatedData::new_leader(&server_addr);

View File

@ -44,7 +44,7 @@ pub enum OutFile {
#[derive(Serialize, Deserialize, Clone, Debug, PartialEq)] #[derive(Serialize, Deserialize, Clone, Debug, PartialEq)]
/// Fullnode configuration to be stored in file /// Fullnode configuration to be stored in file
pub struct Config { pub struct Config {
pub network: ReplicatedData, pub node_info: ReplicatedData,
pkcs8: Vec<u8>, pkcs8: Vec<u8>,
} }
@ -58,11 +58,8 @@ impl Config {
let keypair = let keypair =
KeyPair::from_pkcs8(Input::from(&pkcs8)).expect("from_pkcs8 in fullnode::Config new"); KeyPair::from_pkcs8(Input::from(&pkcs8)).expect("from_pkcs8 in fullnode::Config new");
let pubkey = keypair.pubkey(); let pubkey = keypair.pubkey();
let network = ReplicatedData::new_leader_with_pubkey(pubkey, bind_addr); let node_info = ReplicatedData::new_leader_with_pubkey(pubkey, bind_addr);
Config { Config { node_info, pkcs8 }
network: network,
pkcs8: pkcs8,
}
} }
pub fn keypair(&self) -> KeyPair { pub fn keypair(&self) -> KeyPair {
KeyPair::from_pkcs8(Input::from(&self.pkcs8)) KeyPair::from_pkcs8(Input::from(&self.pkcs8))
@ -108,7 +105,7 @@ impl FullNode {
let testnet_addr = network_entry_for_validator.expect("validator requires entry"); let testnet_addr = network_entry_for_validator.expect("validator requires entry");
let network_entry_point = ReplicatedData::new_entry_point(testnet_addr); let network_entry_point = ReplicatedData::new_entry_point(testnet_addr);
let keypair = keypair_for_validator.expect("validastor requires keypair"); let keypair = keypair_for_validator.expect("validator requires keypair");
let server = FullNode::new_validator( let server = FullNode::new_validator(
keypair, keypair,
bank, bank,
@ -319,7 +316,7 @@ impl FullNode {
).expect("Ncp::new"); ).expect("Ncp::new");
let tvu = Tvu::new( let tvu = Tvu::new(
Arc::new(keypair), keypair,
bank.clone(), bank.clone(),
entry_height, entry_height,
crdt.clone(), crdt.clone(),

View File

@ -60,9 +60,8 @@ impl ReplicateStage {
wcrdt.insert_votes(votes); wcrdt.insert_votes(votes);
//TODO: doesn't seem like there is a synchronous call to get height and id //TODO: doesn't seem like there is a synchronous call to get height and id
info!("replicate_stage {} {:?}", height, &last_id[..8]); info!("replicate_stage {} {:?}", height, &last_id[..8]);
let (vote, addr) = wcrdt.new_vote(height, last_id)?; wcrdt.new_vote(height, last_id)
(vote, addr) }?;
};
{ {
let mut blob = shared_blob.write().unwrap(); let mut blob = shared_blob.write().unwrap();
let tx = Transaction::new_vote(&keypair, vote, last_id, 0); let tx = Transaction::new_vote(&keypair, vote, last_id, 0);
@ -81,7 +80,7 @@ impl ReplicateStage {
Ok(()) Ok(())
} }
pub fn new( pub fn new(
keypair: Arc<KeyPair>, keypair: KeyPair,
bank: Arc<Bank>, bank: Arc<Bank>,
crdt: Arc<RwLock<Crdt>>, crdt: Arc<RwLock<Crdt>>,
blob_recycler: BlobRecycler, blob_recycler: BlobRecycler,
@ -90,6 +89,7 @@ impl ReplicateStage {
let (vote_blob_sender, vote_blob_receiver) = channel(); let (vote_blob_sender, vote_blob_receiver) = channel();
let send = UdpSocket::bind("0.0.0.0:0").expect("bind"); let send = UdpSocket::bind("0.0.0.0:0").expect("bind");
let t_responder = responder(send, blob_recycler.clone(), vote_blob_receiver); let t_responder = responder(send, blob_recycler.clone(), vote_blob_receiver);
let skeypair = Arc::new(keypair);
let t_replicate = Builder::new() let t_replicate = Builder::new()
.name("solana-replicate-stage".to_string()) .name("solana-replicate-stage".to_string())
@ -97,7 +97,7 @@ impl ReplicateStage {
let mut timestamp: u64 = 0; let mut timestamp: u64 = 0;
loop { loop {
if let Err(e) = Self::replicate_requests( if let Err(e) = Self::replicate_requests(
&keypair, &skeypair,
&bank, &bank,
&crdt, &crdt,
&blob_recycler, &blob_recycler,

View File

@ -2,14 +2,14 @@
//! 3-stage transaction validation pipeline in software. //! 3-stage transaction validation pipeline in software.
//! //!
//! ```text //! ```text
//! +<------------------------------------------<+ //! .--------------------------------------------.
//! | | //! | |
//! | .--------------------------------+---------. //! | .--------------------------------+---------.
//! | | TVU | | //! | | TVU | |
//! | | | | //! | | | |
//! | | | | .------------. //! | | | | .------------.
//! | | .------------+----------->| Validators | //! | | .------------+----------->| Validators |
//! | | .-------. | | | `------------` //! v | .-------. | | | `------------`
//! .----+---. | | | .----+---. .----+------. | //! .----+---. | | | .----+---. .----+------. |
//! | Leader |--------->| Blob | | Window | | Replicate | | //! | Leader |--------->| Blob | | Window | | Replicate | |
//! `--------` | | Fetch |-->| Stage |-->| Stage | | //! `--------` | | Fetch |-->| Stage |-->| Stage | |
@ -69,7 +69,7 @@ impl Tvu {
/// * `retransmit_socket` - my retransmit socket /// * `retransmit_socket` - my retransmit socket
/// * `exit` - The exit signal. /// * `exit` - The exit signal.
pub fn new( pub fn new(
keypair: Arc<KeyPair>, keypair: KeyPair,
bank: Arc<Bank>, bank: Arc<Bank>,
entry_height: u64, entry_height: u64,
crdt: Arc<RwLock<Crdt>>, crdt: Arc<RwLock<Crdt>>,
@ -220,7 +220,7 @@ pub mod tests {
let dr_1 = new_ncp(cref1.clone(), target1.sockets.gossip, exit.clone()).unwrap(); let dr_1 = new_ncp(cref1.clone(), target1.sockets.gossip, exit.clone()).unwrap();
let tvu = Tvu::new( let tvu = Tvu::new(
Arc::new(target1_kp), target1_kp,
bank.clone(), bank.clone(),
0, 0,
cref1, cref1,