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

Feat/blocks grpc #1845

Merged
merged 19 commits into from
Mar 6, 2020
Merged

Feat/blocks grpc #1845

merged 19 commits into from
Mar 6, 2020

Conversation

thorfour
Copy link
Contributor

@thorfour thorfour commented Nov 20, 2019

What this PR does: Implements gRPC streaming from TSDB based ingesters.

Which issue(s) this PR fixes:
Fixes #1824

Checklist

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

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.

Thanks @thorfour for the PR! I left a couple of high-level comments to better understand the rationale behind the design decisions. Without looking into it too much, I was expecting to reuse QueryStream() and I would like to better understand if we really need to duplicate part of the logic introducing QueryTSDBStream and a different response type.

pkg/querier/querier.go Outdated Show resolved Hide resolved
pkg/ingester/client/cortex.proto Outdated Show resolved Hide resolved
@thorfour thorfour force-pushed the feat/blocks-grpc branch 3 times, most recently from 009759a to 6e6cd17 Compare December 11, 2019 21:38
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.

This PR introduces an important piece to the TSDB puzzle. I'm not happy with all design decisions, but can understand why they were made. Overall, it looks good, but I've left some comments to consider before approving.

pkg/querier/querier.go Outdated Show resolved Hide resolved
pkg/querier/querier.go Outdated Show resolved Hide resolved
pkg/distributor/query.go Outdated Show resolved Hide resolved
pkg/ingester/client/cortex.proto Outdated Show resolved Hide resolved
@thorfour thorfour force-pushed the feat/blocks-grpc branch 11 times, most recently from 234bc15 to e0f2e0a Compare January 23, 2020 18:47
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.

LGTM, thanks for your changes!

Please don't forget to update CHANGELOG as well.

pkg/ingester/client/cortex.proto Outdated Show resolved Hide resolved
@thorfour thorfour force-pushed the feat/blocks-grpc branch 2 times, most recently from 9ba6a2e to feb5963 Compare January 24, 2020 14:39
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.

Thanks @thorfour and @pstibrany for reworking the initial design. I think the current design is better than the initial one, but unfortunately doesn't look working (at least, querying ingesters always result into an empty result to me... see related comment in ingester_streaming_queryable.go).

pkg/ingester/ingester_v2.go Outdated Show resolved Hide resolved
pkg/ingester/ingester_v2.go Outdated Show resolved Hide resolved
pkg/ingester/ingester_v2.go Outdated Show resolved Hide resolved
pkg/ingester/ingester_v2.go Outdated Show resolved Hide resolved
pkg/ingester/ingester_v2.go Outdated Show resolved Hide resolved
pkg/querier/tsdb_ingester_streaming_queryable.go Outdated Show resolved Hide resolved
pkg/querier/tsdb_ingester_streaming_queryable.go Outdated Show resolved Hide resolved
pkg/querier/tsdb_ingester_streaming_queryable.go Outdated Show resolved Hide resolved
pkg/querier/tsdb_ingester_streaming_queryable.go Outdated Show resolved Hide resolved
pkg/querier/ingester_streaming_queryable.go Outdated Show resolved Hide resolved
@thorfour thorfour force-pushed the feat/blocks-grpc branch 3 times, most recently from 2d91ab4 to 93d95a2 Compare January 27, 2020 17:45
Thor and others added 9 commits March 5, 2020 15:07
Signed-off-by: Thor <thansen@digitalocean.com>
Signed-off-by: Thor <thansen@digitalocean.com>
Signed-off-by: Thor <thansen@digitalocean.com>
Signed-off-by: Thor <thansen@digitalocean.com>
Signed-off-by: Thor <thansen@digitalocean.com>
Signed-off-by: Thor <thansen@digitalocean.com>
Signed-off-by: Thor <thansen@digitalocean.com>
Signed-off-by: Thor <thansen@digitalocean.com>
Signed-off-by: Marco Pracucci <marco@pracucci.com>
@pracucci
Copy link
Contributor

pracucci commented Mar 5, 2020

I've rebased master

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.

Thanks @thorfour for your work! I've pushed few changes to fix a couple of issues. I'm a bit concerned about the samples sorting performances, but let's move on and hopefully we'll get rid of this once we'll able to iterate chunks on TSDB 🤞

@thorfour
Copy link
Contributor Author

thorfour commented Mar 5, 2020

Sounds good to me

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.

Still looks good.

pkg/querier/timeseries_series_set.go Outdated Show resolved Hide resolved
pkg/querier/timeseries_series_set.go Outdated Show resolved Hide resolved
thorfour and others added 10 commits March 5, 2020 21:26
Co-Authored-By: Marco Pracucci <marco@pracucci.com>
Signed-off-by: Thor <8681572+thorfour@users.noreply.github.com>
Signed-off-by: Thor <thansen@digitalocean.com>
Signed-off-by: Thor <thansen@digitalocean.com>
Signed-off-by: Thor <thansen@digitalocean.com>
Signed-off-by: Thor <thansen@digitalocean.com>
Signed-off-by: Marco Pracucci <marco@pracucci.com>
Signed-off-by: Marco Pracucci <marco@pracucci.com>
Signed-off-by: Marco Pracucci <marco@pracucci.com>
Signed-off-by: Marco Pracucci <marco@pracucci.com>
Signed-off-by: Thor <thansen@digitalocean.com>
@pracucci pracucci merged commit 0de497a into cortexproject:master Mar 6, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Ingester query streaming needs implementing for TSDB
4 participants