Fix percentile aggregation with $__range_series interval

This commit is contained in:
Alexander Zobnin
2022-04-27 15:26:48 +03:00
parent 13d89a0806
commit 8d35c6b297
2 changed files with 25 additions and 1 deletions

View File

@@ -307,6 +307,13 @@ func applyPercentileAgg(series []*timeseries.TimeSeriesData, params ...interface
if err != nil {
return nil, errParsingFunctionParam(err)
}
aggFunc := timeseries.AggPercentile(percentile)
if pInterval == RANGE_VARIABLE_VALUE {
aggregatedSeries := timeseries.AggregateByRange(series, aggFunc)
aggregatedSeries.Meta.Name = fmt.Sprintf("percentileAgg(%s, %v)", pInterval, percentile)
return []*timeseries.TimeSeriesData{aggregatedSeries}, nil
}
interval, err := gtime.ParseInterval(pInterval)
if err != nil {
@@ -316,7 +323,6 @@ func applyPercentileAgg(series []*timeseries.TimeSeriesData, params ...interface
return series, nil
}
aggFunc := timeseries.AggPercentile(percentile)
aggregatedSeries := timeseries.AggregateBy(series, interval, aggFunc)
aggregatedSeries.Meta.Name = fmt.Sprintf("percentileAgg(%s, %v)", pInterval, percentile)