From a6dace8829ca671d3a8602ef21a6388169ee70bc Mon Sep 17 00:00:00 2001 From: Thomas Jackson Date: Thu, 21 Jun 2018 14:43:31 -0700 Subject: [PATCH] Check for timeout in each iteration of matrixSelector (#4300) Signed-off-by: Thomas Jackson Fixes #4288 --- promql/engine.go | 3 +++ 1 file changed, 3 insertions(+) diff --git a/promql/engine.go b/promql/engine.go index 5953ccabb5..20f2faf229 100644 --- a/promql/engine.go +++ b/promql/engine.go @@ -1044,6 +1044,9 @@ func (ev *evaluator) matrixSelector(node *MatrixSelector) Matrix { var it *storage.BufferedSeriesIterator for i, s := range node.series { + if err := contextDone(ev.ctx, "expression evaluation"); err != nil { + ev.error(err) + } if it == nil { it = storage.NewBuffer(s.Iterator(), durationMilliseconds(node.Range)) } else {