diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 471d16f4bd..0be6f9bb21 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -45,7 +45,8 @@ understood. Avoid introducing new 3-letter terms, which can be confused with 3-l Some terms we currently use regularly in the codebase: -* hash: n. A SHA-256 Hash +* fullnode: n. A fully participating network node. +* hash: n. A SHA-256 Hash. * keypair: n. A Ed25519 key-pair, containing a public and private key. * pubkey: n. The public key of a Ed25519 key-pair. * sigverify: v. To verify a Ed25519 digital signature. diff --git a/src/bin/fullnode.rs b/src/bin/fullnode.rs index e5aef2d6f8..dd3ef09e36 100644 --- a/src/bin/fullnode.rs +++ b/src/bin/fullnode.rs @@ -9,7 +9,7 @@ use clap::{App, Arg}; use solana::client::mk_client; use solana::crdt::{NodeInfo, TestNode}; use solana::drone::DRONE_PORT; -use solana::fullnode::{Config, FullNode}; +use solana::fullnode::{Config, Fullnode}; use solana::logger; use solana::metrics::set_panic_hook; use solana::service::Service; @@ -83,11 +83,11 @@ fn main() -> () { let testnet_addr: SocketAddr = testnet_address_string.parse().unwrap(); drone_addr.set_ip(testnet_addr.ip()); - FullNode::new(node, false, ledger_path, keypair, Some(testnet_addr)) + Fullnode::new(node, false, ledger_path, keypair, Some(testnet_addr)) } else { node.data.leader_id = node.data.id; - FullNode::new(node, true, ledger_path, keypair, None) + Fullnode::new(node, true, ledger_path, keypair, None) }; let mut client = mk_client(&repl_clone); diff --git a/src/drone.rs b/src/drone.rs index d65f558a33..a07c312972 100644 --- a/src/drone.rs +++ b/src/drone.rs @@ -159,7 +159,7 @@ mod tests { use bank::Bank; use crdt::{get_ip_addr, TestNode}; use drone::{Drone, DroneRequest, REQUEST_CAP, TIME_SLICE}; - use fullnode::FullNode; + use fullnode::Fullnode; use logger; use mint::Mint; use service::Service; @@ -285,7 +285,7 @@ mod tests { let leader_data = leader.data.clone(); let ledger_path = tmp_ledger_path("send_airdrop"); - let server = FullNode::new_leader( + let server = Fullnode::new_leader( leader_keypair, bank, 0, diff --git a/src/fullnode.rs b/src/fullnode.rs index badb533c96..45a9bc0124 100644 --- a/src/fullnode.rs +++ b/src/fullnode.rs @@ -20,8 +20,7 @@ use tvu::Tvu; use untrusted::Input; use window; -//use std::time::Duration; -pub struct FullNode { +pub struct Fullnode { exit: Arc, thread_hdls: Vec>, } @@ -48,7 +47,7 @@ impl Config { } } -impl FullNode { +impl Fullnode { fn new_internal( mut node: TestNode, leader: bool, @@ -56,7 +55,7 @@ impl FullNode { keypair: Keypair, network_entry_for_validator: Option, sigverify_disabled: bool, - ) -> FullNode { + ) -> Self { info!("creating bank..."); let bank = Bank::new_default(leader); @@ -84,7 +83,7 @@ impl FullNode { let testnet_addr = network_entry_for_validator.expect("validator requires entry"); let network_entry_point = NodeInfo::new_entry_point(testnet_addr); - let server = FullNode::new_validator( + let server = Self::new_validator( keypair, bank, entry_height, @@ -103,7 +102,7 @@ impl FullNode { } else { node.data.leader_id = node.data.id; - let server = FullNode::new_leader( + let server = Self::new_leader( keypair, bank, entry_height, @@ -129,8 +128,8 @@ impl FullNode { ledger: &str, keypair: Keypair, network_entry_for_validator: Option, - ) -> FullNode { - FullNode::new_internal( + ) -> Self { + Self::new_internal( node, leader, ledger, @@ -146,8 +145,8 @@ impl FullNode { ledger_path: &str, keypair: Keypair, network_entry_for_validator: Option, - ) -> FullNode { - FullNode::new_internal( + ) -> Self { + Self::new_internal( node, leader, ledger_path, @@ -240,7 +239,7 @@ impl FullNode { ); thread_hdls.extend(broadcast_stage.thread_hdls()); - FullNode { exit, thread_hdls } + Fullnode { exit, thread_hdls } } /// Create a server instance acting as a validator. @@ -325,7 +324,7 @@ impl FullNode { ); thread_hdls.extend(tvu.thread_hdls()); thread_hdls.extend(ncp.thread_hdls()); - FullNode { exit, thread_hdls } + Fullnode { exit, thread_hdls } } //used for notifying many nodes in parallel to exit @@ -338,7 +337,7 @@ impl FullNode { } } -impl Service for FullNode { +impl Service for Fullnode { fn thread_hdls(self) -> Vec> { self.thread_hdls } @@ -355,7 +354,7 @@ impl Service for FullNode { mod tests { use bank::Bank; use crdt::TestNode; - use fullnode::FullNode; + use fullnode::Fullnode; use mint::Mint; use service::Service; use signature::{Keypair, KeypairUtil}; @@ -370,13 +369,13 @@ mod tests { let bank = Bank::new(&alice); let exit = Arc::new(AtomicBool::new(false)); let entry = tn.data.clone(); - let v = FullNode::new_validator(keypair, bank, 0, &[], tn, &entry, exit, None, false); + let v = Fullnode::new_validator(keypair, bank, 0, &[], tn, &entry, exit, None, false); v.exit(); v.join().unwrap(); } #[test] fn validator_parallel_exit() { - let vals: Vec = (0..2) + let vals: Vec = (0..2) .map(|_| { let keypair = Keypair::new(); let tn = TestNode::new_localhost_with_pubkey(keypair.pubkey()); @@ -384,7 +383,7 @@ mod tests { let bank = Bank::new(&alice); let exit = Arc::new(AtomicBool::new(false)); let entry = tn.data.clone(); - FullNode::new_validator(keypair, bank, 0, &[], tn, &entry, exit, None, false) + Fullnode::new_validator(keypair, bank, 0, &[], tn, &entry, exit, None, false) }) .collect(); //each validator can exit in parallel to speed many sequential calls to `join` diff --git a/src/thin_client.rs b/src/thin_client.rs index 9c62c505a2..34efde13c1 100755 --- a/src/thin_client.rs +++ b/src/thin_client.rs @@ -319,7 +319,7 @@ mod tests { use bank::Bank; use budget::Budget; use crdt::TestNode; - use fullnode::FullNode; + use fullnode::Fullnode; use ledger::LedgerWriter; use logger; use mint::Mint; @@ -356,7 +356,7 @@ mod tests { let exit = Arc::new(AtomicBool::new(false)); let ledger_path = tmp_ledger("thin_client", &alice); - let server = FullNode::new_leader( + let server = Fullnode::new_leader( leader_keypair, bank, 0, @@ -404,7 +404,7 @@ mod tests { let leader_data = leader.data.clone(); let ledger_path = tmp_ledger("bad_sig", &alice); - let server = FullNode::new_leader( + let server = Fullnode::new_leader( leader_keypair, bank, 0, @@ -464,7 +464,7 @@ mod tests { let leader_data = leader.data.clone(); let ledger_path = tmp_ledger("client_check_signature", &alice); - let server = FullNode::new_leader( + let server = Fullnode::new_leader( leader_keypair, bank, 0, diff --git a/tests/multinode.rs b/tests/multinode.rs index fdbaa63e91..1ed62208c4 100755 --- a/tests/multinode.rs +++ b/tests/multinode.rs @@ -7,7 +7,7 @@ extern crate solana; use solana::crdt::{Crdt, NodeInfo, TestNode}; use solana::entry::Entry; -use solana::fullnode::FullNode; +use solana::fullnode::Fullnode; use solana::hash::Hash; use solana::ledger::LedgerWriter; use solana::logger; @@ -146,7 +146,7 @@ fn test_multi_node_ledger_window() -> result::Result<()> { writer.write_entries(entries).unwrap(); } - let leader = FullNode::new(leader, true, &leader_ledger_path, leader_keypair, None); + let leader = Fullnode::new(leader, true, &leader_ledger_path, leader_keypair, None); // Send leader some tokens to vote let leader_balance = @@ -158,7 +158,7 @@ fn test_multi_node_ledger_window() -> result::Result<()> { let keypair = Keypair::new(); let validator = TestNode::new_localhost_with_pubkey(keypair.pubkey()); let validator_data = validator.data.clone(); - let validator = FullNode::new( + let validator = Fullnode::new( validator, false, &zero_ledger_path, @@ -219,7 +219,7 @@ fn test_multi_node_validator_catchup_from_zero() -> result::Result<()> { ); ledger_paths.push(zero_ledger_path.clone()); - let server = FullNode::new(leader, true, &leader_ledger_path, leader_keypair, None); + let server = Fullnode::new(leader, true, &leader_ledger_path, leader_keypair, None); // Send leader some tokens to vote let leader_balance = @@ -236,7 +236,7 @@ fn test_multi_node_validator_catchup_from_zero() -> result::Result<()> { ); ledger_paths.push(ledger_path.clone()); - let mut val = FullNode::new( + let mut val = Fullnode::new( validator, false, &ledger_path, @@ -271,7 +271,7 @@ fn test_multi_node_validator_catchup_from_zero() -> result::Result<()> { // balances let keypair = Keypair::new(); let validator = TestNode::new_localhost_with_pubkey(keypair.pubkey()); - let val = FullNode::new( + let val = Fullnode::new( validator, false, &zero_ledger_path, @@ -336,7 +336,7 @@ fn test_multi_node_basic() { let (alice, leader_ledger_path) = genesis("multi_node_basic", 10_000); ledger_paths.push(leader_ledger_path.clone()); - let server = FullNode::new(leader, true, &leader_ledger_path, leader_keypair, None); + let server = Fullnode::new(leader, true, &leader_ledger_path, leader_keypair, None); // Send leader some tokens to vote let leader_balance = @@ -349,7 +349,7 @@ fn test_multi_node_basic() { let validator = TestNode::new_localhost_with_pubkey(keypair.pubkey()); let ledger_path = tmp_copy_ledger(&leader_ledger_path, "multi_node_basic"); ledger_paths.push(ledger_path.clone()); - let val = FullNode::new( + let val = Fullnode::new( validator, false, &ledger_path, @@ -397,7 +397,7 @@ fn test_boot_validator_from_file() -> result::Result<()> { ledger_paths.push(leader_ledger_path.clone()); let leader_data = leader.data.clone(); - let leader_fullnode = FullNode::new(leader, true, &leader_ledger_path, leader_keypair, None); + let leader_fullnode = Fullnode::new(leader, true, &leader_ledger_path, leader_keypair, None); let leader_balance = send_tx_and_retry_get_balance(&leader_data, &alice, &bob_pubkey, Some(500)).unwrap(); assert_eq!(leader_balance, 500); @@ -410,7 +410,7 @@ fn test_boot_validator_from_file() -> result::Result<()> { let validator_data = validator.data.clone(); let ledger_path = tmp_copy_ledger(&leader_ledger_path, "boot_validator_from_file"); ledger_paths.push(ledger_path.clone()); - let val_fullnode = FullNode::new( + let val_fullnode = Fullnode::new( validator, false, &ledger_path, @@ -430,11 +430,11 @@ fn test_boot_validator_from_file() -> result::Result<()> { Ok(()) } -fn create_leader(ledger_path: &str) -> (NodeInfo, FullNode) { +fn create_leader(ledger_path: &str) -> (NodeInfo, Fullnode) { let leader_keypair = Keypair::new(); let leader = TestNode::new_localhost_with_pubkey(leader_keypair.pubkey()); let leader_data = leader.data.clone(); - let leader_fullnode = FullNode::new(leader, true, &ledger_path, leader_keypair, None); + let leader_fullnode = Fullnode::new(leader, true, &ledger_path, leader_keypair, None); (leader_data, leader_fullnode) } @@ -479,7 +479,7 @@ fn test_leader_restart_validator_start_from_old_ledger() -> result::Result<()> { let validator = TestNode::new_localhost_with_pubkey(keypair.pubkey()); let validator_data = validator.data.clone(); - let val_fullnode = FullNode::new( + let val_fullnode = Fullnode::new( validator, false, &stale_ledger_path, @@ -548,7 +548,7 @@ fn test_multi_node_dynamic_network() { let leader_data = leader.data.clone(); let server = - FullNode::new_without_sigverify(leader, true, &leader_ledger_path, leader_keypair, None); + Fullnode::new_without_sigverify(leader, true, &leader_ledger_path, leader_keypair, None); // Send leader some tokens to vote let leader_balance = send_tx_and_retry_get_balance( @@ -616,7 +616,7 @@ fn test_multi_node_dynamic_network() { let validator = TestNode::new_localhost_with_pubkey(keypair.pubkey()); let rd = validator.data.clone(); info!("starting {} {:x}", keypair.pubkey(), rd.debug_id()); - let val = FullNode::new_without_sigverify( + let val = Fullnode::new_without_sigverify( validator, false, &ledger_path,