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
ScanBuilderHolders)
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
ScanBuilderHolders)