VictoriaMetrics/lib
Aliaksandr Valialkin 6bc10f0623
lib/promscrape: do not sort original labels and do not intern label string for the original labels before the sharding code is executed
This should reduce CPU and memory usage in shard mode when service discovery finds big number of scrape targets with many long labels.
See https://docs.victoriametrics.com/vmagent.html#scraping-big-number-of-targets

This is a follow-up after 9882cda8b9

Updates https://github.com/VictoriaMetrics/VictoriaMetrics/issues/1728
2021-10-22 13:55:39 +03:00
..
auth all: use %w instead of %s for wrapping errors in fmt.Errorf 2020-06-30 23:33:46 +03:00
backup app/{vmbackup,vmrestore}: switch from gcs://... to gs://... urls for backups to GCS 2021-09-29 12:12:37 +03:00
bloomfilter lib/promscrape: add the ability to limit the number of unique series per each scrape target 2021-09-01 16:08:12 +03:00
buildinfo all: open-sourcing single-node version 2019-05-23 00:18:06 +03:00
bytesutil Perform conversion from string to []byte according to rule #6 at https://golang.org/pkg/unsafe/#Pointer 2020-08-05 11:55:12 +03:00
cgroup lib/cgroup: set GOGC to 50 by default if it isn't set 2021-07-05 12:34:01 +03:00
consts all: open-sourcing cluster version 2019-05-23 00:25:38 +03:00
decimal all: add support for Prometheus staleness markers 2021-08-13 12:13:15 +03:00
encoding all: add go:build lines for Go1.17 2021-07-26 15:50:46 +03:00
envflag lib/envflag: use flag.Set for setting the flags from env vars 2021-10-20 00:46:53 +03:00
envtemplate all: support %{ENV_VAR} placeholders in yaml configs in all the vm* components 2020-08-13 17:17:06 +03:00
fastnum Makefile: add build and test rules with enabled race detector. These rules have -race suffix 2020-03-05 12:05:16 +02:00
fasttime lib: extract common code for returning fast unix timestamp into lib/fasttime 2020-05-14 23:06:50 +03:00
filestream fixes solaris build (#1345) 2021-06-04 11:56:06 +03:00
flagutil lib/flagutil: do not expose sensitive info (passwords, keys and urls) at /flags page 2021-10-20 00:51:15 +03:00
fs all: add go:build lines for Go1.17 2021-07-26 15:50:46 +03:00
handshake lib/handshake: pass io.EOF unmodified to the caller for BufferedConn.Read, so it could properly detect the end of stream 2021-05-27 12:09:17 +03:00
httpserver lib/httpserver: expose command-line flags at /flags page 2021-10-20 00:46:54 +03:00
influxutils lib/influxutils: return response compatible with InfluxDB 1.8.4 2021-03-15 22:20:38 +02:00
ingestserver docs: consistency renaming: Influx -> InfluxDB 2021-09-13 17:14:45 +03:00
leveledbytebufferpool lib/promscrape: an attempt to reduce memory usage when vmagent scrapes targets with varying number of metrics 2021-03-15 11:49:29 +02:00
logger all: add go:build lines for Go1.17 2021-07-26 15:50:46 +03:00
memory all: add go:build lines for Go1.17 2021-07-26 15:50:46 +03:00
mergeset lib/{mergeset,storage}: improve the detection of the needed free space for background merge 2021-08-25 10:01:09 +03:00
metricsql lib/metricsql: move it to a separate repository - github.com/VictoriaMetrics/metrics 2020-04-28 15:30:06 +03:00
netutil reset deadline, fix #1562. (#1597) 2021-09-07 20:54:17 +03:00
pacelimiter lib/pacelimiter: increase scalability for multi-CPU system 2020-08-06 18:33:07 +03:00
persistentqueue all: add support for Prometheus staleness markers 2021-08-13 12:13:15 +03:00
procutil all: add go:build lines for Go1.17 2021-07-26 15:50:46 +03:00
promauth lib/promauth: cache the client TLS certificate for up to a second 2021-07-02 13:20:18 +03:00
prompb app/vminsert: moved -maxInsertRequestSize command-line flag out of lib/prompb in order to prevent its inclusion in vmselect and vmstorage apps 2020-01-28 22:53:50 +02:00
prompbmarshal all: use %w instead of %s for wrapping errors in fmt.Errorf 2020-06-30 23:33:46 +03:00
promrelabel lib/promrelabel: fix parsing regex: true in relabeling rules 2021-09-21 23:01:40 +03:00
promscrape lib/promscrape: do not sort original labels and do not intern label string for the original labels before the sharding code is executed 2021-10-22 13:55:39 +03:00
protoparser adds tab as second separator for graphite text protocol (#1733) 2021-10-22 12:29:27 +03:00
proxy lib/promscrape: reload auth tokens from files every second 2021-05-14 20:03:35 +03:00
storage lib/storage: log a warning when the -storageDataPath has less than -storage.minFreeDiskSpaceBytes 2021-10-19 23:58:09 +03:00
storagepacelimiter lib/storage: remove prioritizing of merging small parts over merging big parts, since it doesn't work as expected 2020-07-30 20:02:22 +03:00
syncwg all: open-sourcing single-node version 2019-05-23 00:18:06 +03:00
tenantmetrics app/vmselect: export per-tenant stats on the number of requests and the cumulative request duration 2021-02-16 23:30:29 +02:00
timerpool lib/timerpool: use timer pool in concurrency limiters 2019-05-28 17:30:10 +03:00
uint64set Revert "lib/uint64set: allow reusing bucket16 structs inside uint64set.Set via uint64set.Release method" 2021-07-06 18:26:56 +03:00
workingsetcache lib/workingsetcache: switch from split cache to full cache after the cache size exceeds 95% of split capacity 2021-07-15 16:53:35 +03:00
writeconcurrencylimiter all: properly handle CPU limits set on the host system/container 2020-12-08 21:07:03 +02:00