Merge pull request #4320 from parisholley/newengineEmpty
support events with missing tag datapull/4308/head
commit
851a53fd70
|
@ -1017,6 +1017,10 @@ func (p *point) Tags() Tags {
|
||||||
i, key = scanTo(p.key, i, '=')
|
i, key = scanTo(p.key, i, '=')
|
||||||
i, value = scanTagValue(p.key, i+1)
|
i, value = scanTagValue(p.key, i+1)
|
||||||
|
|
||||||
|
if len(value) == 0 {
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
|
||||||
tags[string(unescapeTag(key))] = string(unescapeTag(value))
|
tags[string(unescapeTag(key))] = string(unescapeTag(value))
|
||||||
|
|
||||||
i += 1
|
i += 1
|
||||||
|
@ -1137,8 +1141,11 @@ func (t Tags) HashKey() []byte {
|
||||||
for k, v := range t {
|
for k, v := range t {
|
||||||
ek := escapeTag([]byte(k))
|
ek := escapeTag([]byte(k))
|
||||||
ev := escapeTag([]byte(v))
|
ev := escapeTag([]byte(v))
|
||||||
|
|
||||||
|
if len(string(ev)) > 0 {
|
||||||
escaped[string(ek)] = string(ev)
|
escaped[string(ek)] = string(ev)
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Extract keys and determine final size.
|
// Extract keys and determine final size.
|
||||||
sz := len(escaped) + (len(escaped) * 2) // separators
|
sz := len(escaped) + (len(escaped) * 2) // separators
|
||||||
|
|
|
@ -599,6 +599,18 @@ func TestParsePointUnescape(t *testing.T) {
|
||||||
},
|
},
|
||||||
time.Unix(0, 0)))
|
time.Unix(0, 0)))
|
||||||
|
|
||||||
|
// tag with no value
|
||||||
|
test(t, `cpu,regions=east value="1"`,
|
||||||
|
models.NewPoint("cpu",
|
||||||
|
models.Tags{
|
||||||
|
"regions": "east",
|
||||||
|
"foobar": "",
|
||||||
|
},
|
||||||
|
models.Fields{
|
||||||
|
"value": "1",
|
||||||
|
},
|
||||||
|
time.Unix(0, 0)))
|
||||||
|
|
||||||
// commas in field values
|
// commas in field values
|
||||||
test(t, `cpu,regions=east value="1,0"`,
|
test(t, `cpu,regions=east value="1,0"`,
|
||||||
models.NewPoint("cpu",
|
models.NewPoint("cpu",
|
||||||
|
|
Loading…
Reference in New Issue