Skip to content

Add shuffle sharding grouper/planner #4357

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

Closed
wants to merge 137 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
137 commits
Select commit Hold shift + click to select a range
28cf3b6
add shuffle sharding grouper/planner
ac1214 Jul 10, 2021
366536a
update CHANGELOG.md
ac1214 Jul 10, 2021
da68878
Add timeout for waiting on compactor to become ACTIVE in the ring. (#…
ac1214 Jul 5, 2021
18e05ba
MergeIterator: allocate less memory at first (#4341)
bboreham Jul 6, 2021
abcb297
Expose default configuration values for memberlist. (#4276)
stevesg Jul 7, 2021
c3d412c
Allow setting ring heartbeat timeout to zero to disable timeout check…
stevesg Jul 9, 2021
51b2a85
Add a new config and metric for reporting ruler query execution wall …
Jul 9, 2021
9ceb7d6
Add a security doc (#4337)
bboreham Jul 9, 2021
6418248
Optimise memberlist kv store access by storing data unencoded. (#4345)
stevesg Jul 9, 2021
869fe06
Allow disabling of ring heartbeats by setting relevant options to zer…
stevesg Jul 9, 2021
bba2774
Expose configuration of memberlist packet compression. (#4346)
stevesg Jul 9, 2021
bbdcfb3
Attempt at making SyncOnRingTopologyChanges test more reliable. (#4348)
stevesg Jul 9, 2021
41c6676
Fix StateReplicationWithSharding_InitialSyncFromPeers flaking. (#4349)
stevesg Jul 9, 2021
02de2c9
Proposal for time series deletion with block storage (#4274)
ilangofman Jul 9, 2021
b0365b7
update changelog
ac1214 Jul 12, 2021
205ed16
Add unit tests for shuffle sharding planner
ac1214 Jul 13, 2021
65e3e5d
Fix integration TestAlertmanagerSharding flaking. (#4353)
stevesg Jul 12, 2021
d5dc01c
Fix integration TestSingleBinaryWithMemberlistScaling flaking. (#4361)
stevesg Jul 13, 2021
f1f3642
Update go version in build image to 1.16.6 (#4362)
simonswine Jul 13, 2021
ff72ed6
Add metric name to metadata error (#4363)
gouthamve Jul 14, 2021
11a31e1
Fix ruler query failure reporting (#4335)
pstibrany Jul 20, 2021
142b7a2
Add per-user query metrics for series and bytes returned (#4343)
56quarters Jul 20, 2021
c096f4f
Restrict path segments in TenantIDs (#4375)
simonswine Jul 21, 2021
3683709
Chore: Upgrade Prometheus (#4374)
aknuds1 Jul 22, 2021
3ab9e8c
Prevent read on TSDB once closeAllTSDB function has been called (#4304)
ilangofman Jul 23, 2021
175a57c
Update comment on rate-limit error (#4379)
bboreham Jul 26, 2021
6fe1b01
Upgrade Prometheus to LabelNames with matchers (#4380)
colega Jul 26, 2021
60fb29d
Fix Ingesters unable to re-join the cluster then `unregister_on_shutd…
alanprot Aug 3, 2021
99f40cd
Upgrade thanos version (#4394)
ilangofman Aug 5, 2021
3a1bef7
Add missed items for 1.10 to CHANGELOG
bboreham Jun 29, 2021
ad7c029
Update for 1.10.0-rc.0 release candidate
bboreham Jun 29, 2021
c50b730
Cosmetic
bboreham Jun 29, 2021
d71577e
Restrict path segments in TenantIDs (#4375) (#4376)
bboreham Jul 21, 2021
6d8c07d
Update VERSION to 1.10.0-rc.1
bboreham Jul 21, 2021
228f74f
Update to version 1.10 (#4395)
bboreham Aug 3, 2021
44228c5
Update community call times. (#4405)
tomwilkie Aug 6, 2021
56bcfff
Fixed flaky TestMultitenantAlertmanager_SyncOnRingTopologyChanges (#4…
pracucci Aug 12, 2021
1c65203
fix compator unit test
ac1214 Aug 12, 2021
f1338dc
Don't try to compact blocks marked for deletion. (#4328)
pstibrany Aug 13, 2021
6a778ea
Addind AlertManager SNS Receiver Implementation (#4382)
alanprot Aug 13, 2021
06b0e97
Memberlist now forwards only changes, not full original received mess…
pstibrany Aug 16, 2021
8a8f719
Memberlist ignore old tombstones (#4420)
pstibrany Aug 16, 2021
5098d0b
Replace use of global loggers in the module subsystem (#4425)
56quarters Aug 17, 2021
383dcce
Fix bug where querier may not be able to achieve max-concurrent (#4417)
alvinlin123 Aug 17, 2021
e2b141f
Add release 1.10 to the backwards compatibility matrix (#4407)
bboreham Aug 17, 2021
c9654d8
Reduce flakiness on chunk flush tests (#4386)
bboreham Aug 17, 2021
dc6695f
Use backoff functionality from github.com/grafana/dskit (#4426)
aknuds1 Aug 18, 2021
c79ab5c
Use services and modules packages from grafana/dskit (#4430)
56quarters Aug 19, 2021
6d10e35
frontend: permit passing a custom http.RoundTripper (#4434)
GiedriusS Aug 19, 2021
e5bbc18
querier: exhaust response body before closing (#4429)
GiedriusS Aug 20, 2021
dd37deb
Update cortex to use runtime config from dskit (#4440)
Aug 26, 2021
e07e68c
Fix link to voting section from how to become a maintainer page (#4446)
jeromeinsf Aug 26, 2021
902f8c5
fixing bug in chuck cache that can cause panic during shutdown (#4398)
rsteneteg Aug 26, 2021
31bce1c
Use flagext module from grafana/dskit (#4443)
56quarters Aug 26, 2021
e765e51
Reuse the byte buffer from GRPC response in the frontend. (#4377)
cyriltovena Aug 26, 2021
be97b93
Add Alvin Lin as maintainer (#4444)
bboreham Aug 26, 2021
0638e58
Clarify Prometheus capability in auth guide (#4399)
kd7lxl Aug 26, 2021
2e8d7e4
Changelog fix
Aug 27, 2021
34116d7
Use kv package from github.com/grafana/dskit (#4436)
aknuds1 Aug 27, 2021
5db90fd
Adding Test for getShardedRules call (#4449)
alanprot Sep 2, 2021
66d3680
point out that disabling shard-by-all-labels has down-sides (#4452)
replay Sep 2, 2021
1a8ec04
Put CHANGELOG entries in prescribed order (#4457)
bboreham Sep 2, 2021
63e6d46
Clean up some changelog entries (#4458)
bboreham Sep 3, 2021
ed3589a
Chore: Upgrade weaveworks/common (#4462)
aknuds1 Sep 6, 2021
7db58bf
Fixes @ modifier when splitting queries by time. (#4464)
cyriltovena Sep 7, 2021
1ac1f0a
Fixes a panic in the query-tee. (#4465)
cyriltovena Sep 7, 2021
32810ed
Chore: Upgrade dskit (#4468)
aknuds1 Sep 10, 2021
2de54a3
fix querier panics when query exemplars (#4473)
nous23 Sep 13, 2021
1372897
Using subring on getShardedRules when shuffle sharding (#4466)
alanprot Sep 15, 2021
d3c33f2
Send new label 'status' for ingester failures (#4442)
danielblando Sep 15, 2021
66635c3
address comments for parallel compaction proposal (#4460)
roystchiang Sep 16, 2021
718d2b0
Fixed panic while collecting Prometheus metrics (#4483)
bboreham Sep 17, 2021
76996e1
[querier] honor querier mint,maxt if no SelectHints are passed to Sel…
aallawala Sep 17, 2021
9214915
Updating prometheus AlertManager to latest master (#4481)
alanprot Sep 20, 2021
ea86d44
add memcached auto-discovery support from thanos (#4412)
roystchiang Sep 20, 2021
76b60b3
Fixes 500 in the frontend when a query is invalid. (#4488)
cyriltovena Sep 21, 2021
f4cea7d
add note regarding thanos metrics
ac1214 Sep 23, 2021
1f61f71
fix spacing in changelog
ac1214 Sep 23, 2021
2ced351
Migrating from go-kit/kit/log to the slimmer go-kit/log (#4421)
dannykopping Sep 29, 2021
3f5b128
Update Thanos to v0.19.1-0.20210923155558-c15594a03c45. (#4505)
pstibrany Oct 1, 2021
c3fab5e
Ring: remove redundant 'LEAVING' status in Operation construction (#4…
amoylan2 Oct 1, 2021
92a9bf0
fix incomplete and confusing website cover title (#4497)
codematix Oct 1, 2021
723e31b
Start 1.11 release; add changelog entries for #4505 (#4507)
bboreham Oct 1, 2021
e563306
Documentation for ingester instance limits in runtime configuration (…
56quarters Oct 4, 2021
3c731be
Adding unit test for parsing errors on frontend split queries (#4504)
marianafranco Oct 6, 2021
362dcdb
go.mod: Upgrade github.com/redis-go/redis (#4517)
brancz Oct 6, 2021
51f2338
Added comment for pin. (#4509)
pstibrany Oct 6, 2021
0bf901a
chore: update Dockerfiles to use Alpine 3.14 (#4514)
kallydev Oct 6, 2021
6e12447
Chore: Use dskit/grpc* (#4523)
aknuds1 Oct 12, 2021
294ef26
Removing Stale alert manager templates files (#4495)
alanprot Oct 12, 2021
391cad2
Chore: Use dskit/runutil (#4525)
aknuds1 Oct 13, 2021
4f5f6ae
Use dskit/concurrency (#4527)
aknuds1 Oct 13, 2021
c252a5e
Chore: Use dskit/limiter (#4526)
aknuds1 Oct 13, 2021
22629c9
Use middleware package from dskit (#4471)
aknuds1 Oct 13, 2021
906aa0e
update to latest Prometheus (#4524)
replay Oct 13, 2021
978f676
Fix race when stopping chunks memcached client (#4511)
bboreham Oct 14, 2021
68f32b9
Distributor unit tests: shut down more goroutines (#4506)
bboreham Oct 14, 2021
129e808
Fix tenant federation performance hotspot (#4502)
edma2 Oct 14, 2021
497082d
Disable S3 SSE integration tests (#4545)
pracucci Nov 2, 2021
f6f39d6
Migrate to dskit/ring (#4539)
Nov 3, 2021
f4e1a5a
Update go-kit/kit to 0.12.0 to fix spurious debug logs (#4544)
bboreham Nov 4, 2021
3d7047e
Update affiliation of Bryan Boreham (#4541)
bboreham Nov 4, 2021
5c8e366
Run local KES for S3 integration tests (#4547)
bboreham Nov 10, 2021
7b26645
Fix: redis MSet check the length of keys and values is equal (#4522)
georgehao Nov 16, 2021
c6976a1
Add northflank to the list of adopters (#4553)
Champ-Goblem Nov 16, 2021
e8763a4
Update Jacob Lisi entry in MAINTAINERS file (#4558)
bboreham Nov 18, 2021
f90168a
query-frontend: add option to preserve specific request headers
srijan55 Nov 19, 2021
893ce3b
Update Thanos and Prometheus (#4560)
pstibrany Nov 24, 2021
f9fde93
Merge release 1.11 to master (#4569)
bboreham Nov 26, 2021
c20fcea
queryrange: retry: do not retry if context is canceled (#4562)
GiedriusS Dec 2, 2021
82fc919
Add config option to omit exporting rule_group label on ruler metrics…
zaharidichev Dec 2, 2021
f12fe5f
distributor-queryable tests: make time go forward (#4561)
bboreham Dec 8, 2021
88ea8b7
Distributor: fix bug in merging exemplars (#4583)
bboreham Dec 9, 2021
50a571f
Changelog: cleanup (#4584)
siggy Dec 10, 2021
93b6d29
Introduce `http` config settings in Azure storage (#4581)
siggy Dec 13, 2021
cc7154b
Update Thanos to latest main (#4585)
siggy Dec 14, 2021
b64a97d
Adds new metric for dropped samples in ingester (#4503)
pedro-stanaka Jan 3, 2022
aa56de0
Disable block deletion marks migration by default (#4597)
bboreham Jan 6, 2022
92a1358
Add a note about remote read in HA Pair handling (#4500)
Jan 6, 2022
6653346
Upgrade Go to 1.17.5 for integration tests + Dockerfiles (#4602)
aknuds1 Jan 6, 2022
03b423f
Rebuild and update build image from master. (#4604)
pstibrany Jan 7, 2022
77e5a2b
Upgrade to dskit@01ce9286d7d5 (#4601)
aknuds1 Jan 10, 2022
2199af9
Revert "Migrate to dskit/ring (#4539)" (#4606)
aknuds1 Jan 13, 2022
dac80e5
Revert "Update cortex to use runtime config from dskit (#4440)" (#4613)
aknuds1 Jan 13, 2022
3cfbb16
Federated ruler proposal (#4477)
Jan 13, 2022
aad9e9f
Revert "Chore: Use dskit/grpc* (#4523)" (#4612)
aknuds1 Jan 13, 2022
6c86e9e
Reintroduce pkg/util/concurrency, in place of dskit/concurrency (#4614)
aknuds1 Jan 13, 2022
d1edf7a
Reintroduce pkg/util/limiter/rate_limiter.go, in place of dskit/limit…
aknuds1 Jan 13, 2022
c95da7b
Reintroduce pkg/util/modules, in place of dskit/modules (#4617)
aknuds1 Jan 13, 2022
1d7281f
Revert "Use kv package from github.com/grafana/dskit (#4436)" (#4611)
aknuds1 Jan 13, 2022
b887d1a
Reintroduce pkg/util/middleware, in place of dskit/middleware (#4619)
aknuds1 Jan 13, 2022
624863f
Reintroduce pkg/util/test, in place of dskit/test (#4618)
aknuds1 Jan 13, 2022
3760f2b
Update CHANGELOG.md
alvinlin123 Jan 14, 2022
e36c332
Add missing parameter to compact.NewGroup
alvinlin123 Jan 14, 2022
82d1c12
Add missing parameter when creating shuffle sharding grouper
alvinlin123 Jan 14, 2022
e458cbd
add missing argument
alvinlin123 Jan 14, 2022
8e78a51
fix up changelog
alvinlin123 Jan 14, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion .errcheck-exclude
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
io/ioutil.WriteFile
io/ioutil.ReadFile
(github.com/go-kit/kit/log.Logger).Log
(github.com/go-kit/log.Logger).Log
io.Copy
(github.com/opentracing/opentracing-go.Tracer).Inject
(*github.com/cortexproject/cortex/pkg/util/spanlogger.SpanLogger).Error
23 changes: 10 additions & 13 deletions .github/workflows/test-build-deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ jobs:
lint:
runs-on: ubuntu-20.04
container:
image: quay.io/cortexproject/build-image:build-image-multiarch-1d2497ff6
image: quay.io/cortexproject/build-image:master-f0c5aab05
steps:
- name: Checkout Repo
uses: actions/checkout@v2
Expand All @@ -34,7 +34,7 @@ jobs:
test:
runs-on: ubuntu-20.04
container:
image: quay.io/cortexproject/build-image:build-image-multiarch-1d2497ff6
image: quay.io/cortexproject/build-image:master-f0c5aab05
services:
cassandra:
image: cassandra:3.11
Expand All @@ -55,7 +55,7 @@ jobs:
build:
runs-on: ubuntu-20.04
container:
image: quay.io/cortexproject/build-image:build-image-multiarch-1d2497ff6
image: quay.io/cortexproject/build-image:master-f0c5aab05
steps:
- name: Checkout Repo
uses: actions/checkout@v2
Expand Down Expand Up @@ -96,13 +96,9 @@ jobs:
runs-on: ubuntu-20.04
steps:
- name: Upgrade golang
run: |
cd /tmp
wget https://dl.google.com/go/go1.16.3.linux-amd64.tar.gz
tar -zxvf go1.16.3.linux-amd64.tar.gz
sudo rm -fr /usr/local/go
sudo mv /tmp/go /usr/local/go
cd -
uses: actions/setup-go@v2
with:
go-version: 1.17.5
- name: Checkout Repo
uses: actions/checkout@v2
- name: Install Docker Client
Expand Down Expand Up @@ -140,6 +136,7 @@ jobs:
docker pull quay.io/cortexproject/cortex:v1.7.0
docker pull quay.io/cortexproject/cortex:v1.8.0
docker pull quay.io/cortexproject/cortex:v1.9.0
docker pull quay.io/cortexproject/cortex:v1.10.0
docker pull shopify/bigtable-emulator:0.1.0
docker pull rinscy/cassandra:3.11.0
docker pull memcached:1.6.1
Expand Down Expand Up @@ -174,14 +171,14 @@ jobs:
run: |
touch build-image/.uptodate
MIGRATIONS_DIR=$(pwd)/cmd/cortex/migrations
make BUILD_IMAGE=quay.io/cortexproject/build-image:build-image-multiarch-1d2497ff6 TTY='' configs-integration-test
make BUILD_IMAGE=quay.io/cortexproject/build-image:master-f0c5aab05 TTY='' configs-integration-test

deploy_website:
needs: [build, test]
if: (github.ref == 'refs/heads/master' || startsWith(github.ref, 'refs/tags/')) && github.repository == 'cortexproject/cortex'
runs-on: ubuntu-20.04
container:
image: quay.io/cortexproject/build-image:build-image-multiarch-1d2497ff6
image: quay.io/cortexproject/build-image:master-f0c5aab05
steps:
- name: Checkout Repo
uses: actions/checkout@v2
Expand Down Expand Up @@ -218,7 +215,7 @@ jobs:
if: (github.ref == 'refs/heads/master' || startsWith(github.ref, 'refs/tags/')) && github.repository == 'cortexproject/cortex'
runs-on: ubuntu-20.04
container:
image: quay.io/cortexproject/build-image:build-image-multiarch-1d2497ff6
image: quay.io/cortexproject/build-image:master-f0c5aab05
steps:
- name: Checkout Repo
uses: actions/checkout@v2
Expand Down
7 changes: 7 additions & 0 deletions .golangci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ linters:
- golint
- gofmt
- misspell
- depguard

linters-settings:
errcheck:
Expand All @@ -16,6 +17,12 @@ linters-settings:
goimports:
local-prefixes: "github.com/cortexproject/cortex"

depguard:
list-type: blacklist
include-go-root: true
packages-with-error-message:
- github.com/go-kit/kit/log: "Use github.com/go-kit/log instead of github.com/go-kit/kit/log"

run:
timeout: 5m

Expand Down
1 change: 1 addition & 0 deletions ADOPTERS.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ This is the list of organisations that are using Cortex in **production environm
* [GoJek](https://www.gojek.io/)
* [GrafanaLabs](https://grafana.com/)
* [MayaData](https://mayadata.io/)
* [Northflank](https://northflank.com/)
* [Opstrace](https://opstrace.com/)
* [Platform9](https://platform9.com/)
* [REWE Digital](https://rewe-digital.com/)
Expand Down
89 changes: 88 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,94 @@

## master / unreleased

* [CHANGE] Querier / ruler: Change `-querier.max-fetched-chunks-per-query` configuration to limit to maximum number of chunks that can be fetched in a single query. The number of chunks fetched by ingesters AND long-term storare combined should not exceed the value configured on `-querier.max-fetched-chunks-per-query`. #4260
* [CHANGE] Changed default for `-ingester.min-ready-duration` from 1 minute to 15 seconds. #4539
* [CHANGE] query-frontend: Do not print anything in the logs of `query-frontend` if a in-progress query has been canceled (context canceled). #4562
* [CHANGE] Compactor block deletion mark migration, needed when upgrading from v1.7, is now disabled by default. #4597
* [CHANGE] The `status_code` label on gRPC client metrics has changed from '200' and '500' to '2xx', '5xx', '4xx', 'cancel' or 'error'. 4601
* [CHANGE] Memberlist: changed probe interval from `1s` to `5s` and probe timeout from `500ms` to `2s`. #4601
* [FEATURE] Add shuffle sharding grouper and planner within compactor to allow further work towards parallelizing compaction #4621
* [ENHANCEMENT] Update Go version to 1.17.5. #4602 #4604
* [ENHANCEMENT] Keep track of discarded samples due to relabel configuration in `cortex_discarded_samples_total`. #4503
* [ENHANCEMENT] Ruler: Add `-ruler.disable-rule-group-label` to disable the `rule_group` label on exported metrics. #4571
* [ENHANCEMENT] Query federation: improve performance in MergeQueryable by memoizing labels. #4502
* [ENHANCEMENT] Added new ring related config `-ingester.readiness-check-ring-health` when enabled the readiness probe will succeed only after all instances are ACTIVE and healthy in the ring, this is enabled by default. #4539
* [ENHANCEMENT] Added new ring related config `-distributor.excluded-zones` when set this will exclude the comma-separated zones from the ring, default is "". #4539
* [ENHANCEMENT] Upgraded Docker base images to `alpine:3.14`. #4514
* [ENHANCEMENT] Updated Prometheus to latest. Includes changes from prometheus#9239, adding 15 new functions. Multiple TSDB bugfixes prometheus#9438 & prometheus#9381. #4524
* [ENHANCEMENT] Query Frontend: Add setting `-frontend.forward-headers-list` in frontend to configure the set of headers from the requests to be forwarded to downstream requests. #4486
* [ENHANCEMENT] Blocks storage: Add `-blocks-storage.azure.http.*`, `-alertmanager-storage.azure.http.*`, and `-ruler-storage.azure.http.*` to configure the Azure storage client. #4581
* [ENHANCEMENT] Optimise memberlist receive path when used as a backing store for rings with a large number of members. #4601
* [BUGFIX] AlertManager: remove stale template files. #4495
* [BUGFIX] Distributor: fix bug in query-exemplar where some results would get dropped. #4582
* [BUGFIX] Update Thanos dependency: compactor tracing support, azure blocks storage memory fix. #4585
* [BUGFIX] Querier: Disable query scheduler SRV DNS lookup, which removes noisy log messages about "failed DNS SRV record lookup". #4601
* [BUGFIX] Memberlist: fixed corrupted packets when sending compound messages with more than 255 messages or messages bigger than 64KB. #4601

## 1.11.0 2021-11-25

* [CHANGE] Memberlist: Expose default configuration values to the command line options. Note that setting these explicitly to zero will no longer cause the default to be used. If the default is desired, then do set the option. The following are affected: #4276
- `-memberlist.stream-timeout`
- `-memberlist.retransmit-factor`
- `-memberlist.pull-push-interval`
- `-memberlist.gossip-interval`
- `-memberlist.gossip-nodes`
- `-memberlist.gossip-to-dead-nodes-time`
- `-memberlist.dead-node-reclaim-time`
* [CHANGE] `-querier.max-fetched-chunks-per-query` previously applied to chunks from ingesters and store separately; now the two combined should not exceed the limit. #4260
* [CHANGE] Memberlist: the metric `memberlist_kv_store_value_bytes` has been removed due to values no longer being stored in-memory as encoded bytes. #4345
* [CHANGE] Some files and directories created by Cortex components on local disk now have stricter permissions, and are only readable by owner, but not group or others. #4394
* [CHANGE] The metric `cortex_deprecated_flags_inuse_total` has been renamed to `deprecated_flags_inuse_total` as part of using grafana/dskit functionality. #4443
* [FEATURE] Ruler: Add new `-ruler.query-stats-enabled` which when enabled will report the `cortex_ruler_query_seconds_total` as a per-user metric that tracks the sum of the wall time of executing queries in the ruler in seconds. #4317
* [FEATURE] Query Frontend: Add `cortex_query_fetched_series_total` and `cortex_query_fetched_chunks_bytes_total` per-user counters to expose the number of series and bytes fetched as part of queries. These metrics can be enabled with the `-frontend.query-stats-enabled` flag (or its respective YAML config option `query_stats_enabled`). #4343
* [FEATURE] AlertManager: Add support for SNS Receiver. #4382
* [FEATURE] Distributor: Add label `status` to metric `cortex_distributor_ingester_append_failures_total` #4442
* [FEATURE] Queries: Added `present_over_time` PromQL function, also some TSDB optimisations. #4505
* [ENHANCEMENT] Add timeout for waiting on compactor to become ACTIVE in the ring. #4262
* [ENHANCEMENT] Reduce memory used by streaming queries, particularly in ruler. #4341
* [ENHANCEMENT] Ring: allow experimental configuration of disabling of heartbeat timeouts by setting the relevant configuration value to zero. Applies to the following: #4342
* `-distributor.ring.heartbeat-timeout`
* `-ring.heartbeat-timeout`
* `-ruler.ring.heartbeat-timeout`
* `-alertmanager.sharding-ring.heartbeat-timeout`
* `-compactor.ring.heartbeat-timeout`
* `-store-gateway.sharding-ring.heartbeat-timeout`
* [ENHANCEMENT] Ring: allow heartbeats to be explicitly disabled by setting the interval to zero. This is considered experimental. This applies to the following configuration options: #4344
* `-distributor.ring.heartbeat-period`
* `-ingester.heartbeat-period`
* `-ruler.ring.heartbeat-period`
* `-alertmanager.sharding-ring.heartbeat-period`
* `-compactor.ring.heartbeat-period`
* `-store-gateway.sharding-ring.heartbeat-period`
* [ENHANCEMENT] Memberlist: optimized receive path for processing ring state updates, to help reduce CPU utilization in large clusters. #4345
* [ENHANCEMENT] Memberlist: expose configuration of memberlist packet compression via `-memberlist.compression=enabled`. #4346
* [ENHANCEMENT] Update Go version to 1.16.6. #4362
* [ENHANCEMENT] Updated Prometheus to include changes from prometheus/prometheus#9083. Now whenever `/labels` API calls include matchers, blocks store is queried for `LabelNames` with matchers instead of `Series` calls which was inefficient. #4380
* [ENHANCEMENT] Querier: performance improvements in socket and memory handling. #4429 #4377
* [ENHANCEMENT] Exemplars are now emitted for all gRPC calls and many operations tracked by histograms. #4462
* [ENHANCEMENT] New options `-server.http-listen-network` and `-server.grpc-listen-network` allow binding as 'tcp4' or 'tcp6'. #4462
* [ENHANCEMENT] Rulers: Using shuffle sharding subring on GetRules API. #4466
* [ENHANCEMENT] Support memcached auto-discovery via `auto-discovery` flag, introduced by thanos in https://github.com/thanos-io/thanos/pull/4487. Both AWS and Google Cloud memcached service support auto-discovery, which returns a list of nodes of the memcached cluster. #4412
* [BUGFIX] Fixes a panic in the query-tee when comparing result. #4465
* [BUGFIX] Frontend: Fixes @ modifier functions (start/end) when splitting queries by time. #4464
* [BUGFIX] Compactor: compactor will no longer try to compact blocks that are already marked for deletion. Previously compactor would consider blocks marked for deletion within `-compactor.deletion-delay / 2` period as eligible for compaction. #4328
* [BUGFIX] HA Tracker: when cleaning up obsolete elected replicas from KV store, tracker didn't update number of cluster per user correctly. #4336
* [BUGFIX] Ruler: fixed counting of PromQL evaluation errors as user-errors when updating `cortex_ruler_queries_failed_total`. #4335
* [BUGFIX] Ingester: When using block storage, prevent any reads or writes while the ingester is stopping. This will prevent accessing TSDB blocks once they have been already closed. #4304
* [BUGFIX] Ingester: fixed ingester stuck on start up (LEAVING ring state) when `-ingester.heartbeat-period=0` and `-ingester.unregister-on-shutdown=false`. #4366
* [BUGFIX] Ingester: panic during shutdown while fetching batches from cache. #4397
* [BUGFIX] Querier: After query-frontend restart, querier may have lower than configured concurrency. #4417
* [BUGFIX] Memberlist: forward only changes, not entire original message. #4419
* [BUGFIX] Memberlist: don't accept old tombstones as incoming change, and don't forward such messages to other gossip members. #4420
* [BUGFIX] Querier: fixed panic when querying exemplars and using `-distributor.shard-by-all-labels=false`. #4473
* [BUGFIX] Querier: honor querier minT,maxT if `nil` SelectHints are passed to Select(). #4413
* [BUGFIX] Compactor: fixed panic while collecting Prometheus metrics. #4483
* [BUGFIX] Update go-kit package to fix spurious log messages #4544


## 1.10.0 / 2021-08-03

* [CHANGE] Prevent path traversal attack from users able to control the HTTP header `X-Scope-OrgID`. #4375 (CVE-2021-36157)
* Users only have control of the HTTP header when Cortex is not frontend by an auth proxy validating the tenant IDs

## 1.10.0-rc.0 / 2021-06-28

Expand Down Expand Up @@ -73,6 +159,7 @@
* [BUGFIX] Store-gateway: when blocks sharding is enabled, do not load all blocks in each store-gateway in case of a cold startup, but load only blocks owned by the store-gateway replica. #4271
* [BUGFIX] Memberlist: fix to setting the default configuration value for `-memberlist.retransmit-factor` when not provided. This should improve propagation delay of the ring state (including, but not limited to, tombstones). Note that if the configuration is already explicitly given, this fix has no effect. #4269
* [BUGFIX] Querier: Fix issue where samples in a chunk might get skipped by batch iterator. #4218

## Blocksconvert

* [ENHANCEMENT] Scanner: add support for DynamoDB (v9 schema only). #3828
Expand Down
5 changes: 3 additions & 2 deletions MAINTAINERS
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
Bryan Boreham <[email protected]> (@bboreham)
Alvin Lin, Amazon Web Services <[email protected]> (@alvinlin123)
Bryan Boreham, Grafana Labs <[email protected]> (@bboreham)
Goutham Veeramachaneni, Grafana Labs <[email protected]> (@gouthamve)
Jacob Lisi, Grafana Labs <[email protected]> (@jtlisi)
Jacob Lisi, Google <[email protected]> (@jtlisi)
Marco Pracucci, Grafana Labs <[email protected]> (@pracucci)
Peter Štibraný, Grafana Labs <[email protected]> (@pstibrany)
Tom Wilkie, Grafana Labs <[email protected]> (@tomwilkie)
4 changes: 2 additions & 2 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -119,7 +119,7 @@ build-image/$(UPTODATE): build-image/*
SUDO := $(shell docker info >/dev/null 2>&1 || echo "sudo -E")
BUILD_IN_CONTAINER := true
BUILD_IMAGE ?= $(IMAGE_PREFIX)build-image
LATEST_BUILD_IMAGE_TAG ?= build-image-multiarch-1d2497ff6
LATEST_BUILD_IMAGE_TAG ?= master-f0c5aab05

# TTY is parameterized to allow Google Cloud Builder to run builds,
# as it currently disallows TTY devices. This value needs to be overridden
Expand Down Expand Up @@ -176,7 +176,7 @@ lint:
# Configured via .golangci.yml.
golangci-lint run

# Ensure no blacklisted package is imported.
# Ensure no blocklisted package is imported.
GOFLAGS="-tags=requires_docker" faillint -paths "github.com/bmizerany/assert=github.com/stretchr/testify/assert,\
golang.org/x/net/context=context,\
sync/atomic=go.uber.org/atomic,\
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -132,7 +132,7 @@ For security issues see https://github.com/cortexproject/cortex/security/policy

## Community Meetings

The Cortex community call happens every three weeks on Thursday at 03:30pm – 04:15pm UTC to get calendar invite join the [google groups](https://groups.google.com/forum/#!forum/cortex-monitoring).
The Cortex community call happens every two weeks on Thursday, alternating at 1200 UTC and 1700 UTC. To get a calendar invite join the [google groups](https://groups.google.com/forum/#!forum/cortex-monitoring) or check out [the CNCF community calendar](https://www.cncf.io/calendar/).

Meeting notes are held [here](https://docs.google.com/document/d/1shtXSAqp3t7fiC-9uZcKkq3mgwsItAJlH6YW6x1joZo/edit).

Expand Down
6 changes: 5 additions & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1,5 @@
1.10.0-rc.0
<<<<<<< HEAD
1.10.0
=======
1.11.0
>>>>>>> Merge release 1.11 to master (#4569)
2 changes: 1 addition & 1 deletion build-image/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM golang:1.16.3-buster
FROM golang:1.17.5-buster
ARG goproxyValue
ENV GOPROXY=${goproxyValue}
RUN apt-get update && apt-get install -y curl python-requests python-yaml file jq unzip protobuf-compiler libprotobuf-dev && \
Expand Down
2 changes: 1 addition & 1 deletion cmd/blocksconvert/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM alpine:3.13
FROM alpine:3.14
RUN apk add --no-cache ca-certificates
COPY blocksconvert /
ENTRYPOINT ["/blocksconvert"]
Expand Down
4 changes: 2 additions & 2 deletions cmd/blocksconvert/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,14 @@ import (
"os"
"strings"

"github.com/go-kit/kit/log/level"
"github.com/go-kit/log/level"
"github.com/grafana/dskit/services"
"github.com/prometheus/client_golang/prometheus"
"github.com/weaveworks/common/server"
"github.com/weaveworks/common/signals"

"github.com/cortexproject/cortex/pkg/cortex"
util_log "github.com/cortexproject/cortex/pkg/util/log"
"github.com/cortexproject/cortex/pkg/util/services"
"github.com/cortexproject/cortex/tools/blocksconvert"
"github.com/cortexproject/cortex/tools/blocksconvert/builder"
"github.com/cortexproject/cortex/tools/blocksconvert/cleaner"
Expand Down
2 changes: 1 addition & 1 deletion cmd/cortex/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM alpine:3.13
FROM alpine:3.14
RUN apk add --no-cache ca-certificates
COPY migrations /migrations/
COPY cortex /bin/cortex
Expand Down
4 changes: 2 additions & 2 deletions cmd/cortex/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,8 @@ import (
"strings"
"time"

"github.com/go-kit/kit/log/level"
"github.com/go-kit/log/level"
"github.com/grafana/dskit/flagext"
"github.com/pkg/errors"
"github.com/prometheus/client_golang/prometheus"
"github.com/prometheus/common/version"
Expand All @@ -21,7 +22,6 @@ import (

"github.com/cortexproject/cortex/pkg/cortex"
"github.com/cortexproject/cortex/pkg/util"
"github.com/cortexproject/cortex/pkg/util/flagext"
util_log "github.com/cortexproject/cortex/pkg/util/log"
)

Expand Down
2 changes: 1 addition & 1 deletion cmd/query-tee/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM alpine:3.13
FROM alpine:3.14
RUN apk add --no-cache ca-certificates
COPY query-tee /
ENTRYPOINT ["/query-tee"]
Expand Down
5 changes: 3 additions & 2 deletions cmd/query-tee/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,9 @@ import (
"flag"
"os"

"github.com/go-kit/kit/log/level"
"github.com/go-kit/log/level"
"github.com/prometheus/client_golang/prometheus"
"github.com/prometheus/client_golang/prometheus/collectors"
"github.com/weaveworks/common/logging"
"github.com/weaveworks/common/server"

Expand Down Expand Up @@ -35,7 +36,7 @@ func main() {

// Run the instrumentation server.
registry := prometheus.NewRegistry()
registry.MustRegister(prometheus.NewGoCollector())
registry.MustRegister(collectors.NewGoCollector())

i := querytee.NewInstrumentationServer(cfg.ServerMetricsPort, registry)
if err := i.Start(); err != nil {
Expand Down
2 changes: 1 addition & 1 deletion cmd/test-exporter/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM alpine:3.13
FROM alpine:3.14
RUN apk add --no-cache ca-certificates
COPY test-exporter /
ENTRYPOINT ["/test-exporter"]
Expand Down
4 changes: 2 additions & 2 deletions cmd/test-exporter/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,13 @@ import (
"math"
"time"

"github.com/go-kit/kit/log/level"
"github.com/go-kit/log/level"
"github.com/grafana/dskit/flagext"
"github.com/prometheus/client_golang/prometheus"
"github.com/weaveworks/common/server"
"github.com/weaveworks/common/tracing"

"github.com/cortexproject/cortex/pkg/testexporter/correctness"
"github.com/cortexproject/cortex/pkg/util/flagext"
"github.com/cortexproject/cortex/pkg/util/log"
)

Expand Down
2 changes: 1 addition & 1 deletion cmd/thanosconvert/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM alpine:3.13
FROM alpine:3.14
RUN apk add --no-cache ca-certificates
COPY thanosconvert /
ENTRYPOINT ["/thanosconvert"]
Expand Down
4 changes: 2 additions & 2 deletions development/tsdb-blocks-storage-s3-gossip/dev.dockerfile
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
FROM golang:1.16
FROM golang:1.17
ENV CGO_ENABLED=0
RUN go get github.com/go-delve/delve/cmd/dlv

FROM alpine:3.13
FROM alpine:3.14

RUN mkdir /cortex
WORKDIR /cortex
Expand Down
Loading