From: Tom Clegg Date: Fri, 24 Jun 2022 05:33:11 +0000 (-0400) Subject: Allow multiple clusters to use loopback driver on same host. X-Git-Tag: 2.5.0~132 X-Git-Url: https://git.arvados.org/arvados.git/commitdiff_plain/8288bba27e9beff7273aeb65c5200248e52bab02 Allow multiple clusters to use loopback driver on same host. If they don't ignore foreign UUIDs, they kill one another's processes because A's container is never in B's queue. refs #15370 Arvados-DCO-1.1-Signed-off-by: Tom Clegg --- diff --git a/lib/dispatchcloud/worker/worker.go b/lib/dispatchcloud/worker/worker.go index 1c8d62c20e..b01a820cd6 100644 --- a/lib/dispatchcloud/worker/worker.go +++ b/lib/dispatchcloud/worker/worker.go @@ -418,6 +418,12 @@ func (wkr *worker) probeRunning() (running []string, reportsBroken, ok bool) { // empty string following final newline } else if s == "broken" { reportsBroken = true + } else if !strings.HasPrefix(s, wkr.wp.cluster.ClusterID) { + // Ignore crunch-run processes that belong to + // a different cluster (e.g., a single host + // running multiple clusters with the loopback + // driver) + continue } else if toks := strings.Split(s, " "); len(toks) == 1 { running = append(running, s) } else if toks[1] == "stale" {