Packages

case class ReplaceTable(metadata: Metadata, isManaged: Boolean, orCreate: Boolean, asSelect: Boolean = false, userMetadata: Option[String] = None, clusterBy: Option[Seq[String]] = None) extends Operation with Product with Serializable

Recorded when the table is replaced.

Linear Supertypes
Serializable, Serializable, Product, Equals, Operation, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ReplaceTable
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. Operation
  7. AnyRef
  8. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new ReplaceTable(metadata: Metadata, isManaged: Boolean, orCreate: Boolean, asSelect: Boolean = false, userMetadata: Option[String] = None, clusterBy: Option[Seq[String]] = None)

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. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. val asSelect: Boolean
  6. def changesData: Boolean

    Whether this operation changes data

    Whether this operation changes data

    Definition Classes
    ReplaceTableOperation
  7. def checkAddFileWithDeletionVectorStatsAreNotTightBounds: Boolean

    A transaction that commits AddFile actions with deletionVector should have column stats that are not tight bounds.

    A transaction that commits AddFile actions with deletionVector should have column stats that are not tight bounds. An exception to this is ComputeStats operation, which recomputes stats on these files, and the new stats are tight bounds. Some other operations that merely take an existing AddFile action and commit a copy of it, not changing the deletionVector or stats, can then also recommit AddFile with deletionVector and tight bound stats that were recomputed before.

    An operation for which this can happen, and there is no way that it could be committing new deletion vectors, should set this to false to bypass this check. All other operations should set this to true, so that this is validated during commit.

    This is abstract to force the implementers of all operations to think about this setting. All operations should add a comment justifying this setting. Any operation that sets this to false should add a test in TightBoundsSuite.

    Definition Classes
    ReplaceTableOperation
  8. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  9. val clusterBy: Option[Seq[String]]
  10. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  11. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  12. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  13. val isInPlaceFileMetadataUpdate: Option[Boolean]

    Whether the transaction is updating metadata of existing files.

    Whether the transaction is updating metadata of existing files.

    The Delta protocol allows committing AddFile actions for files that already exist on the latest version of the table, without committing corresponding RemoveFile actions. This is used to update the metadata of existing files, e.g. to recompute statistics or add tags.

    Such operations need special handling during conflict checking, especially against no-data-change transactions, because the read/delete conflict can be resolved with read-file-remapping and because there is no RemoveFile action to trigger a delete/delete conflict. In case you are adding such operation, make sure to include a test for conflicts with business *and* no-data-change transactions, e.g. optimize.

    Definition Classes
    ReplaceTableOperation
  14. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  15. val isManaged: Boolean
  16. lazy val jsonEncodedValues: Map[String, String]
    Definition Classes
    Operation
  17. val metadata: Metadata
  18. val name: String
    Definition Classes
    Operation
  19. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  20. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  21. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  22. val operationMetrics: Set[String]
    Definition Classes
    ReplaceTableOperation
  23. val orCreate: Boolean
  24. val parameters: Map[String, Any]
    Definition Classes
    ReplaceTableOperation
  25. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  26. def transformDeletionVectorMetrics(allMetrics: Map[String, SQLMetric], dvMetrics: Map[String, MetricsTransformer] = ...): Map[String, String]

    Manually transform the deletion vector metrics, because they are not part of operationMetrics and are filtered out by the super.transformMetrics() call.

    Manually transform the deletion vector metrics, because they are not part of operationMetrics and are filtered out by the super.transformMetrics() call.

    Definition Classes
    Operation
  27. def transformMetrics(metrics: Map[String, SQLMetric]): Map[String, String]
    Definition Classes
    Operation
  28. val userMetadata: Option[String]
    Definition Classes
    ReplaceTableOperation
  29. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  30. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  31. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()

Inherited from Serializable

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from Operation

Inherited from AnyRef

Inherited from Any

Ungrouped