Class BaseFileScanTask

    • Constructor Detail

      • BaseFileScanTask

        public BaseFileScanTask​(DataFile file,
                                DeleteFile[] deletes,
                                java.lang.String schemaString,
                                java.lang.String specString,
                                ResidualEvaluator residuals)
    • Method Detail

      • start

        public long start()
        Description copied from interface: ContentScanTask
        The starting position of this scan range in the file.
        Specified by:
        start in interface ContentScanTask<ThisT extends ContentScanTask<F>>
        Returns:
        the start position of this scan range
      • residual

        public Expression residual()
        Description copied from interface: ContentScanTask
        Returns the residual expression that should be applied to rows in this file scan.

        The residual expression for a file is a filter expression created by partially evaluating the scan's filter using the file's partition data.

        Specified by:
        residual in interface ContentScanTask<ThisT extends ContentScanTask<F>>
        Returns:
        a residual expression to apply to rows from this scan
      • split

        public java.lang.Iterable<ThisT> split​(long targetSplitSize)
        Description copied from interface: SplittableScanTask
        Attempts to split this scan task into several smaller scan tasks, each close to splitSize size.

        Note the target split size is just guidance and the actual split size may be either smaller or larger. File formats like Parquet may leverage the row group offset information while splitting tasks.

        Specified by:
        split in interface SplittableScanTask<ThisT extends ContentScanTask<F>>
        Parameters:
        targetSplitSize - the target size of each new scan task in bytes
        Returns:
        an Iterable of smaller tasks
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object