mirror of https://github.com/grafana/grafana.git
elasticsearch: more robust field order (#65102)
This commit is contained in:
parent
23e3ac0ac9
commit
335bcd1e4e
|
|
@ -693,7 +693,7 @@ func processAggregationDocs(esAgg *simplejson.Json, aggDef *BucketAgg, target *Q
|
||||||
}
|
}
|
||||||
case percentilesType:
|
case percentilesType:
|
||||||
percentiles := bucket.GetPath(metric.ID, "values")
|
percentiles := bucket.GetPath(metric.ID, "values")
|
||||||
for percentileName := range percentiles.MustMap() {
|
for _, percentileName := range getSortedKeys(percentiles.MustMap()) {
|
||||||
percentileValue := percentiles.Get(percentileName).MustFloat64()
|
percentileValue := percentiles.Get(percentileName).MustFloat64()
|
||||||
addMetricValue(values, fmt.Sprintf("p%v %v", percentileName, metric.Field), &percentileValue)
|
addMetricValue(values, fmt.Sprintf("p%v %v", percentileName, metric.Field), &percentileValue)
|
||||||
}
|
}
|
||||||
|
|
@ -1129,3 +1129,14 @@ func createFieldsFromPropKeys(frames data.Frames, propKeys []string) []*data.Fie
|
||||||
}
|
}
|
||||||
return fields
|
return fields
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func getSortedKeys(data map[string]interface{}) []string {
|
||||||
|
keys := make([]string, 0, len(data))
|
||||||
|
|
||||||
|
for k := range data {
|
||||||
|
keys = append(keys, k)
|
||||||
|
}
|
||||||
|
|
||||||
|
sort.Strings(keys)
|
||||||
|
return keys
|
||||||
|
}
|
||||||
|
|
|
||||||
|
|
@ -1030,7 +1030,7 @@ func TestPercentilesWithoutDateHistogram(t *testing.T) {
|
||||||
"3": {
|
"3": {
|
||||||
"buckets": [
|
"buckets": [
|
||||||
{
|
{
|
||||||
"1": { "values": { "75": 3.3, "90": 5.5 } },
|
"1": { "values": { "90": 5.5, "75": 3.3 } },
|
||||||
"doc_count": 10,
|
"doc_count": 10,
|
||||||
"key": "id1"
|
"key": "id1"
|
||||||
},
|
},
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue