You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
While executing sort(xx), promxy will return ordered timeseries within the result from each server_group. However, the results across different datasources haven't been combined and sorted.
According to the logic on https://github.com/jacksontj/promxy/blob/v0.0.75/pkg/proxystorage/proxy.go#L479, functions of which type is Call are sent directly to downstream nodes, including sort(), of which the result need to be merged and sorted again.
5. Conclusion
The problem could also exist in other functions with similar features, which are based on whole data to evaluate, like quantile() considered before.
By far, I haven't found any other func with the feature.
The text was updated successfully, but these errors were encountered:
1. Describe the bug
While executing
sort(xx)
, promxy will return ordered timeseries within the result from each server_group. However, the results across different datasources haven't been combined and sorted.2. Version
0.0.75
3. Reproduce
preparation of data
http://127.0.0.1:8481/select/6/prometheus/api/v1/query?time=2022-01-24T18:50:00.0%2B08:00&query=up
server_group 0:
http://127.0.0.1:8481/select/5/prometheus/api/v1/query?time=2022-01-24T18:50:00.0%2B08:00&query=up
server_group 1:
execution
http://127.0.0.1:8082/api/v1/query?time=2022-01-24T18:50:00.0%2B08:00&query=sort(up)
The results below show us that the first value is 1 while the second is 0 and the fifth one is 1.
4. Direct Cause in terms of code
According to the logic on
https://github.com/jacksontj/promxy/blob/v0.0.75/pkg/proxystorage/proxy.go#L479
, functions of which type isCall
are sent directly to downstream nodes, includingsort()
, of which the result need to be merged and sorted again.5. Conclusion
The problem could also exist in other functions with similar features, which are based on whole data to evaluate, like quantile() considered before.
By far, I haven't found any other func with the feature.
The text was updated successfully, but these errors were encountered: