org.apache.spark.sql.delta.sources
DeltaSourceMetadataTrackingLog
Companion object DeltaSourceMetadataTrackingLog
class DeltaSourceMetadataTrackingLog extends AnyRef
Tracks the metadata changes for a particular Delta streaming source in a particular stream, it is utilized to save and lookup the correct metadata during streaming from a Delta table. This schema log is NOT meant to be shared across different Delta streaming source instances.
- Alphabetic
- By Inheritance
- DeltaSourceMetadataTrackingLog
- 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
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def getCurrentTrackedMetadata: Option[PersistedMetadata]
Get the current schema that is being tracked by this schema log.
Get the current schema that is being tracked by this schema log. This is typically the latest schema log entry to the best of this schema log's knowledge.
- def getPreviousTrackedMetadata: Option[PersistedMetadata]
Get the logically-previous tracked schema entry by this schema log.
Get the logically-previous tracked schema entry by this schema log. DeltaSource requires it to compare the previous schema with the latest schema to determine if an automatic stream restart is allowed.
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- val initMetadataLogEagerly: Boolean
- 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
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- val schemaSerializer: JsonSchemaSerializer[PersistedMetadata]
- Attributes
- protected
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- val trackingLog: SchemaTrackingLog[PersistedMetadata]
- Attributes
- protected
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- 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()
- def writeNewMetadata(newMetadata: PersistedMetadata, replaceCurrent: Boolean = false): PersistedMetadata
Track a new schema to the log.
Track a new schema to the log.
- newMetadata
The incoming new metadata with schema.
- replaceCurrent
If true, we will set a previous seq num pointer on the incoming metadata change pointing to the previous seq num of the current latest metadata. So that once the new metadata is written, getPreviousTrackedMetadata() will return the updated reference. If a previous metadata does not exist, this is noop.