fix(querier): use most specific timerange available (#90540)
* fix(querier): use most specific timerange available * return zero values
This commit is contained in:
@@ -45,7 +45,7 @@ func TestQuerySplitting(t *testing.T) {
|
||||
require.Empty(t, split.Requests)
|
||||
})
|
||||
|
||||
t.Run("applies default time range", func(t *testing.T) {
|
||||
t.Run("applies zero time range if time range is missing", func(t *testing.T) {
|
||||
split, err := parser.parseRequest(ctx, &query.QueryDataRequest{
|
||||
QueryDataRequest: data.QueryDataRequest{
|
||||
TimeRange: data.TimeRange{}, // missing
|
||||
@@ -62,10 +62,61 @@ func TestQuerySplitting(t *testing.T) {
|
||||
})
|
||||
require.NoError(t, err)
|
||||
require.Len(t, split.Requests, 1)
|
||||
require.Equal(t, "now-6h", split.Requests[0].Request.From)
|
||||
require.Equal(t, "0", split.Requests[0].Request.From)
|
||||
require.Equal(t, "0", split.Requests[0].Request.To)
|
||||
})
|
||||
t.Run("applies query time range if present", func(t *testing.T) {
|
||||
split, err := parser.parseRequest(ctx, &query.QueryDataRequest{
|
||||
QueryDataRequest: data.QueryDataRequest{
|
||||
TimeRange: data.TimeRange{}, // missing
|
||||
Queries: []data.DataQuery{{
|
||||
CommonQueryProperties: data.CommonQueryProperties{
|
||||
RefID: "A",
|
||||
Datasource: &data.DataSourceRef{
|
||||
Type: "x",
|
||||
UID: "abc",
|
||||
},
|
||||
TimeRange: &data.TimeRange{
|
||||
From: "now-1d",
|
||||
To: "now",
|
||||
},
|
||||
},
|
||||
}},
|
||||
},
|
||||
})
|
||||
require.NoError(t, err)
|
||||
require.Len(t, split.Requests, 1)
|
||||
require.Equal(t, "now-1d", split.Requests[0].Request.From)
|
||||
require.Equal(t, "now", split.Requests[0].Request.To)
|
||||
})
|
||||
|
||||
t.Run("applies query time range if all time ranges are present", func(t *testing.T) {
|
||||
split, err := parser.parseRequest(ctx, &query.QueryDataRequest{
|
||||
QueryDataRequest: data.QueryDataRequest{
|
||||
TimeRange: data.TimeRange{
|
||||
From: "now-1h",
|
||||
To: "now",
|
||||
},
|
||||
Queries: []data.DataQuery{{
|
||||
CommonQueryProperties: data.CommonQueryProperties{
|
||||
RefID: "A",
|
||||
Datasource: &data.DataSourceRef{
|
||||
Type: "x",
|
||||
UID: "abc",
|
||||
},
|
||||
TimeRange: &data.TimeRange{
|
||||
From: "now-1d",
|
||||
To: "now",
|
||||
},
|
||||
},
|
||||
}},
|
||||
},
|
||||
})
|
||||
require.NoError(t, err)
|
||||
require.Len(t, split.Requests, 1)
|
||||
require.Equal(t, "now-1d", split.Requests[0].Request.From)
|
||||
require.Equal(t, "now", split.Requests[0].Request.To)
|
||||
})
|
||||
t.Run("verify tests", func(t *testing.T) {
|
||||
files, err := os.ReadDir("testdata")
|
||||
require.NoError(t, err)
|
||||
|
||||
Reference in New Issue
Block a user