From 991e4d0189fca5e769893a26899d2c7add4be7f7 Mon Sep 17 00:00:00 2001
From: joshemb <josh@elixxir.io>
Date: Wed, 14 Sep 2022 12:44:01 -0700
Subject: [PATCH] Make starting of FT's sender worker pool synchronous

---
 fileTransfer/manager.go | 7 +++++--
 fileTransfer/send.go    | 2 ++
 2 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/fileTransfer/manager.go b/fileTransfer/manager.go
index 751d5e412..ffa38dd6d 100644
--- a/fileTransfer/manager.go
+++ b/fileTransfer/manager.go
@@ -215,14 +215,17 @@ func NewManager(params Params, user FtE2e) (FileTransfer, error) {
 // StartProcesses starts the sending threads. Adheres to the xxdk.Service type.
 func (m *manager) StartProcesses() (stoppable.Stoppable, error) {
 	// Construct stoppables
-	multiStoppable := stoppable.NewMulti(fileTransferStoppable)
+	senderPoolStop := stoppable.NewMulti(workerPoolStoppable)
 	batchBuilderStop := stoppable.NewSingle(batchBuilderThreadStoppable)
 
 	// Start sending threads
-	go m.startSendingWorkerPool(multiStoppable)
+	m.startSendingWorkerPool(senderPoolStop)
 	go m.batchBuilderThread(batchBuilderStop)
 
 	// Create a multi stoppable
+	multiStoppable := stoppable.NewMulti(fileTransferStoppable)
+	jww.DEBUG.Printf("Adding sender pool w/ name %s", senderPoolStop.Name())
+	multiStoppable.Add(senderPoolStop)
 	multiStoppable.Add(batchBuilderStop)
 
 	return multiStoppable, nil
diff --git a/fileTransfer/send.go b/fileTransfer/send.go
index eea7c9f18..00e41955e 100644
--- a/fileTransfer/send.go
+++ b/fileTransfer/send.go
@@ -65,6 +65,8 @@ func (m *manager) startSendingWorkerPool(multiStop *stoppable.Multi) {
 		go m.sendingThread(stop)
 		multiStop.Add(stop)
 	}
+
+	jww.DEBUG.Printf("startSendingWorkerPool multi after adding all: %v", multiStop)
 }
 
 // sendingThread sends part packets that become available oin the send queue.
-- 
GitLab