From c4b8b8f0889ca857ebd0a2d8515a3d262082e99d Mon Sep 17 00:00:00 2001 From: Jacky Date: Mon, 5 May 2025 00:23:28 +0000 Subject: [PATCH] fix(node-record): concurrent map read and write --- internal/analytic/node_record.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/internal/analytic/node_record.go b/internal/analytic/node_record.go index 389c09dc..cc8e03b1 100644 --- a/internal/analytic/node_record.go +++ b/internal/analytic/node_record.go @@ -129,11 +129,11 @@ func RetrieveNodesStatus(ctx context.Context) { default: if err := nodeAnalyticRecord(e, ctx); err != nil { logger.Error(err) + mutex.Lock() if NodeMap[env.ID] != nil { - mutex.Lock() NodeMap[env.ID].Status = false - mutex.Unlock() } + mutex.Unlock() select { case <-retryTicker.C: case <-ctx.Done():