c

org.apache.spark.sql.delta.files

CdcAddFileIndex

class CdcAddFileIndex extends TahoeBatchFileIndex

A TahoeFileIndex for scanning a sequence of added files as CDC. Similar to TahoeBatchFileIndex, with a bit of special handling to attach the log version and CDC type on a per-file basis.

Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. CdcAddFileIndex
  2. TahoeBatchFileIndex
  3. TahoeFileIndexWithSnapshotDescriptor
  4. TahoeFileIndex
  5. SnapshotDescriptor
  6. SupportsRowIndexFilters
  7. FileIndex
  8. AnyRef
  9. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new CdcAddFileIndex(spark: SparkSession, filesByVersion: Seq[CDCDataSpec[AddFile]], deltaLog: DeltaLog, path: Path, snapshot: SnapshotDescriptor, rowIndexFilters: Option[Map[String, RowIndexFilterType]] = None)

    spark

    The Spark session.

    filesByVersion

    Grouped FileActions, one per table version.

    deltaLog

    The delta log instance.

    path

    The table's data path.

    snapshot

    The snapshot where we read CDC from.

    rowIndexFilters

    Map from URI-encoded file path to a row index filter type. Note: Please also consider other CDC-related file indexes like TahoeChangeFileIndex and TahoeRemoveFileIndex when modifying this file index.

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def absolutePath(child: String): Path
    Definition Classes
    TahoeFileIndex
  5. val actionType: String
    Definition Classes
    TahoeBatchFileIndex
  6. val addFiles: Seq[AddFile]
    Definition Classes
    TahoeBatchFileIndex
  7. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  8. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native() @IntrinsicCandidate()
  9. val deltaLog: DeltaLog
    Definition Classes
    TahoeFileIndex → SnapshotDescriptor
  10. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  11. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  12. def fileStatusWithMetadataFromAddFile(addFile: AddFile): FileStatusWithMetadata

    Generates a FileStatusWithMetadata using data extracted from a given AddFile.

    Generates a FileStatusWithMetadata using data extracted from a given AddFile.

    Definition Classes
    TahoeFileIndex
  13. def getBasePath(filePath: Path): Option[Path]

    Returns the path of the base directory of the given file path (i.e.

    Returns the path of the base directory of the given file path (i.e. its parent directory with all the partition directories stripped off).

    Definition Classes
    TahoeFileIndex
  14. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  15. def getPartitionValuesRow(partitionValues: Map[String, String]): GenericInternalRow
    Attributes
    protected
    Definition Classes
    TahoeFileIndex
  16. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  17. def inputFiles: Array[String]
    Definition Classes
    CdcAddFileIndex → TahoeBatchFileIndex → FileIndex
  18. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  19. def listFiles(partitionFilters: Seq[Expression], dataFilters: Seq[Expression]): Seq[PartitionDirectory]
    Definition Classes
    TahoeFileIndex → FileIndex
  20. def listPartitionsAsAddFiles(partitionFilters: Seq[Expression], dataFilters: Seq[Expression]): (Seq[(InternalRow, Seq[AddFile])], Seq[AddFile])

    Returns (i) tuples of partition directories to their respective AddFile actions and (ii) a collection of matched AddFiles.

    Returns (i) tuples of partition directories to their respective AddFile actions and (ii) a collection of matched AddFiles. The matched AddFiles are those that meet the criteria set by the partition and data filters. Essentially, this is a collection of all the files associated with the identified partitions.

    Definition Classes
    TahoeFileIndex
  21. def makePartitionDirectories(partitionValuesToFiles: Seq[(InternalRow, Seq[AddFile])]): Seq[PartitionDirectory]
    Definition Classes
    TahoeFileIndex
  22. def matchingFiles(partitionFilters: Seq[Expression], dataFilters: Seq[Expression]): Seq[AddFile]

    Returns all matching/valid files by the given partitionFilters and dataFilters.

    Returns all matching/valid files by the given partitionFilters and dataFilters. Implementations may avoid evaluating data filters when doing so would be expensive, but *must* evaluate the partition filters; wrong results will be produced if AddFile entries which don't match the partition filters are returned.

    Definition Classes
    CdcAddFileIndex → TahoeBatchFileIndex → TahoeFileIndex
  23. def metadata: Metadata
  24. def metadataOpsTimeNs: Option[Long]
    Definition Classes
    FileIndex
  25. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  26. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  27. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  28. def numOfFilesIfKnown: Option[Long]
    Attributes
    protected[delta]
    Definition Classes
    TahoeFileIndexWithSnapshotDescriptor → SnapshotDescriptor
  29. val partitionFiltersGenerated: Boolean
    Definition Classes
    TahoeBatchFileIndex
  30. val partitionSchema: StructType
    Definition Classes
    CdcAddFileIndex → TahoeFileIndex → FileIndex
  31. val path: Path
    Definition Classes
    TahoeFileIndex
  32. def protocol: Protocol
  33. def refresh(): Unit
    Definition Classes
    TahoeBatchFileIndex → FileIndex
  34. def rootPaths: Seq[Path]
    Definition Classes
    TahoeFileIndex → FileIndex
  35. val rowIndexFilters: Option[Map[String, RowIndexFilterType]]

    If we know a-priori which exact rows we want to read (e.g., from a previous scan) find the per-file filter here, which must be passed down to the appropriate reader.

    If we know a-priori which exact rows we want to read (e.g., from a previous scan) find the per-file filter here, which must be passed down to the appropriate reader.

    returns

    a mapping from file names to the row index filter for that file.

    Definition Classes
    CdcAddFileIndex → SupportsRowIndexFilters
  36. def schema: StructType
    Definition Classes
    SnapshotDescriptor
  37. lazy val sizeInBytes: Long
    Definition Classes
    TahoeBatchFileIndex → FileIndex
  38. def sizeInBytesIfKnown: Option[Long]
    Attributes
    protected[delta]
    Definition Classes
    TahoeFileIndexWithSnapshotDescriptor → SnapshotDescriptor
  39. val snapshot: SnapshotDescriptor
    Definition Classes
    TahoeBatchFileIndex
  40. val spark: SparkSession
    Definition Classes
    TahoeFileIndex
  41. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  42. def toString(): String
    Definition Classes
    TahoeFileIndex → FileIndex → AnyRef → Any
  43. def version: Long
  44. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  45. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  46. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] ) @Deprecated
    Deprecated

Inherited from TahoeBatchFileIndex

Inherited from TahoeFileIndex

Inherited from SnapshotDescriptor

Inherited from SupportsRowIndexFilters

Inherited from FileIndex

Inherited from AnyRef

Inherited from Any

Ungrouped