From 20735d0cb4ad105d2aa90a8271ae464ca6e745c8 Mon Sep 17 00:00:00 2001 From: Robert Glonek Date: Fri, 20 Sep 2024 19:05:06 -0700 Subject: [PATCH] agi fix critical bug --- CHANGELOG/7.6.1.md | 3 ++- src/plugin/queryStatic.go | 2 +- src/plugin/queryTimeseries.go | 4 ++++ 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/CHANGELOG/7.6.1.md b/CHANGELOG/7.6.1.md index 0f1b9295d..b0d082dc0 100644 --- a/CHANGELOG/7.6.1.md +++ b/CHANGELOG/7.6.1.md @@ -9,4 +9,5 @@ _Release Date: Month Day, Year_ * Improvement: AGI: Update `simpod-json-datasource` version to `0.6.5`. * FIX: AGI Monitor preserve owner when sizing instances. * FIX: Rest API: crashes. -* FIX: Update java in `vscode` client. \ No newline at end of file +* FIX: Update java in `vscode` client. +* FIX: AGI: Plugin: Fix critical bug resulting in a panic and a mutex lock. diff --git a/src/plugin/queryStatic.go b/src/plugin/queryStatic.go index 857e787b2..f2e6c2026 100644 --- a/src/plugin/queryStatic.go +++ b/src/plugin/queryStatic.go @@ -46,5 +46,5 @@ func (p *Plugin) handleQueryStatic(req *queryRequest, i int, remote string) (*st responseRows = append(responseRows, dataValue) } response.Rows = append(response.Rows, responseRows) - return nil, nil + return response, nil } diff --git a/src/plugin/queryTimeseries.go b/src/plugin/queryTimeseries.go index 74800ee0c..64695e299 100644 --- a/src/plugin/queryTimeseries.go +++ b/src/plugin/queryTimeseries.go @@ -87,6 +87,10 @@ func (p *Plugin) handleQueryTimeseries(req *queryRequest, i int, remote string, vals = nil p.cache.lock.RLock() for _, v := range req.selectedVars[filter.Name] { + if n, ok := p.cache.metadata[filter.Name]; !ok || n == nil { + logger.Detail("Grafana requsted a filter which results in nil dereference, skipping (ok:%t filter.Name:%s v:%s)", ok, filter.Name, v) + continue + } idxval := inslice.StringMatch(p.cache.metadata[filter.Name].Entries, v) if idxval == -1 { continue