Class ImplicitColumnManager

java.lang.Object
org.apache.drill.exec.physical.impl.scan.file.ImplicitColumnManager
All Implemented Interfaces:
MetadataManager, ReaderLevelProjection.ReaderProjectionResolver, VectorSource

public class ImplicitColumnManager extends Object implements MetadataManager, ReaderLevelProjection.ReaderProjectionResolver, VectorSource
Manages the insertion of file metadata (AKA "implicit" and partition) columns. Parses the file metadata columns from the projection list. Creates and loads the vectors that hold the data. If running in legacy mode, inserts partition columns when the query contains a wildcard. Supports renaming the columns via session options.

The lifecycle is that the manager is given the set of files for this scan operator so it can determine the partition depth. (Note that different scans may not agree on the depth. This is a known issue with Drill's implementation.)

Then, at the start of the scan, all projection columns are parsed. This class picks out the file metadata columns.

On each file (on each reader), the columns are "resolved." Here, that means that the columns are filled in with actual values based on the present file.

This is the successor to ColumnExplorer.