-
Notifications
You must be signed in to change notification settings - Fork 543
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Streaming PromQL engine: add support for range vector selectors as th…
…e top-level expression (#8023) * Introduce RangeVectorOperator interface and split RangeVectorSelectorWithTransformation into two types. * Add more explanation for RangeVectorStepData. * Improve performance of rate() calculations by exposing range vector operator range rather than calculating it at each time step. * Add changelog entry * Rename RingBuffer.Points() to HeadAndTail(), and add CopyPoints() method. * Add support for range vector selectors as the top-level expression. * Remove outdated comment * Clarify more comments. * Simplify test setup * Ensure matrix series are always sorted by labels * Rename `Next` to `NextSeries` * Document whether RangeStart and RangeEnd are inclusive or exclusive. * Document when Selector.Timestamp is set. * Rename `NextStep` to `NextStepSamples` * Rename `RingBuffer.HeadAndTail` to `RingBuffer.UnsafePoints` * Remove unnecessary checks in `Close` methods * Fix issue where range vector selectors incorrectly return points from outside a step's range, or `rate` uses points from outside a step's range * Add tests to verify behaviour when a series contains a stale marker. * Address PR feedback: name return parameters Co-authored-by: Marco Pracucci <marco@pracucci.com> * Address PR feedback: query metric that exists but has no samples in range --------- Co-authored-by: Marco Pracucci <marco@pracucci.com>
- Loading branch information
1 parent
1126f0c
commit b03ecce
Showing
16 changed files
with
729 additions
and
305 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.