From 62cc76338f854ce19bca2b5332b763b1798cd7b8 Mon Sep 17 00:00:00 2001 From: Martin Ek Date: Sun, 22 Oct 2017 23:42:01 +0200 Subject: [PATCH] Start base node recoveries in parallel --- src/flow/mod.rs | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/flow/mod.rs b/src/flow/mod.rs index afc4899c4..50cc415f1 100644 --- a/src/flow/mod.rs +++ b/src/flow/mod.rs @@ -9,12 +9,11 @@ use std::net::SocketAddr; use std::sync::{Arc, Mutex}; use std::sync::mpsc; use std::net::IpAddr; - -use mio::net::TcpListener; - use std::time; use std::fmt; +use mio::net::TcpListener; + use slog; use petgraph; use petgraph::visit::Bfs; @@ -305,9 +304,13 @@ impl Blender { .map(|&(_input, ref node)| node.domain()) .collect::>(); - for index in indices { + for index in indices.clone() { let domain = self.domains.get_mut(&index).unwrap(); domain.send(box payload::Packet::StartRecovery).unwrap(); + } + + for index in indices { + let domain = self.domains.get_mut(&index).unwrap(); domain.wait_for_ack().unwrap(); } }