mirror of
https://github.com/prometheus/prometheus.git
synced 2024-11-09 23:24:05 -08:00
Explain, vector-to-vector: Do not compute results for set operators
Set operators are not displayed:
31ce9dacf4/web/ui/mantine-ui/src/pages/query/ExplainViews/BinaryExpr/VectorVector.tsx (L364)
Therefore, do not compute results for them.
Fixes #14889
Signed-off-by: Julien <roidelapluie@o11y.eu>
This commit is contained in:
parent
31ce9dacf4
commit
ac01dc9035
|
@ -8,7 +8,7 @@ import {
|
|||
vectorMatchCardinality,
|
||||
VectorMatching,
|
||||
} from "./ast";
|
||||
import { isComparisonOperator } from "./utils";
|
||||
import { isComparisonOperator, isSetOperator } from "./utils";
|
||||
|
||||
// We use a special (otherwise invalid) sample value to indicate that
|
||||
// a sample has been filtered away by a comparison operator.
|
||||
|
@ -340,6 +340,11 @@ export const computeVectorVectorBinOp = (
|
|||
|
||||
// Annotate the match groups with errors (if any) and populate the results.
|
||||
Object.values(groups).forEach((mg) => {
|
||||
// Do not populate results for set operators.
|
||||
if (isSetOperator(op)) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (matching.card === vectorMatchCardinality.oneToOne) {
|
||||
if (mg.lhs.length > 1 && mg.rhs.length > 1) {
|
||||
mg.error = { type: MatchErrorType.multipleMatchesOnBothSides };
|
||||
|
|
Loading…
Reference in a new issue