Interface SnapshotUpdate<ThisT>

Type Parameters:
ThisT - the child Java API class, returned by method chaining.
All Superinterfaces:
PendingUpdate<Snapshot>
All Known Subinterfaces:
AppendFiles, DeleteFiles, OverwriteFiles, ReplacePartitions, RewriteFiles, RewriteManifests, RowDelta
All Known Implementing Classes:
BaseOverwriteFiles, BaseReplacePartitions, BaseRewriteManifests, BaseRowDelta, StreamingDelete

public interface SnapshotUpdate<ThisT> extends PendingUpdate<Snapshot>
API for table changes that produce snapshots. This interface contains common methods for all updates that create a new table Snapshot.
  • Method Details

    • set

      ThisT set(String property, String value)
      Set a summary property in the snapshot produced by this update.
      Parameters:
      property - a String property name
      value - a String property value
      Returns:
      this for method chaining
    • deleteWith

      ThisT deleteWith(Consumer<String> deleteFunc)
      Set a callback to delete files instead of the table's default.
      Parameters:
      deleteFunc - a String consumer used to delete locations.
      Returns:
      this for method chaining
    • stageOnly

      ThisT stageOnly()
      Called to stage a snapshot in table metadata, but not update the current snapshot id.
      Returns:
      this for method chaining
    • scanManifestsWith

      ThisT scanManifestsWith(ExecutorService executorService)
      Use a particular executor to scan manifests. The default worker pool will be used by default.
      Parameters:
      executorService - the provided executor
      Returns:
      this for method chaining
    • writeManifestsWith

      default ThisT writeManifestsWith(ExecutorService executorService, int parallelism)
      Use a particular executor to write manifests during commit with the specified parallelism. The default worker pool will be used by default.

      The parallelism parameter controls how many manifest writers are used, which informs the number of manifest files produced. The executor provides the threads for parallel execution.

      Parameters:
      executorService - the provided executor
      parallelism - the number of parallel manifest writers to use
      Returns:
      this for method chaining
    • toBranch

      default ThisT toBranch(String branch)
      Perform operations on a particular branch
      Parameters:
      branch - which is name of SnapshotRef of type branch.
      Returns:
      this for method chaining
    • validateWith

      default ThisT validateWith(SnapshotAncestryValidator validator)