v0.37.0 is now out!
We have some really interesting features this time around, with several improvements across components, a new replication protocol for Receivers, and even fixes for Prometheus v3! Do take a look at some of the breaking changes below!
Thank you to all contributors who have contributed to this release. It wouldn't be possible without you! 💜
Please try it out and let us know if you find any issues! 🚀
Changelog
Fixed
- #7511 Query Frontend: fix doubled gzip compression for response body.
- #7592 Ruler: Only increment
thanos_rule_evaluation_with_warnings_total
metric for non PromQL warnings. - #7614 *: fix debug log formatting.
- #7492 Compactor: update filtered blocks list before second downsample pass.
- #7658 Store: Fix panic because too small buffer in pool.
- #7643 Receive: fix thanos_receive_write_{timeseries,samples} stats
- #7644 fix(ui): add null check to find overlapping blocks logic
- #7814 Store: label_values: if matchers contain name=="something", do not add != "" to fetch less postings.
- #7679 Query: respect store.limit.* flags when evaluating queries
- #7821 Query/Receive: Fix coroutine leak introduced in #7796.
- #7843 Query Frontend: fix slow query logging for non-query endpoints.
- #7852 Query Frontend: pass "stats" parameter forward to queriers and fix Prometheus stats merging.
- #7832 Query Frontend: Fix cache keys for dynamic split intervals.
- #7885 Store: Return chunks to the pool after completing a Series call.
- #7893 Sidecar: Fix retrieval of external labels for Prometheus v3.0.0.
- #7903 Query: Fix panic on regex store matchers.
- #7915 Store: Close block series client at the end to not reuse chunk buffer
Added
- #7763 Ruler: use native histograms for client latency metrics.
- #7609 API: Add limit param to metadata APIs (series, label names, label values).
- #7429: Reloader: introduce
TolerateEnvVarExpansionErrors
to allow suppressing errors when expanding environment variables in the configuration file. When set, this will ensure that the reloader won't consider the operation to fail when an unset environment variable is encountered. Note that all unset environment variables are left as is, whereas all set environment variables are expanded as usual. - #7560 Query: Added the possibility of filtering rules by rule_name, rule_group or file to HTTP api.
- #7652 Store: Implement metadata API limit in stores.
- #7659 Receive: Add support for replication using Cap'n Proto. This protocol has a lower CPU and memory footprint, which leads to a reduction in resource usage in Receivers. Before enabling it, make sure that all receivers are updated to a version which supports this replication method.
- #7853 UI: Add support for selecting graph time range with mouse drag.
- #7855 Compcat/Query: Add support for comma separated replica labels.
- #7654 *: Add '--grpc-server-tls-min-version' flag to allow user to specify TLS version, otherwise default to TLS 1.3
- #7854 Query Frontend: Add
--query-frontend.force-query-stats
flag to force collection of query statistics from upstream queriers. - #7860 Store: Support hedged requests
- #7924 *: Upgrade promql-engine to
v0.0.0-20241106100125-097e6e9f425a
and objstore tov0.0.0-20241111205755-d1dd89d41f97
- #7835 Ruler: Add ability to do concurrent rule evaluations
- #7722 Query: Add partition labels flag to partition leaf querier in distributed mode
Changed
- #7494 Ruler: remove trailing period from SRV records returned by discovery
dnsnosrva
lookups - #7567 Query: Use thanos resolver for endpoint groups.
- #7741 Deps: Bump Objstore to
v0.0.0-20240913074259-63feed0da069
- #7813 Receive: enable initial TSDB compaction time randomization
- #7820 Sidecar: Use prometheus metrics for min timestamp
- #7886 Discovery: Preserve results from other resolve calls
- #7669 Receive: Change quorum calculation for rf=2
Removed
- #7704 *: breaking ⚠️ remove Store gRPC Info function. This has been deprecated for 3 years, its time to remove it.
- #7793 Receive: Disable dedup proxy in multi-tsdb
- #7678 Query: Skip formatting strings if debug logging is disabled
New Contributors
- @eqfarhad made their first contribution in #7335
- @derrix060 made their first contribution in #7389
- @wndhydrnt made their first contribution in #7363
- @jeroenvandelockand made their first contribution in #7412
- @aritra24 made their first contribution in #7428
- @axeoman made their first contribution in #7469
- @rexagod made their first contribution in #7429
- @rootxrishabh made their first contribution in #7506
- @tghartland made their first contribution in #7492
- @NishantBansal2003 made their first contribution in #7552
- @djosix made their first contribution in #7581
- @mjtrangoni made their first contribution in #7641
- @harshitasao made their first contribution in #7650
- @riteshsonawane1372 made their first contribution in #7653
- @pureiboi made their first contribution in #7644
- @milinddethe15 made their first contribution in #7642
- @dominicqi made their first contribution in #7658
- @dongjiang1989 made their first contribution in #7764
- @xnet-mobile made their first contribution in #7785
- @niaurys made their first contribution in #7787
- @ntk148v made their first contribution in #7834
- @Reimirno made their first contribution in #7853
- @lachruzam made their first contribution in #7859
Full Commit History: v0.35.1...v0.37.0-rc.0