@@ -23,10 +23,9 @@ import (
23
23
const maxSpans = 300
24
24
25
25
type traceContext struct {
26
- sw * spanWrapper
27
- n int
28
- Data map [string ]interface {}
29
- lcs trace.Span
26
+ sw * spanWrapper
27
+ n int
28
+ lcs trace.Span
30
29
}
31
30
32
31
type spanWrapper struct {
@@ -54,6 +53,7 @@ func (tc *traceContext) add(span trace.Span) bool {
54
53
return true
55
54
}
56
55
56
+ //go:norace
57
57
func (tc * traceContext ) tail () trace.Span {
58
58
if tc .n == 0 {
59
59
return nil
@@ -92,43 +92,37 @@ func (tc *traceContext) del(span trace.Span) {
92
92
func (tc * traceContext ) clear () {
93
93
tc .sw = nil
94
94
tc .n = 0
95
- tc .Data = nil
96
95
SetBaggageContainerToGLS (nil )
97
96
}
98
97
98
+ //go:norace
99
99
func (tc * traceContext ) TakeSnapShot () interface {} {
100
100
// take a deep copy to avoid reading & writing the same map at the same time
101
- var dataCopy = make (map [string ]interface {})
102
- for key , value := range tc .Data {
103
- dataCopy [key ] = value
104
- }
105
101
if tc .n == 0 {
106
- return & traceContext {nil , 0 , dataCopy , nil }
102
+ return & traceContext {nil , 0 , nil }
107
103
}
108
104
last := tc .tail ()
109
105
sw := & spanWrapper {last , nil }
110
- return & traceContext {sw , 1 , dataCopy , nil }
106
+ return & traceContext {sw , 1 , nil }
111
107
}
112
108
113
109
func GetGLocalData (key string ) interface {} {
114
- t := getOrInitTraceContext ()
115
- r := t .Data [key ]
116
- return r
110
+ //todo set key into traceContext struct
111
+ //t := getOrInitTraceContext()
112
+
113
+ return nil
117
114
}
118
115
119
116
func SetGLocalData (key string , value interface {}) {
120
117
t := getOrInitTraceContext ()
121
- if t .Data == nil {
122
- t .Data = make (map [string ]interface {})
123
- }
124
- t .Data [key ] = value
118
+
125
119
setTraceContext (t )
126
120
}
127
121
128
122
func getOrInitTraceContext () * traceContext {
129
123
tc := GetTraceContextFromGLS ()
130
124
if tc == nil {
131
- newTc := & traceContext {nil , 0 , nil , nil }
125
+ newTc := & traceContext {nil , 0 , nil }
132
126
setTraceContext (newTc )
133
127
return newTc
134
128
} else {
0 commit comments