From 80ba03c67da11403fefa2d48c4dd30af0fee9fc0 Mon Sep 17 00:00:00 2001 From: Bartosz Jakubski Date: Tue, 26 Nov 2019 07:45:51 +0100 Subject: [PATCH] fix subquery with offset conversion to string (#6373) Signed-off-by: Bartosz Jakubski --- promql/printer.go | 6 +++++- promql/printer_test.go | 3 +++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/promql/printer.go b/promql/printer.go index 167b3fb8e..846353c88 100644 --- a/promql/printer.go +++ b/promql/printer.go @@ -128,7 +128,11 @@ func (node *SubqueryExpr) String() string { if node.Step != 0 { step = model.Duration(node.Step).String() } - return fmt.Sprintf("%s[%s:%s]", node.Expr.String(), model.Duration(node.Range), step) + offset := "" + if node.Offset != time.Duration(0) { + offset = fmt.Sprintf(" offset %s", model.Duration(node.Offset)) + } + return fmt.Sprintf("%s[%s:%s]%s", node.Expr.String(), model.Duration(node.Range), step, offset) } func (node *NumberLiteral) String() string { diff --git a/promql/printer_test.go b/promql/printer_test.go index e9785a047..7365c0409 100644 --- a/promql/printer_test.go +++ b/promql/printer_test.go @@ -83,6 +83,9 @@ func TestExprString(t *testing.T) { { in: `a[5m] offset 1m`, }, + { + in: `a[1h:5m] offset 1m`, + }, { in: `{__name__="a"}`, },