From ae9f941bfcb7c15fcab05c7481f1a3858cc81ccb Mon Sep 17 00:00:00 2001 From: Alejandro Mery Date: Sat, 2 Mar 2024 22:17:15 +0000 Subject: [PATCH] cluster: decouple getRegion() from finishRegion() Signed-off-by: Alejandro Mery --- pkg/cluster/regions.go | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/pkg/cluster/regions.go b/pkg/cluster/regions.go index 7745435..392315a 100644 --- a/pkg/cluster/regions.go +++ b/pkg/cluster/regions.go @@ -147,7 +147,7 @@ func (m *Cluster) finishRegion(r *Region) { r.m = m sub := []string{} for _, name := range r.Regions { - r2, ok := m.getRegion(name) + r2, ok := m.getFinishRegion(name) if !ok { m.warn(nil).WithField("region", name).Print("unknown region") continue @@ -162,9 +162,7 @@ func (m *Cluster) finishRegion(r *Region) { func (m *Cluster) getRegion(name string) (*Region, bool) { for i := range m.Regions { r := &m.Regions[i] - if name == r.Name { - m.finishRegion(r) return r, true } } @@ -172,6 +170,15 @@ func (m *Cluster) getRegion(name string) (*Region, bool) { return nil, false } +func (m *Cluster) getFinishRegion(name string) (*Region, bool) { + if r, ok := m.getRegion(name); ok { + m.finishRegion(r) + return r, true + } + + return nil, false +} + // SyncRegions writes to the file system the regions this [Zone] // belongs to. func (z *Zone) SyncRegions() error {