Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What this PR does / why we need it:
This PR ensure that the parallelism in the frontend is correctly bound per query. Currently we only do that at each level in each middleware which means they don't know each other. This translate into explosion of parallelism when we split by time and by shard.
Example:
a 1h query splitted by 15m and sharded by 16 would use 64 parallelism even though the max parallelism per query is 16.
I believe this means that we will need to increase parallelism now that we really do listen to the
max_query_parallelism
.I suggest we default to 64, but that's for another review.
Special notes for your reviewer:
This will be backported to Cortex, but to avoid the review burden I want to first try it in Loki. I don't think cortex suffers from this since it doesn't have yet sharding.
cc @pracucci @pstibrany @gouthamve
Checklist