From 8d8d07ac5cec5ee93948c3ef56effd6f623e57dc Mon Sep 17 00:00:00 2001 From: jiuker <2818723467@qq.com> Date: Wed, 7 Dec 2022 00:08:22 +0800 Subject: [PATCH] use readlock instead of writelock to get heal information (#16175) --- cmd/admin-heal-ops.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/cmd/admin-heal-ops.go b/cmd/admin-heal-ops.go index 32888a852..c1dc7108c 100644 --- a/cmd/admin-heal-ops.go +++ b/cmd/admin-heal-ops.go @@ -222,8 +222,8 @@ func (ahs *allHealState) periodicHealSeqsClean(ctx context.Context) { // getHealSequenceByToken - Retrieve a heal sequence by token. The second // argument returns if a heal sequence actually exists. func (ahs *allHealState) getHealSequenceByToken(token string) (h *healSequence, exists bool) { - ahs.Lock() - defer ahs.Unlock() + ahs.RLock() + defer ahs.RUnlock() for _, healSeq := range ahs.healSeqMap { if healSeq.clientToken == token { return healSeq, true @@ -235,8 +235,8 @@ func (ahs *allHealState) getHealSequenceByToken(token string) (h *healSequence, // getHealSequence - Retrieve a heal sequence by path. The second // argument returns if a heal sequence actually exists. func (ahs *allHealState) getHealSequence(path string) (h *healSequence, exists bool) { - ahs.Lock() - defer ahs.Unlock() + ahs.RLock() + defer ahs.RUnlock() h, exists = ahs.healSeqMap[path] return h, exists }