object DeltaSourceMetadataEvolutionSupport
- Alphabetic
- By Inheritance
- DeltaSourceMetadataEvolutionSupport
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def allowTypeWidening(spark: SparkSession): Boolean
Whether to accept widening type changes:
Whether to accept widening type changes:
- when true, widening type changes cause the stream to fail, requesting user to review and unblock them via a SQL conf or reader option.
- when false, widening type changes are rejected without possibility to unblock, similar to any other arbitrary type change.
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def bypassTypeChangeCheck(spark: SparkSession): Boolean
We historically allowed any type changes to go through when schema tracking was enabled.
We historically allowed any type changes to go through when schema tracking was enabled. This config allows reverting to that behavior.
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @IntrinsicCandidate() @native()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def getCheckpointHash(path: String): Int
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @IntrinsicCandidate() @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @IntrinsicCandidate() @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @IntrinsicCandidate() @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @IntrinsicCandidate() @native()
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- def validateIfSchemaChangeCanBeUnblocked(spark: SparkSession, parameters: Map[String, String], metadataPath: String, currentSchema: PersistedMetadata, previousSchema: PersistedMetadata): Unit
Given a non-additive operation type from a previous schema evolution, check we can process using the new schema given any SQL conf or dataframe reader option users have explicitly set to unblock.
Given a non-additive operation type from a previous schema evolution, check we can process using the new schema given any SQL conf or dataframe reader option users have explicitly set to unblock. The SQL conf can take one of following formats: 1. spark.databricks.delta.streaming.allowSourceColumn$action = "always" -> allows non-additive schema change to propagate for all streams. 2. spark.databricks.delta.streaming.allowSourceColumn$action.$checkpointHash = "always" -> allows non-additive schema change to propagate for this particular stream. 3. spark.databricks.delta.streaming.allowSourceColumn$action.$checkpointHash = $deltaVersion -> allow non-additive schema change to propagate only for this particular stream source table version. The reader options can take one of the following format: 1. .option("allowSourceColumn$action", "always") -> allows non-additive schema change to propagate for this particular stream. 2. .option("allowSourceColumn$action", "$deltaVersion") -> allow non-additive schema change to propagate only for this particular stream source table version. where
allowSourceColumn$actionis one of: 1.allowSourceColumnRenameto allow column renames. 2.allowSourceColumnDropto allow column drops. 3.allowSourceColumnTypeChangeto allow widening type changes. For SQL confs only, action can also beallowSourceColumnRenameAndDropto allow both column drops and renames.We will check for any of these configs given the non-additive operation, and throw a proper error message to instruct the user to set the SQL conf / reader options if they would like to unblock.
- metadataPath
The path to the source-unique metadata location under checkpoint
- currentSchema
The current persisted schema
- previousSchema
The previous persisted schema
- Attributes
- protected[sources]
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated
(Since version 9)