From 8bbe3a6f5129d76345d092836d86e1527f5fb76d Mon Sep 17 00:00:00 2001 From: matst80 Date: Thu, 14 Nov 2024 08:36:04 +0100 Subject: [PATCH] return hosts not ok --- synced-pool.go | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/synced-pool.go b/synced-pool.go index d06f281..e7611bd 100644 --- a/synced-pool.go +++ b/synced-pool.go @@ -93,7 +93,15 @@ func (p *SyncedPool) NegotiateHandler(data *FrameWithPayload, resultChan chan<- go p.AddRemote(host) } - resultChan <- MakeFrameWithPayload(RemoteNegotiateResponse, 200, []byte("ok")) + p.mu.RLock() + defer p.mu.RUnlock() + hosts := make([]string, 0, len(p.remotes)) + for _, r := range p.remotes { + if r.IsHealthy() { + hosts = append(hosts, r.Host) + } + } + resultChan <- MakeFrameWithPayload(RemoteNegotiateResponse, 200, []byte(strings.Join(hosts, ";"))) return nil }