@@ -25,14 +25,13 @@ import (
25
25
)
26
26
27
27
type QueryAPI struct {
28
- queryable storage.SampleAndChunkQueryable
29
- queryEngine engine.QueryEngine
30
- now func () time.Time
31
- statsRenderer v1.StatsRenderer
32
- logger log.Logger
33
- codecs []v1.Codec
34
- CORSOrigin * regexp.Regexp
35
- distributedExecEnabled bool
28
+ queryable storage.SampleAndChunkQueryable
29
+ queryEngine engine.QueryEngine
30
+ now func () time.Time
31
+ statsRenderer v1.StatsRenderer
32
+ logger log.Logger
33
+ codecs []v1.Codec
34
+ CORSOrigin * regexp.Regexp
36
35
}
37
36
38
37
func NewQueryAPI (
@@ -42,17 +41,15 @@ func NewQueryAPI(
42
41
logger log.Logger ,
43
42
codecs []v1.Codec ,
44
43
CORSOrigin * regexp.Regexp ,
45
- distributedExecEnabled bool ,
46
44
) * QueryAPI {
47
45
return & QueryAPI {
48
- queryEngine : qe ,
49
- queryable : q ,
50
- statsRenderer : statsRenderer ,
51
- logger : logger ,
52
- codecs : codecs ,
53
- CORSOrigin : CORSOrigin ,
54
- now : time .Now ,
55
- distributedExecEnabled : distributedExecEnabled ,
46
+ queryEngine : qe ,
47
+ queryable : q ,
48
+ statsRenderer : statsRenderer ,
49
+ logger : logger ,
50
+ codecs : codecs ,
51
+ CORSOrigin : CORSOrigin ,
52
+ now : time .Now ,
56
53
}
57
54
}
58
55
@@ -110,34 +107,17 @@ func (q *QueryAPI) RangeQueryHandler(r *http.Request) (result apiFuncResult) {
110
107
endTime := convertMsToTime (end )
111
108
stepDuration := convertMsToDuration (step )
112
109
113
- if q .distributedExecEnabled {
114
- byteLP := []byte (r .PostFormValue ("plan" ))
115
- if len (byteLP ) != 0 {
116
- logicalPlan , err := logicalplan .Unmarshal (byteLP )
117
- if err != nil {
118
- return apiFuncResult {
119
- nil ,
120
- & apiError {errorBadData , fmt .Errorf ("invalid logical plan: %v" , err )},
121
- nil ,
122
- nil ,
123
- }
124
- }
125
- qry , err = q .queryEngine .MakeRangeQueryFromPlan (ctx , q .queryable , opts , logicalPlan , startTime , endTime , stepDuration , r .FormValue ("query" ))
126
- if err != nil {
127
- return apiFuncResult {
128
- nil ,
129
- & apiError {errorBadData , fmt .Errorf ("failed to create range query from logical plan: %v" , err )},
130
- nil ,
131
- nil ,
132
- }
133
- }
134
- } else { // if there is logical plan field is empty, fall back
135
- qry , err = q .queryEngine .NewRangeQuery (ctx , q .queryable , opts , r .FormValue ("query" ), startTime , endTime , stepDuration )
136
- if err != nil {
137
- return invalidParamError (httpgrpc .Errorf (http .StatusBadRequest , "%s" , err .Error ()), "query" )
138
- }
110
+ byteLP := []byte (r .PostFormValue ("plan" ))
111
+ if len (byteLP ) != 0 {
112
+ logicalPlan , err := logicalplan .Unmarshal (byteLP )
113
+ if err != nil {
114
+ return apiFuncResult {nil , & apiError {errorBadData , fmt .Errorf ("invalid logical plan: %v" , err )}, nil , nil }
115
+ }
116
+ qry , err = q .queryEngine .MakeRangeQueryFromPlan (ctx , q .queryable , opts , logicalPlan , startTime , endTime , stepDuration , r .FormValue ("query" ))
117
+ if err != nil {
118
+ return apiFuncResult {nil , & apiError {errorBadData , fmt .Errorf ("failed to create range query from logical plan: %v" , err )}, nil , nil }
139
119
}
140
- } else {
120
+ } else { // if there is logical plan field is empty, fall back
141
121
qry , err = q .queryEngine .NewRangeQuery (ctx , q .queryable , opts , r .FormValue ("query" ), startTime , endTime , stepDuration )
142
122
if err != nil {
143
123
return invalidParamError (httpgrpc .Errorf (http .StatusBadRequest , "%s" , err .Error ()), "query" )
@@ -200,35 +180,17 @@ func (q *QueryAPI) InstantQueryHandler(r *http.Request) (result apiFuncResult) {
200
180
var qry promql.Query
201
181
tsTime := convertMsToTime (ts )
202
182
203
- if q .distributedExecEnabled {
204
- byteLP := []byte (r .PostFormValue ("plan" ))
205
- if len (byteLP ) != 0 {
206
- logicalPlan , err := logicalplan .Unmarshal (byteLP )
207
- if err != nil {
208
- return apiFuncResult {
209
- nil ,
210
- & apiError {errorBadData , fmt .Errorf ("invalid logical plan: %v" , err )},
211
- nil ,
212
- nil ,
213
- }
214
- }
215
- qry , err = q .queryEngine .MakeInstantQueryFromPlan (ctx , q .queryable , opts , logicalPlan , tsTime , r .FormValue ("query" ))
216
- if err != nil {
217
- return apiFuncResult {
218
- nil ,
219
- & apiError {errorBadData , fmt .Errorf ("failed to create instant query from logical plan: %v" , err )},
220
- nil ,
221
- nil ,
222
- }
223
- }
224
- } else {
225
- // fallback to query string for instant query
226
- qry , err = q .queryEngine .NewInstantQuery (ctx , q .queryable , opts , r .FormValue ("query" ), tsTime )
227
- if err != nil {
228
- return invalidParamError (httpgrpc .Errorf (http .StatusBadRequest , "%s" , err .Error ()), "query" )
229
- }
183
+ byteLP := []byte (r .PostFormValue ("plan" ))
184
+ if len (byteLP ) != 0 {
185
+ logicalPlan , err := logicalplan .Unmarshal (byteLP )
186
+ if err != nil {
187
+ return apiFuncResult {nil , & apiError {errorBadData , fmt .Errorf ("invalid logical plan: %v" , err )}, nil , nil }
188
+ }
189
+ qry , err = q .queryEngine .MakeInstantQueryFromPlan (ctx , q .queryable , opts , logicalPlan , tsTime , r .FormValue ("query" ))
190
+ if err != nil {
191
+ return apiFuncResult {nil , & apiError {errorBadData , fmt .Errorf ("failed to create range query from logical plan: %v" , err )}, nil , nil }
230
192
}
231
- } else {
193
+ } else { // if there is logical plan field is empty, fall back
232
194
qry , err = q .queryEngine .NewInstantQuery (ctx , q .queryable , opts , r .FormValue ("query" ), tsTime )
233
195
if err != nil {
234
196
return invalidParamError (httpgrpc .Errorf (http .StatusBadRequest , "%s" , err .Error ()), "query" )
0 commit comments