VictoriaMetrics/app/vmselect/promql
Dmytro Kozlov b75f1854c5
vmselect/promql: add alphanumeric sort by label (sort_by_label_numeric) (#2982)
* vmselect/promql: add alphanumeric sort by label (sort_by_label_numeric)

* vmselect/promql: fix tests, add documentation

* vmselect/promql: update test

* vmselect/promql: update for alphanumeric sorting, fix tests

* vmselect/promql: remove comments

* vmselect/promql: cleanup

* vmselect/promql: avoid memory allocations, update functions descriptions

* vmselect/promql: make linter happy (remove ineffectual assigment)

* vmselect/promql: add test case, fix behavior when strings are equal

* vendor: update github.com/VictoriaMetrics/metricsql from v0.44.1 to v0.45.0

this adds support for sort_by_label_numeric and sort_by_label_numeric_desc functions

* wip

* lib/promscrape: read response body into memory in stream parsing mode before parsing it

This reduces scrape duration for targets returning big responses.

The response body was already read into memory in stream parsing mode before this change,
so this commit shouldn't increase memory usage.

* wip

Co-authored-by: Aliaksandr Valialkin <valyala@victoriametrics.com>
2022-09-14 17:41:09 +03:00
..
active_queries.go app/vmselect: show X-Forwarded-For contents on /api/v1/status/active_queries page 2020-07-31 20:05:18 +03:00
aggr_incremental_test.go all: use %w instead of %s for wrapping errors in fmt.Errorf 2020-06-30 23:05:11 +03:00
aggr_incremental.go app/vmselect/promql: return empty values from group() if all the time series have no values at the given timestamp 2020-07-28 13:40:11 +03:00
aggr_test.go app/vmselect/promql: add mode() aggregate function 2020-07-20 15:31:20 +03:00
aggr.go all: remove explicit "xxhash" name when importing github.com/cespare/xxhash/v2 package 2022-06-21 20:23:32 +03:00
binary_op.go app/vmselect/promql: properly return q1 series from q1 ifnot q2 when q2 returns nothing 2022-07-18 14:24:54 +03:00
eval_test.go vmselect/promql: enable search.maxPointsSubqueryPerTimeseries for sub-queries (#2963) 2022-08-24 15:25:18 +03:00
eval.go vmselect/{promql, prometheus}: show flag names which user can update in error message (#3049) 2022-09-06 13:25:59 +03:00
exec_test.go vmselect/promql: add alphanumeric sort by label (sort_by_label_numeric) (#2982) 2022-09-14 17:41:09 +03:00
exec.go vmselect/promql: add alphanumeric sort by label (sort_by_label_numeric) (#2982) 2022-09-14 17:41:09 +03:00
memory_limiter_test.go app/vmselect/promql: use dynamic limit on memory for concurrent queries 2019-06-12 23:18:44 +03:00
memory_limiter.go app/vmselect/promql: use dynamic limit on memory for concurrent queries 2019-06-12 23:18:44 +03:00
parser.go app/vmselect: accept optional extra_filters[] query args for all the supported Prometheus querying APIs 2021-12-06 17:07:09 +02:00
rollup_result_cache_test.go vmselect/promql: enable search.maxPointsSubqueryPerTimeseries for sub-queries (#2963) 2022-08-24 15:25:18 +03:00
rollup_result_cache.go all: use os.{Read|Write}File instead of ioutil.{Read|Write}File 2022-08-21 23:52:35 +03:00
rollup_test.go app/vmselect/promql: consistently calculate rate_over_sum(m[d]) as sum_over_time(m[d])/d 2022-09-02 23:18:04 +03:00
rollup_timing_test.go all: open-sourcing single-node version 2019-05-23 00:18:06 +03:00
rollup.go app/vmselect/promql: consistently calculate rate_over_sum(m[d]) as sum_over_time(m[d])/d 2022-09-02 23:18:04 +03:00
timeseries_test.go app/vmselect/promql: store compressed results in the cache 2019-08-14 02:29:45 +03:00
timeseries.go lib/bytesutil: split Resize* funcs to MayOverallocate and NoOverallocate for more fine-grained control over memory allocations 2022-02-01 00:18:42 +02:00
transform_test.go vmselect/promql: add alphanumeric sort by label (sort_by_label_numeric) (#2982) 2022-09-14 17:41:09 +03:00
transform.go vmselect/promql: add alphanumeric sort by label (sort_by_label_numeric) (#2982) 2022-09-14 17:41:09 +03:00
tzdata.go all: add go:build lines for Go1.17 2021-07-26 15:48:21 +03:00