Interface IndexGroupScan

All Superinterfaces:
FragmentLeaf, GraphValue<PhysicalOperator>, GroupScan, HasAffinity, Iterable<PhysicalOperator>, Leaf, PhysicalOperator, Scan

public interface IndexGroupScan extends GroupScan
An IndexGroupScan operator represents the scan associated with an Index.
  • Method Details

    • getRowKeyOrdinal

      int getRowKeyOrdinal()
      Get the column ordinal of the rowkey column from the output schema of the IndexGroupScan
      Returns:
      column ordinal number
    • setRowCount

      void setRowCount(org.apache.calcite.rex.RexNode condition, double count, double capRowCount)
      Set the artificial row count after applying the RexNode condition Mainly used for debugging
      Parameters:
      condition - filter to apply
      count - right index row count
      capRowCount - row count limit
    • getRowCount

      double getRowCount(org.apache.calcite.rex.RexNode condition, org.apache.calcite.rel.RelNode scanRel)
      Get the row count after applying the RexNode condition
      Parameters:
      condition - filter to apply
      scanRel - the current scan rel
      Returns:
      row count post filtering
    • setStatistics

      void setStatistics(Statistics statistics)
      Set the statistics for IndexGroupScan
      Parameters:
      statistics - which is necessary for index planning
    • setColumns

      void setColumns(List<SchemaPath> columns)
    • getColumns

      List<SchemaPath> getColumns()
      Description copied from interface: GroupScan
      Returns a list of columns scanned by this group scan
      Specified by:
      getColumns in interface GroupScan
    • setParallelizationWidth

      void setParallelizationWidth(int width)