From 4f4620188c89ab3726a174b0445f68b6e50db9d3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=A1bor=20Farkas?= Date: Thu, 11 Nov 2021 14:38:54 +0100 Subject: [PATCH] influxdb: alias: fix corner case (#41562) --- public/app/plugins/datasource/influxdb/influx_series.ts | 2 +- .../datasource/influxdb/specs/influx_series.test.ts | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/public/app/plugins/datasource/influxdb/influx_series.ts b/public/app/plugins/datasource/influxdb/influx_series.ts index 2d253af38c8..c60d394d45e 100644 --- a/public/app/plugins/datasource/influxdb/influx_series.ts +++ b/public/app/plugins/datasource/influxdb/influx_series.ts @@ -80,7 +80,7 @@ export default class InfluxSeries { return series.columns[index]; } if (!isNaN(segIndex)) { - return segments[segIndex]; + return segments[segIndex] ?? match; } if (group.indexOf('tag_') !== 0) { return match; diff --git a/public/app/plugins/datasource/influxdb/specs/influx_series.test.ts b/public/app/plugins/datasource/influxdb/specs/influx_series.test.ts index 130385d7d31..d65b92916bd 100644 --- a/public/app/plugins/datasource/influxdb/specs/influx_series.test.ts +++ b/public/app/plugins/datasource/influxdb/specs/influx_series.test.ts @@ -201,6 +201,14 @@ describe('when generating timeseries from influxdb response', () => { expect(result[0].target).toBe('alias: prod -> count'); }); + + it('should handle too large indexes', () => { + options.alias = 'alias: $0 $1 $2 $3 $4 $5'; + const series = new InfluxSeries(options); + const result = series.getTimeSeries(); + + expect(result[0].target).toBe('alias: app prod server1 count $4 $5'); + }); }); describe('given table response', () => {