PushDownUtils¶
pruneColumns¶
pruneColumns(
scanBuilder: ScanBuilder,
relation: DataSourceV2Relation,
projects: Seq[NamedExpression],
filters: Seq[Expression]): (Scan, Seq[AttributeReference])
pruneColumns
...FIXME
pruneColumns
is used when:
- GroupBasedRowLevelOperationScanPlanning logical optimization is executed (to transform ReplaceData logical operators over DataSourceV2Relations)
- V2ScanRelationPushDown logical optimization is executed (to pruneColumns of
ScanBuilderHolder
s)
pushFilters¶
pushFilters(
scanBuilder: ScanBuilder,
filters: Seq[Expression]): (Either[Seq[sources.Filter], Seq[Predicate]], Seq[Expression])
pushFilters
...FIXME
pushFilters
is used when:
- GroupBasedRowLevelOperationScanPlanning logical optimization is executed (to pushFilters)
- V2ScanRelationPushDown logical optimization is executed (to pushDownFilters to
ScanBuilderHolder
s)