Offer only 1 way to create a fullnode with an empty window

This commit is contained in:
Greg Fitzgerald
2018-08-09 12:35:52 -06:00
parent 46d50f5bde
commit 3e9c463ff1
3 changed files with 17 additions and 22 deletions

View File

@ -289,7 +289,7 @@ mod tests {
leader_keypair, leader_keypair,
bank, bank,
0, 0,
None, &[],
Some(Duration::from_millis(30)), Some(Duration::from_millis(30)),
leader, leader,
exit.clone(), exit.clone(),

View File

@ -88,7 +88,7 @@ impl FullNode {
keypair, keypair,
bank, bank,
entry_height, entry_height,
Some(ledger_tail), &ledger_tail,
node, node,
&network_entry_point, &network_entry_point,
exit.clone(), exit.clone(),
@ -107,7 +107,7 @@ impl FullNode {
keypair, keypair,
bank, bank,
entry_height, entry_height,
Some(ledger_tail), &ledger_tail,
//Some(Duration::from_millis(1000)), //Some(Duration::from_millis(1000)),
None, None,
node, node,
@ -158,13 +158,11 @@ impl FullNode {
} }
fn new_window( fn new_window(
ledger_tail: Option<Vec<Entry>>, ledger_tail: &[Entry],
entry_height: u64, entry_height: u64,
node_info: &NodeInfo, node_info: &NodeInfo,
blob_recycler: &BlobRecycler, blob_recycler: &BlobRecycler,
) -> streamer::SharedWindow { ) -> streamer::SharedWindow {
match ledger_tail {
Some(ledger_tail) => {
// convert to blobs // convert to blobs
let mut blobs = VecDeque::new(); let mut blobs = VecDeque::new();
ledger_tail.to_blobs(&blob_recycler, &mut blobs); ledger_tail.to_blobs(&blob_recycler, &mut blobs);
@ -173,9 +171,6 @@ impl FullNode {
let blobs: Vec<_> = blobs.into_iter().collect(); let blobs: Vec<_> = blobs.into_iter().collect();
streamer::initialized_window(&node_info, blobs, entry_height) streamer::initialized_window(&node_info, blobs, entry_height)
} }
None => streamer::default_window(),
}
}
/// Create a server instance acting as a leader. /// Create a server instance acting as a leader.
/// ///
@ -205,7 +200,7 @@ impl FullNode {
keypair: Keypair, keypair: Keypair,
bank: Bank, bank: Bank,
entry_height: u64, entry_height: u64,
ledger_tail: Option<Vec<Entry>>, ledger_tail: &[Entry],
tick_duration: Option<Duration>, tick_duration: Option<Duration>,
node: TestNode, node: TestNode,
exit: Arc<AtomicBool>, exit: Arc<AtomicBool>,
@ -295,7 +290,7 @@ impl FullNode {
keypair: Keypair, keypair: Keypair,
bank: Bank, bank: Bank,
entry_height: u64, entry_height: u64,
ledger_tail: Option<Vec<Entry>>, ledger_tail: &[Entry],
node: TestNode, node: TestNode,
entry_point: &NodeInfo, entry_point: &NodeInfo,
exit: Arc<AtomicBool>, exit: Arc<AtomicBool>,
@ -388,7 +383,7 @@ mod tests {
let bank = Bank::new(&alice); let bank = Bank::new(&alice);
let exit = Arc::new(AtomicBool::new(false)); let exit = Arc::new(AtomicBool::new(false));
let entry = tn.data.clone(); let entry = tn.data.clone();
let v = FullNode::new_validator(keypair, bank, 0, None, tn, &entry, exit, None, false); let v = FullNode::new_validator(keypair, bank, 0, &[], tn, &entry, exit, None, false);
v.exit(); v.exit();
v.join().unwrap(); v.join().unwrap();
} }
@ -402,7 +397,7 @@ mod tests {
let bank = Bank::new(&alice); let bank = Bank::new(&alice);
let exit = Arc::new(AtomicBool::new(false)); let exit = Arc::new(AtomicBool::new(false));
let entry = tn.data.clone(); let entry = tn.data.clone();
FullNode::new_validator(keypair, bank, 0, None, tn, &entry, exit, None, false) FullNode::new_validator(keypair, bank, 0, &[], tn, &entry, exit, None, false)
}) })
.collect(); .collect();
//each validator can exit in parallel to speed many sequential calls to `join` //each validator can exit in parallel to speed many sequential calls to `join`

View File

@ -360,7 +360,7 @@ mod tests {
leader_keypair, leader_keypair,
bank, bank,
0, 0,
None, &[],
Some(Duration::from_millis(30)), Some(Duration::from_millis(30)),
leader, leader,
exit.clone(), exit.clone(),
@ -408,7 +408,7 @@ mod tests {
leader_keypair, leader_keypair,
bank, bank,
0, 0,
None, &[],
Some(Duration::from_millis(30)), Some(Duration::from_millis(30)),
leader, leader,
exit.clone(), exit.clone(),
@ -468,7 +468,7 @@ mod tests {
leader_keypair, leader_keypair,
bank, bank,
0, 0,
None, &[],
Some(Duration::from_millis(30)), Some(Duration::from_millis(30)),
leader, leader,
exit.clone(), exit.clone(),