Oleg Zaytsev
50ef0dc954
Fix `MemPostings.Add` and `MemPostings.Get` data race ( #15141 )
...
* Tests for Mempostings.{Add,Get} data race
* Fix MemPostings.{Add,Get} data race
We can't modify the postings list that are held in MemPostings as they
might already be in use by some readers.
* Modify BenchmarkHeadStripeSeriesCreate to have common labels
If there are no common labels on the series, we don't excercise the
ordering part of MemSeries, as we're just creating slices of one element
for each label value.
---------
Signed-off-by: Oleg Zaytsev <mail@olegzaytsev.com>
2024-10-11 15:21:15 +02:00
Julien
e6f9e2dde3
Merge pull request #15119 from roidelapluie/dochttp
...
docs: extract HTTP client option documentation in their own sections
2024-10-11 13:10:34 +02:00
Ayoub Mrini
d9a54284f5
Merge pull request #14987 from machine424/yafix
...
fix(notifier): avoid dropping known alertmanagers after each ApplyConfig
2024-10-10 21:14:35 +02:00
György Krajcsovits
bb70370d72
TSDB head: fix race between AppendHistogram and Commit
...
Move writing memSeries lastHistogramValue and lastFloatHistogramValue
after series creation under lock.
The resulting code isn't totally correct in the sense that we're setting
these values before Commit() , so they might be overwritten/rolled back
later.
Also Append of stale sample checks the values without lock, so there's
still a potential race.
The correct solution would be to set these only in Commit() which we
actually do, but then Commit() would also need to process samples in
order and not floats first, then histograms, then float histograms - which
leads to not knowing what stale marker to write for histograms.
Signed-off-by: György Krajcsovits <gyorgy.krajcsovits@grafana.com>
2024-10-10 16:59:15 +02:00
György Krajcsovits
631fadc4ca
Unit test for data race in head.Appender.AppendHistogram
...
Two Appenders race when creating a series with a native histogram
as the memSeries will be common and the lastHistogram field is written
without lock.
Signed-off-by: György Krajcsovits <gyorgy.krajcsovits@grafana.com>
2024-10-10 14:10:07 +02:00
Manik Rana
032ca9ef96
[PERF] textparse: further optimzations for OM `CreatedTimestamps` ( #15097 )
...
* feat: Added more tests; some changes/optimizations when pair-programming with Bartek.
Signed-off-by: Manik Rana <manikrana54@gmail.com>
* chore: imports
Signed-off-by: Manik Rana <manikrana54@gmail.com>
* chore: gofumpt
Signed-off-by: Manik Rana <manikrana54@gmail.com>
* feat: use an efficient replacement to p.Metric
Signed-off-by: Manik Rana <manikrana54@gmail.com>
* feat: reduce mem allocs + comments
Signed-off-by: Manik Rana <manikrana54@gmail.com>
* chore: gofumpt
Signed-off-by: Manik Rana <manikrana54@gmail.com>
* chore: use single quotes
Co-authored-by: Bartlomiej Plotka <bwplotka@gmail.com>
Signed-off-by: Manik Rana <Manikrana54@gmail.com>
* refac: rename
Co-authored-by: Bartlomiej Plotka <bwplotka@gmail.com>
Signed-off-by: Manik Rana <Manikrana54@gmail.com>
* refac: rename to seriesHash
Signed-off-by: Manik Rana <manikrana54@gmail.com>
* refac: switch condition order
Co-authored-by: George Krajcsovits <krajorama@users.noreply.github.com>
Signed-off-by: Manik Rana <Manikrana54@gmail.com>
* refac: switch condition order
Co-authored-by: George Krajcsovits <krajorama@users.noreply.github.com>
Signed-off-by: Manik Rana <Manikrana54@gmail.com>
* feat: stronger checking
Co-authored-by: George Krajcsovits <krajorama@users.noreply.github.com>
Signed-off-by: Manik Rana <Manikrana54@gmail.com>
* chore: fmt
Signed-off-by: Manik Rana <manikrana54@gmail.com>
* refac: pass pointer of buf into seriesHash()
Signed-off-by: Manik Rana <manikrana54@gmail.com>
---------
Signed-off-by: Manik Rana <manikrana54@gmail.com>
Signed-off-by: Manik Rana <Manikrana54@gmail.com>
Co-authored-by: Bartlomiej Plotka <bwplotka@gmail.com>
Co-authored-by: George Krajcsovits <krajorama@users.noreply.github.com>
2024-10-10 12:01:13 +01:00
Björn Rabenstein
8b545bab2f
Merge pull request #15026 from huochexizhan/main
...
fix: fix slice init length
2024-10-10 12:55:28 +02:00
Björn Rabenstein
720a2599a6
Merge pull request #15135 from prometheus/beorn7/docs
...
docs: Update chunk layot for NHCB
2024-10-10 12:00:51 +02:00
huochexizhan
ff16fa1827
fix: fix slice init length
...
Signed-off-by: huochexizhan <huochexizhan@outlook.com>
2024-10-10 16:14:40 +08:00
György Krajcsovits
9b5d7287bb
Use labels hash to determine change in metric like CT
...
Signed-off-by: György Krajcsovits <gyorgy.krajcsovits@grafana.com>
2024-10-09 15:16:46 +02:00
György Krajcsovits
14f92319d9
Add basic benchmark cases for NHCB over OM
...
Signed-off-by: György Krajcsovits <gyorgy.krajcsovits@grafana.com>
2024-10-09 15:16:27 +02:00
beorn7
12c39d5421
docs: Some nitpicking in chunks.md
...
- `float histogram` → `floathistogram`, as it is used in the code.
- Actual link encodings to the code (to find the actual numerical values).
- `<bytes>` → `<data>` for consistency.
Signed-off-by: beorn7 <beorn@grafana.com>
2024-10-09 14:32:12 +02:00
beorn7
a4cb52ff15
docs: Update chunk layot for NHCB
...
Signed-off-by: beorn7 <beorn@grafana.com>
2024-10-09 14:19:20 +02:00
Björn Rabenstein
02d0de9987
Merge pull request #14997 from fionaliao/fl/update-format-docs
...
Update chunk format docs with native histograms and OOO
2024-10-09 13:29:01 +02:00
György Krajcsovits
530e9514b7
Fix case of keeping classic series
...
Make it more obvious that the code in if had side effect.
Signed-off-by: György Krajcsovits <gyorgy.krajcsovits@grafana.com>
2024-10-09 13:08:54 +02:00
Björn Rabenstein
5e987e7c7d
Merge pull request #15092 from jan--f/clarify-storage-contract
...
storage: require selectors to always return matching results
2024-10-09 13:07:59 +02:00
György Krajcsovits
8dfa733596
Fix labels handling with dedupelabels tag
...
Use scratch builder.
Use hash compare instead of compare by label.
Signed-off-by: György Krajcsovits <gyorgy.krajcsovits@grafana.com>
2024-10-09 12:29:59 +02:00
György Krajcsovits
6b15791ec6
Follow the follow-up
...
Signed-off-by: György Krajcsovits <gyorgy.krajcsovits@grafana.com>
2024-10-09 11:56:54 +02:00
György Krajcsovits
4e911a3a05
Follow-up merge from main
...
Signed-off-by: György Krajcsovits <gyorgy.krajcsovits@grafana.com>
2024-10-09 11:54:49 +02:00
György Krajcsovits
a2805e7934
Merge branch 'main' into nhcb-scrape-impl
2024-10-09 11:53:26 +02:00
György Krajcsovits
f3c8ed2947
minor fixes
...
Fix lint errors.
No need to pre-allocate exemplars.
Signed-off-by: György Krajcsovits <gyorgy.krajcsovits@grafana.com>
2024-10-09 11:45:31 +02:00
György Krajcsovits
fbbf10baad
Use the proper way to iterate labels
...
Signed-off-by: György Krajcsovits <gyorgy.krajcsovits@grafana.com>
2024-10-09 11:24:24 +02:00
György Krajcsovits
7fccf1e6be
Disable CT handling and enable exemplar handling
...
Signed-off-by: György Krajcsovits <gyorgy.krajcsovits@grafana.com>
2024-10-09 11:08:08 +02:00
Bryan Boreham
eaf98049e5
Few more 3.0-beta.1 CHANGELOGs
...
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
2024-10-08 18:15:55 +01:00
Bryan Boreham
eb90f238b7
Update CHANGELOG to commit 90f7832447
...
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
2024-10-08 17:31:05 +01:00
Bryan Boreham
9623681543
Prepare 3.0.0-beta.1
...
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
2024-10-08 17:27:10 +01:00
Julius Volz
90f7832447
Merge pull request #15084 from hvnsweeting/patch-1
...
docs: Querying basics: remove what can be graphed
2024-10-08 14:59:07 +02:00
Fiona Liao
8650d25804
Add additional basic nhcb unit tests ( #15086 )
...
* Add additional basic nhcb unit tests
* Update promql/promqltest/testdata/histograms.test
Signed-off-by: Fiona Liao <fiona.liao@grafana.com>
Signed-off-by: Fiona Liao <fiona.y.liao@gmail.com>
Co-authored-by: George Krajcsovits <krajorama@users.noreply.github.com>
2024-10-08 14:34:32 +02:00
Viet Hung Nguyen
f0a9f62ce8
[DOCS] Querying basics: what can be graphed
...
Put a scalar to query, it can be graphed.
So the doc says "an expression that returns an instant vector is the only type which can be graphed." is not correct?
And also, a query_range, which used for graph, always return a range vector <https://promlabs.com/blog/2020/06/18/the-anatomy-of-a-promql-query/#range-queries > , so it's confusing to read the above statement.
Signed-off-by: Viet Hung Nguyen <hvn@familug.org>
2024-10-08 21:16:26 +09:00
Bryan Boreham
663a66b526
Merge pull request #11224 from dekimsey/consul-catalog-filter-support
...
consul: Initial implemenation of catalog filter support
2024-10-08 12:38:17 +01:00
Bryan Boreham
b87b88ddc2
Merge branch 'main' into consul-catalog-filter-support
...
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
2024-10-08 12:20:31 +01:00
Björn Rabenstein
576000a457
Merge pull request #15111 from prometheus/beorn7/doc
...
docs: Declare "float literals are time durations" as stable
2024-10-08 12:49:40 +02:00
Marc
2a7520a323
Add image source label to dockerfiles
...
To get changelogs shown with Renovate a docker container has to add the source label described in the OCI Image Format Specification.
For reference: https://github.com/renovatebot/renovate/blob/main/lib/modules/datasource/docker/readme.md
Signed-off-by: Marc <github@wuast24.de>
2024-10-08 11:53:51 +02:00
Julius Volz
7b6259b29b
Merge pull request #15127 from roidelapluie/assets
...
Add a note for pre-built assets
2024-10-08 11:37:20 +02:00
Julien
e5f604eb9a
Merge pull request #15045 from prometheus/dependabot/go_modules/github.com/klauspost/compress-1.17.10
...
Bump github.com/klauspost/compress from 1.17.9 to 1.17.10
2024-10-08 11:25:58 +02:00
Julien
24caa3653d
Merge pull request #15040 from prometheus/dependabot/go_modules/github.com/digitalocean/godo-1.126.0
...
Bump github.com/digitalocean/godo from 1.122.0 to 1.126.0
2024-10-08 11:25:37 +02:00
Julien
8406aa9c9c
Add a note for pre-built assets
...
Signed-off-by: Julien <roidelapluie@o11y.eu>
2024-10-08 11:23:01 +02:00
György Krajcsovits
e931587bf8
Factor out label compare and store
...
Signed-off-by: György Krajcsovits <gyorgy.krajcsovits@grafana.com>
2024-10-08 10:12:25 +02:00
dependabot[bot]
5dc59acada
Bump github.com/klauspost/compress from 1.17.9 to 1.17.10
...
Bumps [github.com/klauspost/compress](https://github.com/klauspost/compress ) from 1.17.9 to 1.17.10.
- [Release notes](https://github.com/klauspost/compress/releases )
- [Changelog](https://github.com/klauspost/compress/blob/master/.goreleaser.yml )
- [Commits](https://github.com/klauspost/compress/compare/v1.17.9...v1.17.10 )
---
updated-dependencies:
- dependency-name: github.com/klauspost/compress
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-10-07 20:27:02 +00:00
dependabot[bot]
f3358f3c31
Bump github.com/digitalocean/godo from 1.122.0 to 1.126.0
...
Bumps [github.com/digitalocean/godo](https://github.com/digitalocean/godo ) from 1.122.0 to 1.126.0.
- [Release notes](https://github.com/digitalocean/godo/releases )
- [Changelog](https://github.com/digitalocean/godo/blob/main/CHANGELOG.md )
- [Commits](https://github.com/digitalocean/godo/compare/v1.122.0...v1.126.0 )
---
updated-dependencies:
- dependency-name: github.com/digitalocean/godo
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-10-07 20:26:35 +00:00
Ben Kochie
805954d8f8
Merge pull request #14906 from tjhop/chore/3.0-adopt-slog
...
chore!: adopt log/slog, remove go-kit/log
2024-10-07 22:25:16 +02:00
TJ Hoplock
6ebfbd2d54
chore!: adopt log/slog, remove go-kit/log
...
For: #14355
This commit updates Prometheus to adopt stdlib's log/slog package in
favor of go-kit/log. As part of converting to use slog, several other
related changes are required to get prometheus working, including:
- removed unused logging util func `RateLimit()`
- forward ported the util/logging/Deduper logging by implementing a small custom slog.Handler that does the deduping before chaining log calls to the underlying real slog.Logger
- move some of the json file logging functionality to use prom/common package functionality
- refactored some of the new json file logging for scraping
- changes to promql.QueryLogger interface to swap out logging methods for relevant slog sugar wrappers
- updated lots of tests that used/replicated custom logging functionality, attempting to keep the logical goal of the tests consistent after the transition
- added a healthy amount of `if logger == nil { $makeLogger }` type conditional checks amongst various functions where none were provided -- old code that used the go-kit/log.Logger interface had several places where there were nil references when trying to use functions like `With()` to add keyvals on the new *slog.Logger type
Signed-off-by: TJ Hoplock <t.hoplock@gmail.com>
2024-10-07 15:58:50 -04:00
György Krajcsovits
16f28be713
Fix CT handling
...
Signed-off-by: György Krajcsovits <gyorgy.krajcsovits@grafana.com>
2024-10-07 16:59:07 +02:00
Julius Volz
65f6103539
Merge pull request #15118 from roidelapluie/notificationsdoc
...
Document the notifications API
2024-10-07 15:50:06 +02:00
György Krajcsovits
6bebeaf41b
Fix not checking all labels before deciding to store NHCB
...
Signed-off-by: György Krajcsovits <gyorgy.krajcsovits@grafana.com>
2024-10-07 15:41:54 +02:00
Julien
7eb73b10d8
Remove http client config from consul and digitalocean
...
Signed-off-by: Julien <roidelapluie@o11y.eu>
2024-10-07 15:13:00 +02:00
Julien
57e3fd0c51
Remove http options from docker and dockerswarm sd
...
Signed-off-by: Julien <roidelapluie@o11y.eu>
2024-10-07 15:11:15 +02:00
Julien
5f13098403
Remove http client config from EC2 and PuppetDB
...
Signed-off-by: Julien <roidelapluie@o11y.eu>
2024-10-07 15:09:41 +02:00
Julien
409d924381
Remove client HTTP settings from HTTP SD and Hetzner SD
...
Signed-off-by: Julien <roidelapluie@o11y.eu>
2024-10-07 15:07:40 +02:00
Julien
62b26ac13c
Remove HTTP config docs from Kuma, Kubernetes and IONOS
...
Signed-off-by: Julien <roidelapluie@o11y.eu>
2024-10-07 15:05:24 +02:00