Sync optimization (#1385)
* Minor sync fixes * Fixed session count sub * handle NewBlock when downloading * Accept new blocks right away * block collection update fixed
This commit is contained in:
committed by
Gav Wood
parent
e2de1987c7
commit
11314a660d
@@ -191,7 +191,7 @@ pub struct NetworkContext<'s, Message> where Message: Send + Sync + Clone + 'sta
|
||||
sessions: Arc<RwLock<Slab<SharedSession>>>,
|
||||
session: Option<SharedSession>,
|
||||
session_id: Option<StreamToken>,
|
||||
reserved_peers: &'s HashSet<NodeId>,
|
||||
_reserved_peers: &'s HashSet<NodeId>,
|
||||
}
|
||||
|
||||
impl<'s, Message> NetworkContext<'s, Message> where Message: Send + Sync + Clone + 'static, {
|
||||
@@ -207,7 +207,7 @@ impl<'s, Message> NetworkContext<'s, Message> where Message: Send + Sync + Clone
|
||||
session_id: id,
|
||||
session: session,
|
||||
sessions: sessions,
|
||||
reserved_peers: reserved_peers,
|
||||
_reserved_peers: reserved_peers,
|
||||
}
|
||||
}
|
||||
|
||||
@@ -837,9 +837,9 @@ impl<Message> Host<Message> where Message: Send + Sync + Clone {
|
||||
let mut s = session.lock().unwrap();
|
||||
if !s.expired() {
|
||||
if s.is_ready() {
|
||||
self.num_sessions.fetch_sub(1, AtomicOrdering::SeqCst);
|
||||
for (p, _) in self.handlers.read().unwrap().iter() {
|
||||
if s.have_capability(p) {
|
||||
self.num_sessions.fetch_sub(1, AtomicOrdering::SeqCst);
|
||||
to_disconnect.push(p);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user