Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upgrade to latest mimir-prometheus with Prometheus 3.0 changes #9844

Merged
merged 45 commits into from
Nov 27, 2024
Merged
Show file tree
Hide file tree
Changes from 36 commits
Commits
Show all changes
45 commits
Select commit Hold shift + click to select a range
db74520
Upgrade to latest mimir-prometheus@main
aknuds1 Nov 6, 2024
af7b9b5
Sync test cases with upstream
charleskorn Nov 11, 2024
4d320b6
Adjust behaviour of range vector selectors and subqueries to match ne…
charleskorn Nov 12, 2024
ee96f7e
Adjust `TestRangeVectorSelectors` and `TestAnnotations` to match new …
charleskorn Nov 12, 2024
12e27b3
Disable unsupported upstream test cases
charleskorn Nov 12, 2024
7176b57
Update our test cases to reflect changes in Prometheus' behaviour
charleskorn Nov 12, 2024
225a0c7
Ensure point slice lengths are the same before comparing them
charleskorn Nov 14, 2024
495b063
Emit "incompatible sample types" annotations for vector/vector binary…
charleskorn Nov 18, 2024
29c2e48
Emit "incompatible sample types" annotations for vector/scalar binary…
charleskorn Nov 18, 2024
7d5b9f9
Modify vector/scalar binary comparison operations to match Prometheus…
charleskorn Nov 18, 2024
2ceae93
Add extra test for subqueries
charleskorn Nov 18, 2024
a90db6b
Bring in changes from https://github.com/prometheus/prometheus/pull/1…
charleskorn Nov 18, 2024
0049504
Update tests to match new binary operations behaviour for native hist…
charleskorn Nov 18, 2024
305bf54
Bring in further changes from https://github.com/prometheus/prometheu…
charleskorn Nov 18, 2024
1375df3
Change behaviour to mirror https://github.com/prometheus/prometheus/p…
charleskorn Nov 19, 2024
7704ca1
Querier and query-frontend test changes for Prometheus 3 upgrade (#9959)
charleskorn Nov 20, 2024
cb33eac
Get left-open subquery fix
aknuds1 Nov 21, 2024
17e4b0b
Sync upstream test cases
charleskorn Nov 22, 2024
e6e3659
Update `TestSubqueries` to match expected behaviour
charleskorn Nov 22, 2024
7e60118
Address some of Josh's comments from https://github.com/grafana/mimir…
charleskorn Nov 22, 2024
a4ae1eb
Address Josh's test-related comments from https://github.com/grafana/…
charleskorn Nov 22, 2024
81f30a9
Update integration tests to match new left-open range behaviour
charleskorn Nov 22, 2024
5e76708
Merge remote-tracking branch 'origin/main' into arve/upgrade-mimir-pr…
aknuds1 Nov 22, 2024
55b464b
Fix integration test that relied on `histogram + float` producing a r…
charleskorn Nov 24, 2024
1d0ea03
Use tjhop/slog-gokit
aknuds1 Nov 25, 2024
a27617a
Merge remote-tracking branch 'origin/main' into arve/upgrade-mimir-pr…
aknuds1 Nov 25, 2024
f516678
Fix tests
aknuds1 Nov 25, 2024
7873eda
Merge remote-tracking branch 'origin/main' into arve/upgrade-mimir-pr…
aknuds1 Nov 26, 2024
5eaa734
Fix possible result corruption for == and != with histograms
charleskorn Nov 26, 2024
5eed7da
Merge remote-tracking branch 'origin/main' into arve/upgrade-mimir-pr…
aknuds1 Nov 27, 2024
687c249
Define holt_winters alias within Mimir itself
aknuds1 Nov 27, 2024
f09283e
Add changelog items
aknuds1 Nov 27, 2024
60b2e3f
Disable UTF-8 metric/label names
aknuds1 Nov 27, 2024
132d6be
Simplify logging logic
aknuds1 Nov 27, 2024
a285137
Fix linting
aknuds1 Nov 27, 2024
22e1ab7
Add changelog entries
aknuds1 Nov 27, 2024
281a159
Add changelog entries
aknuds1 Nov 27, 2024
488f868
Add changelog entries
aknuds1 Nov 27, 2024
c838e42
Add changelog entries
aknuds1 Nov 27, 2024
dfa0117
Add changelog entry
aknuds1 Nov 27, 2024
4f0a5e2
Update CHANGELOG.md
aknuds1 Nov 27, 2024
5f23145
Update CHANGELOG.md
aknuds1 Nov 27, 2024
d23ba50
Update changelog
aknuds1 Nov 27, 2024
cde8aac
Add changelog entry
aknuds1 Nov 27, 2024
b7f5f05
Distributor: Add UTF-8 validation test
aknuds1 Nov 27, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@
* [CHANGE] Ingester: remove experimental flags `-ingest-storage.kafka.ongoing-records-per-fetch` and `-ingest-storage.kafka.startup-records-per-fetch`. They are removed in favour of `-ingest-storage.kafka.max-buffered-bytes`. #9906
* [CHANGE] Ingester: Replace `cortex_discarded_samples_total` label from `sample-out-of-bounds` to `sample-timestamp-too-old`. #9885
* [CHANGE] Ruler: the `/prometheus/config/v1/rules` does not return an error anymore if a rule group is missing in the object storage after been successfully returned by listing the storage, because it could have been deleted in the meanwhile. #9936
* [CHANGE] Querier: The `.` pattern in regular expressions in PromQL matches newline characters. With this change regular expressions like `.*` match strings that include `\n`. To maintain the old behaviour, you will have to change regular expressions by replacing all `.` patterns with `[^\n]`, e.g. `foo[^\n]*`. #9844
* [CHANGE] Querier: Lookback and range selectors are left open and right closed (previously left closed and right closed). This change affects queries when the evaluation time perfectly aligns with the sample timestamps. For example assume querying a timeseries with evenly spaced samples exactly 1 minute apart. Previously, a range query with `5m` would usually return 5 samples. But if the query evaluation aligns perfectly with a scrape, it would return 6 samples. Now, queries like this will always return 5 samples. #9844
* [FEATURE] Querier: add experimental streaming PromQL engine, enabled with `-querier.query-engine=mimir`. #9367 #9368 #9398 #9399 #9403 #9417 #9418 #9419 #9420 #9482 #9504 #9505 #9507 #9518 #9531 #9532 #9533 #9553 #9558 #9588 #9589 #9639 #9641 #9642 #9651 #9664 #9681 #9717 #9719 #9724 #9874 #9998 #10007 #10010
* [FEATURE] Distributor: Add support for `lz4` OTLP compression. #9763
* [FEATURE] Query-frontend: added experimental configuration options `query-frontend.cache-errors` and `query-frontend.results-cache-ttl-for-errors` to allow non-transient responses to be cached. When set to `true` error responses from hitting limits or bad data are cached for a short TTL. #9028
Expand Down Expand Up @@ -85,6 +87,7 @@
* [BUGFIX] Ingester: Fix data loss bug in the experimental ingest storage when a Kafka Fetch is split into multiple requests and some of them return an error. #9963 #9964
* [BUGFIX] PromQL: `round` now removes the metric name again. #9879
* [BUGFIX] Query-Frontend: fix `QueryFrontendCodec` module initialization to set lookback delta from `-querier.lookback-delta`. #9984
* [BUGFIX] OTLP: Support integer exemplar value type. #9844

### Mixin

Expand Down
24 changes: 12 additions & 12 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,7 @@ require (
github.com/prometheus/procfs v0.15.1
github.com/shirou/gopsutil/v4 v4.24.10
github.com/thanos-io/objstore v0.0.0-20241111205755-d1dd89d41f97
github.com/tjhop/slog-gokit v0.1.2
github.com/twmb/franz-go v1.18.0
github.com/twmb/franz-go/pkg/kadm v1.14.0
github.com/twmb/franz-go/pkg/kfake v0.0.0-20241111190909-81ceb1a064be
Expand All @@ -84,8 +85,8 @@ require (
github.com/twmb/franz-go/plugin/kprom v1.1.0
github.com/xlab/treeprint v1.2.0
go.opentelemetry.io/collector/pdata v1.20.0
go.opentelemetry.io/otel v1.30.0
go.opentelemetry.io/otel/trace v1.30.0
go.opentelemetry.io/otel v1.31.0
go.opentelemetry.io/otel/trace v1.31.0
go.uber.org/multierr v1.11.0
golang.org/x/exp v0.0.0-20241108190413-2d47ceb2692f
golang.org/x/term v0.26.0
Expand Down Expand Up @@ -113,7 +114,7 @@ require (
github.com/go-test/deep v1.1.0 // indirect
github.com/goccy/go-json v0.10.3 // indirect
github.com/golang-jwt/jwt/v5 v5.2.1 // indirect
github.com/golang/glog v1.2.1 // indirect
github.com/golang/glog v1.2.2 // indirect
github.com/google/gnostic-models v0.6.8 // indirect
github.com/grafana/pyroscope-go/godeltaprof v0.1.8 // indirect
github.com/hashicorp/go-retryablehttp v0.7.7 // indirect
Expand All @@ -136,14 +137,13 @@ require (
github.com/tklauser/numcpus v0.6.1 // indirect
github.com/yusufpapurcu/wmi v1.2.4 // indirect
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.54.0 // indirect
go.opentelemetry.io/contrib/instrumentation/net/http/httptrace/otelhttptrace v0.55.0 // indirect
go.opentelemetry.io/otel/sdk v1.30.0 // indirect
go.opentelemetry.io/contrib/instrumentation/net/http/httptrace/otelhttptrace v0.56.0 // indirect
go.opentelemetry.io/otel/sdk/metric v1.30.0 // indirect
gopkg.in/alexcesaro/quotedprintable.v3 v3.0.0-20150716171945-2caba252f4dc // indirect
gopkg.in/mail.v2 v2.3.1 // indirect
gopkg.in/telebot.v3 v3.2.1 // indirect
k8s.io/apimachinery v0.31.0 // indirect
k8s.io/client-go v0.31.0 // indirect
k8s.io/apimachinery v0.31.1 // indirect
k8s.io/client-go v0.31.1 // indirect
k8s.io/klog/v2 v2.130.1 // indirect
)

Expand Down Expand Up @@ -248,7 +248,7 @@ require (
github.com/pkg/browser v0.0.0-20240102092130-5ac0b6a4141c // indirect
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect
github.com/prometheus/common/sigv4 v0.1.0 // indirect
github.com/prometheus/exporter-toolkit v0.12.0 // indirect
github.com/prometheus/exporter-toolkit v0.13.0 // indirect
github.com/rainycape/unidecode v0.0.0-20150907023854-cb7f23ec59be // indirect
github.com/rs/cors v1.11.0 // indirect
github.com/rs/xid v1.6.0 // indirect
Expand All @@ -266,9 +266,9 @@ require (
go.etcd.io/etcd/client/v3 v3.5.4 // indirect
go.mongodb.org/mongo-driver v1.14.0 // indirect
go.opencensus.io v0.24.0 // indirect
go.opentelemetry.io/collector/semconv v0.108.1
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.55.0 // indirect
go.opentelemetry.io/otel/metric v1.30.0 // indirect
go.opentelemetry.io/collector/semconv v0.110.0
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.56.0 // indirect
go.opentelemetry.io/otel/metric v1.31.0 // indirect
go.uber.org/zap v1.21.0 // indirect
golang.org/x/mod v0.22.0 // indirect
golang.org/x/oauth2 v0.24.0 // indirect
Expand All @@ -284,7 +284,7 @@ require (
)

// Using a fork of Prometheus with Mimir-specific changes.
replace github.com/prometheus/prometheus => github.com/grafana/mimir-prometheus v0.0.0-20241120160701-db938c3ceac8
replace github.com/prometheus/prometheus => github.com/grafana/mimir-prometheus v0.0.0-20241121154025-fd7e39a8798e

// Replace memberlist with our fork which includes some fixes that haven't been
// merged upstream yet:
Expand Down
Loading
Loading