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

limits: Add generic layer of limits (e.g interceptors) for StoreAPI. #2527

Closed
bwplotka opened this issue Apr 27, 2020 · 11 comments
Closed

limits: Add generic layer of limits (e.g interceptors) for StoreAPI. #2527

bwplotka opened this issue Apr 27, 2020 · 11 comments

Comments

@bwplotka
Copy link
Member

We can leverage gRPC interceptors to ensure configuring limits per chunks, series etc of StoreAPI

Open questions:

  • partial result or total cancel?
@bwplotka
Copy link
Member Author

Good point from @brancz is that interceptor limit might be not enough. We can deduce how much chunks etc we will have without fetching them... so more on query planning side already.

@yashrsharma44
Copy link
Contributor

yashrsharma44 commented Apr 30, 2020

I was working on a proposal for the above issue, and I had some queries regarding it. It would be really helpful for me to get some more clarity about the problem that we are trying to solve 😅

We can deduce how much chunks etc we will have without fetching them

Are we looking something like pre-flight checks for this?

so more on query planning side already.

Is this more like Query Logging but for Thanos?
@bwplotka

@VineethReddy02
Copy link

VineethReddy02 commented May 1, 2020

@bwplotka
I see the existing configuration in querier to limit the large queries and responses are

1. enablePartialResponse bool,
2. queryTimeout time.Duration,
3. storeResponseTimeout time.Duration,

Can I know what these configurations are missing to achieve in limiting the large queries and responses?

I have couple of questions here

  1. So just to confirm will these interceptors be part of store API between querier & store, querier & sidecar right? as the query result is the aggregation of both.
  2. And on what basis will grpc interceptors limit blocks? Based on the query range or based on the size of the block using metadata from the object store?

This can help me to understand what additional configurations need to be added and how interceptor logic needs to be implemented.

@stale
Copy link

stale bot commented May 31, 2020

Hello 👋 Looks like there was no activity on this issue for last 30 days.
Do you mind updating us on the status? Is this still reproducible or needed? If yes, just comment on this PR or push a commit. Thanks! 🤗
If there will be no activity for next week, this issue will be closed (we can always reopen an issue if we need!). Alternatively, use remind command if you wish to be reminded at some point in future.

@stale stale bot added the stale label May 31, 2020
@bwplotka
Copy link
Member Author

bwplotka commented Jun 1, 2020 via email

@stale stale bot removed the stale label Jun 1, 2020
@stale
Copy link

stale bot commented Jul 1, 2020

Hello 👋 Looks like there was no activity on this issue for last 30 days.
Do you mind updating us on the status? Is this still reproducible or needed? If yes, just comment on this PR or push a commit. Thanks! 🤗
If there will be no activity for next week, this issue will be closed (we can always reopen an issue if we need!). Alternatively, use remind command if you wish to be reminded at some point in future.

@stale stale bot added the stale label Jul 1, 2020
@stale
Copy link

stale bot commented Jul 8, 2020

Closing for now as promised, let us know if you need this to be reopened! 🤗

@stale stale bot closed this as completed Jul 8, 2020
@bwplotka
Copy link
Member Author

Still not done.

@stale
Copy link

stale bot commented Nov 10, 2020

Hello 👋 Looks like there was no activity on this issue for the last two months.
Do you mind updating us on the status? Is this still reproducible or needed? If yes, just comment on this PR or push a commit. Thanks! 🤗
If there will be no activity in the next two weeks, this issue will be closed (we can always reopen an issue if we need!). Alternatively, use remind command if you wish to be reminded at some point in future.

@stale stale bot added the stale label Nov 10, 2020
@stale
Copy link

stale bot commented Nov 24, 2020

Closing for now as promised, let us know if you need this to be reopened! 🤗

@stale stale bot closed this as completed Nov 24, 2020
@bwplotka
Copy link
Member Author

Proven to be hard. Let's start with "non-generic" ones first (:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants