Remove exit variable from ReplicateStage
This commit is contained in:
committed by
Greg Fitzgerald
parent
81477246be
commit
46602ba9c3
@ -2,9 +2,9 @@
|
|||||||
|
|
||||||
use bank::Bank;
|
use bank::Bank;
|
||||||
use ledger;
|
use ledger;
|
||||||
use result::Result;
|
use result::{Error, Result};
|
||||||
use service::Service;
|
use service::Service;
|
||||||
use std::sync::atomic::{AtomicBool, Ordering};
|
use std::sync::mpsc::RecvTimeoutError;
|
||||||
use std::sync::Arc;
|
use std::sync::Arc;
|
||||||
use std::thread::{self, Builder, JoinHandle};
|
use std::thread::{self, Builder, JoinHandle};
|
||||||
use std::time::Duration;
|
use std::time::Duration;
|
||||||
@ -29,13 +29,16 @@ impl ReplicateStage {
|
|||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn new(bank: Arc<Bank>, exit: Arc<AtomicBool>, window_receiver: BlobReceiver) -> Self {
|
pub fn new(bank: Arc<Bank>, window_receiver: BlobReceiver) -> Self {
|
||||||
let thread_hdl = Builder::new()
|
let thread_hdl = Builder::new()
|
||||||
.name("solana-replicate-stage".to_string())
|
.name("solana-replicate-stage".to_string())
|
||||||
.spawn(move || loop {
|
.spawn(move || loop {
|
||||||
let e = Self::replicate_requests(&bank, &window_receiver);
|
if let Err(e) = Self::replicate_requests(&bank, &window_receiver) {
|
||||||
if e.is_err() && exit.load(Ordering::Relaxed) {
|
match e {
|
||||||
break;
|
Error::RecvTimeoutError(RecvTimeoutError::Disconnected) => break,
|
||||||
|
Error::RecvTimeoutError(RecvTimeoutError::Timeout) => (),
|
||||||
|
_ => error!("{:?}", e),
|
||||||
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
.unwrap();
|
.unwrap();
|
||||||
|
@ -94,7 +94,7 @@ impl Tvu {
|
|||||||
blob_receiver,
|
blob_receiver,
|
||||||
);
|
);
|
||||||
|
|
||||||
let replicate_stage = ReplicateStage::new(bank, exit, blob_receiver);
|
let replicate_stage = ReplicateStage::new(bank, blob_receiver);
|
||||||
|
|
||||||
Tvu {
|
Tvu {
|
||||||
replicate_stage,
|
replicate_stage,
|
||||||
|
Reference in New Issue
Block a user