From 2683d885591e175fa0fe6718d56ccfc2d30eb67e Mon Sep 17 00:00:00 2001 From: Yun Long Date: Wed, 18 Aug 2021 15:32:12 +0800 Subject: [PATCH] [mesh]: Use mutex pointer to copy --- pkg/object/trafficcontroller/trafficcontroller.go | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkg/object/trafficcontroller/trafficcontroller.go b/pkg/object/trafficcontroller/trafficcontroller.go index 84af72d42d..30bb1e1a04 100644 --- a/pkg/object/trafficcontroller/trafficcontroller.go +++ b/pkg/object/trafficcontroller/trafficcontroller.go @@ -45,7 +45,8 @@ type ( superSpec *supervisor.Spec spec *Spec - mutex sync.Mutex + // Pointer aims to safely transform it to next generation. + mutex *sync.Mutex namespaces map[string]*Namespace } @@ -134,6 +135,7 @@ func (tc *TrafficController) DefaultSpec() interface{} { func (tc *TrafficController) Init(superSpec *supervisor.Spec) { tc.superSpec, tc.spec, tc.super = superSpec, superSpec.ObjectSpec().(*Spec), superSpec.Super() + tc.mutex = &sync.Mutex{} tc.namespaces = make(map[string]*Namespace) tc.reload(nil)