Skip to content

Conversation

codesome
Copy link
Contributor

@codesome codesome commented May 19, 2020

Signed-off-by: Ganesh Vernekar [email protected]

What this PR does:

Upgrade Thanos to the commit 806479182a6b which also upgrades Prometheus to cd73b3d33e064bbd846fc7a26dc8c313d46af382 which is between 2.17.x and 2.18.x.

Note: go.etcd.io/etcd was upgraded to @master without which it causes issues with grpc upgrade.

Which issue(s) this PR fixes:
Fixes #

Checklist

  • Tests updated
  • Documentation added
  • CHANGELOG.md updated - the order of entries should be [CHANGE], [FEATURE], [ENHANCEMENT], [BUGFIX]

@codesome codesome force-pushed the thanos-master branch 2 times, most recently from 3f35bc3 to 955cbbe Compare May 19, 2020 14:22
@codesome codesome marked this pull request as ready for review May 19, 2020 15:57
@codesome codesome force-pushed the thanos-master branch 3 times, most recently from d9460af to e5c6986 Compare May 20, 2020 07:03
@codesome
Copy link
Contributor Author

Tests are passing now and it is ready for review.

One of the changes to note is that the flag promql.lookback-delta was being initialized in both querier and ruler to a global LookbackDelta in promql package. Now that variable is a part of promql Engine options and not longer a global. Since Ruler takes the engine created by querier in initRuler, LookbackDelta is a part of querier config now with the same flag, and Ruler takes the engine created by Querier as before.

@codesome
Copy link
Contributor Author

Does this require a changelog entry? There are some enhancements that come Prometheus upgrade, but no specific cortex changes.

@codesome
Copy link
Contributor Author

Added changelog entry for the upgrade and also an addition of config file option as described above.

Signed-off-by: Ganesh Vernekar <[email protected]>
Copy link
Contributor

@pracucci pracucci left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good job Ganesh! I think this PR is in a pretty good state, but I've left few comments that I would like you to address/discuss before moving forward.

I've also checked the updated dependencies, and these LGTM:

  • github.com/aws/aws-sdk-go from v1.27.0 to v1.29.18: checked the CHANGELOG, nothing affecting us
  • github.com/hashicorp/consul/api from v1.3.0 to v1.4.0: checked the CHANGELOG, nothing affecting us
  • github.com/prometheus/client_golang from v1.5.0 to v1.5.1: fixed "superfluous WriteHeader call" log
  • go.etcd.io/bbolt from v1.3.3 to v1.3.4: checked the releases page, minor fixes not affecting us
  • go.uber.org/atomic from v1.5.1 to v1.6.0: just dropped a dependency
  • google.golang.org/grpc from v1.26.0 to v1.27.1: checked the releases page, no change that should directly affect us
  • Thanos: minor changes, not relevant to us

I'm a bit more concerned about the etcd upgrade. Could you check if there's anything we should be aware of, please?

@codesome codesome force-pushed the thanos-master branch 2 times, most recently from aafb5b3 to fb84354 Compare May 21, 2020 14:21
Signed-off-by: Ganesh Vernekar <[email protected]>
Ganesh Vernekar added 2 commits May 22, 2020 11:41
@codesome
Copy link
Contributor Author

etcd is now upgraded to v3.4.9 (it was at v3.4.3 before). go.mod says v0.5.0-alpha.5.0.20200520232829-54ba9589114f, but 54ba9589114f is the last commit in release-3.4 branch (at the time of this upgrade) which is at v3.4.9.

Copy link
Contributor

@pstibrany pstibrany left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changes in Cortex and vendored Thanos look good. I haven't checked all updated dependencies though.

Signed-off-by: Ganesh Vernekar <[email protected]>
Copy link
Contributor

@pracucci pracucci left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All good, but I've a doubt the Select(false in the ingester v2.

defer q.Close()

ss, err := q.Select(matchers...)
ss, _, err := q.Select(false, nil, matchers...)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@pstibrany doesn't the querier expects sorted series?

Copy link
Contributor

@pstibrany pstibrany May 22, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is correct. Querier will need to merge series from different ingesters anyway (based on fingerprint), and will then sort them.

Copy link
Contributor

@pstibrany pstibrany May 22, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If it was coming sorted from ingester, querier would have easier time merging, but on the other hand, it would use more CPU time in ingesters as well. We want to disturb ingesters as little as possible on read path.

Ganesh Vernekar and others added 2 commits May 22, 2020 14:56
Signed-off-by: Ganesh Vernekar <[email protected]>
Copy link
Contributor

@pracucci pracucci left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! Thanks for the hard work, amazing job! 🎉

@pracucci pracucci merged commit b40c117 into cortexproject:master May 22, 2020
pracucci added a commit to pracucci/cortex that referenced this pull request Jun 9, 2020
… by a buffer incorrectly reused while iterating samples.

Signed-off-by: Marco Pracucci <[email protected]>
pracucci added a commit that referenced this pull request Jun 9, 2020
* Fixed incorrect query results introduced in #2604 caused by a buffer incorrectly reused while iterating samples.

Signed-off-by: Marco Pracucci <[email protected]>

* Updated prometheus

Signed-off-by: Marco Pracucci <[email protected]>

* Update pkg/querier/blocks_store_queryable_test.go

Signed-off-by: Marco Pracucci <[email protected]>

Co-authored-by: Peter Štibraný <[email protected]>

* Update pkg/querier/blocks_store_queryable_test.go

Signed-off-by: Marco Pracucci <[email protected]>

Co-authored-by: Peter Štibraný <[email protected]>

* Fixed linter

Signed-off-by: Marco Pracucci <[email protected]>

* Updated CHANGELOG entry

Signed-off-by: Marco Pracucci <[email protected]>

Co-authored-by: Peter Štibraný <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants