Skip to content

Read Path Flow

Harish Butani edited this page Jan 6, 2022 · 4 revisions

This document contains the structures and functions for read plans.

Read Path Planning flow

read path planning

Read Execution:

read execution

  • responsible for setting up an OraScan
  • for an OracleTable with optional filter pushdowns and requiredSchema it sets up a OraPlan, that is passed to the OraScan.
    • it is not required for the OraPlan to apply all filters, as these are applied on top of the DataSourceV2ScanRelation Ensuring these can be pushed to Oracle will be done in the Oracle pushdown rules.
  • acts like a FileScan, so the PruneFileSourcePartitions rule can apply on this scan, and partition and data filter expressions can be pushed to it.
  • but implementation behavior is completely overridden.
  • it has an empty fileIndex
  • it reports partitionFilters and dataFilters to be empty. The filters pushed into the OraPlan are reapplied on top of the DataSourceV2ScanRelation
  • For physical planning:
  • stats estimation: try to use a table's stats otherwise estimate as unknown