All Implemented Interfaces:
NamedWriteable, Writeable, Resolvable, PromqlPlan

public final class VectorBinarySet extends VectorBinaryOperator
  • Constructor Details

  • Method Details

    • op

      public VectorBinarySet.SetOp op()
    • output

      public List<Attribute> output()
      A set operator combines series from both operands, so its output schema is the union of both label sets (deduplicated by name, left operand first). This differs from arithmetic/comparison operators, which require matching label sets. Only or (UNION) is currently translated; and/unless are rejected by the verifier before reaching translation.
      Specified by:
      output in interface PromqlPlan
      Overrides:
      output in class VectorBinaryOperator
    • unionOutputByName

      public static List<Attribute> unionOutputByName(List<? extends LogicalPlan> plans)
      Computes the combined output of the given plans as the union of their output attributes, deduplicated by name with the first occurrence winning. This is the output schema of a set operator (see output()) and is also used to compute the combined output of a flattened top-level or chain during translation.
    • replaceChildren

      public VectorBinarySet replaceChildren(LogicalPlan newLeft, LogicalPlan newRight)
      Specified by:
      replaceChildren in class VectorBinaryOperator
    • info

      protected NodeInfo<VectorBinarySet> info()
      Description copied from class: Node
      Normally, you want to use one of the static create methods to implement this.

      For QueryPlans, it is very important that the properties contain all of the expressions and references relevant to this node, and that all the properties are used in the provided constructor; otherwise query plan transformations like QueryPlan#transformExpressionsOnly(Function) will not have an effect.

      Specified by:
      info in class Node<LogicalPlan>