Packages

t

org.apache.spark.sql.delta

DeltaConfigsBase

trait DeltaConfigsBase extends DeltaLogging

Contains list of reservoir configs and validation checks.

Linear Supertypes
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. DeltaConfigsBase
  2. DeltaLogging
  3. DatabricksLogging
  4. DeltaProgressReporter
  5. Logging
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

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. val AUTO_OPTIMIZE: DeltaConfig[Option[Boolean]]

    Whether this table will automatically optimize the layout of files during writes.

  5. val CHANGE_DATA_FEED: DeltaConfig[Boolean]

    Enable change data feed output.

    Enable change data feed output. When enabled, DELETE, UPDATE, and MERGE INTO operations will need to do additional work to output their change data in an efficiently readable format.

  6. val CHECKPOINT_INTERVAL: DeltaConfig[Int]

    How often to checkpoint the delta log.

  7. val CHECKPOINT_POLICY: DeltaConfig[Policy]

    Policy to decide what kind of checkpoint to write to a table.

  8. val CHECKPOINT_RETENTION_DURATION: DeltaConfig[CalendarInterval]

    The shortest duration we have to keep checkpoint files around before deleting them.

    The shortest duration we have to keep checkpoint files around before deleting them. Note that we'll never delete the most recent checkpoint. We may keep checkpoint files beyond this duration until the next calendar day.

  9. val CHECKPOINT_WRITE_STATS_AS_JSON: DeltaConfig[Boolean]

    When enabled, we will write file statistics in the checkpoint in JSON format as the "stats" column.

  10. val CHECKPOINT_WRITE_STATS_AS_STRUCT: DeltaConfig[Boolean]

    When enabled, we will write file statistics in the checkpoint in the struct format in the "stats_parsed" column.

    When enabled, we will write file statistics in the checkpoint in the struct format in the "stats_parsed" column. We will also write partition values as a struct as "partitionValues_parsed".

  11. val COLUMN_MAPPING_MAX_ID: DeltaConfig[Long]

    Maximum columnId used in the schema so far for column mapping.

    Maximum columnId used in the schema so far for column mapping. Internal property that cannot be set by users.

  12. val COLUMN_MAPPING_MODE: DeltaConfig[DeltaColumnMappingMode]
  13. val CREATE_TABLE_IGNORE_PROTOCOL_DEFAULTS: DeltaConfig[Boolean]

    Ignore protocol-related configs set in SQL config.

    Ignore protocol-related configs set in SQL config. When set to true, CREATE TABLE and REPLACE TABLE commands will not consider default protocol versions and table features in the current Spark session.

  14. val DATA_SKIPPING_NUM_INDEXED_COLS: DeltaConfig[Int]

    The number of columns to collect stats on for data skipping.

    The number of columns to collect stats on for data skipping. A value of -1 means collecting stats for all columns. Updating this conf does not trigger stats re-collection, but redefines the stats schema of table, i.e., it will change the behavior of future stats collection (e.g., in append and OPTIMIZE) as well as data skipping (e.g., the column stats beyond this number will be ignored even when they exist).

  15. val DATA_SKIPPING_STATS_COLUMNS: DeltaConfig[Option[String]]

    The names of specific columns to collect stats on for data skipping.

    The names of specific columns to collect stats on for data skipping. If present, it takes precedences over dataSkippingNumIndexedCols config, and the system will only collect stats for columns that exactly match those specified. If a nested column is specified, the system will collect stats for all leaf fields of that column. If a non-existent column is specified, it will be ignored. Updating this conf does not trigger stats re-collection, but redefines the stats schema of table, i.e., it will change the behavior of future stats collection (e.g., in append and OPTIMIZE) as well as data skipping (e.g., the column stats not mentioned by this config will be ignored even if they exist).

  16. final val DELTA_UNIVERSAL_FORMAT_CONFIG_PREFIX: String("delta.universalformat.config.")

    The prefix for a category of special configs for delta universal format to support the user facing config naming convention for different table formats: "delta.universalFormat.config.[iceberg/hudi].[config_name]" Note that config_name can be arbitrary.

  17. final val DELTA_UNIVERSAL_FORMAT_ICEBERG_CONFIG_PREFIX: String
  18. val ENABLE_DELETION_VECTORS_CREATION: DeltaConfig[Boolean]

    Whether commands modifying this Delta table are allowed to create new deletion vectors.

  19. val ENABLE_EXPIRED_LOG_CLEANUP: DeltaConfig[Boolean]

    Whether to clean up expired checkpoints and delta logs.

  20. val ENABLE_FULL_RETENTION_ROLLBACK: DeltaConfig[Boolean]

    If true, a delta table can be rolled back to any point within LOG_RETENTION.

    If true, a delta table can be rolled back to any point within LOG_RETENTION. Leaving this on requires converting the oldest delta file we have into a checkpoint, which we do once a day. If doing that operation is too expensive, it can be turned off, but the table can only be rolled back CHECKPOINT_RETENTION_DURATION ago instead of LOG_RETENTION ago.

  21. val ICEBERG_COMPAT_V1_ENABLED: DeltaConfig[Option[Boolean]]
  22. val ISOLATION_LEVEL: DeltaConfig[IsolationLevel]

    The isolation level of a table defines the degree to which a transaction must be isolated from modifications made by concurrent transactions.

    The isolation level of a table defines the degree to which a transaction must be isolated from modifications made by concurrent transactions. Delta currently supports one isolation level: Serializable.

  23. val IS_APPEND_ONLY: DeltaConfig[Boolean]

    Whether this Delta table is append-only.

    Whether this Delta table is append-only. Files can't be deleted, or values can't be updated.

  24. val LOG_RETENTION: DeltaConfig[CalendarInterval]

    The shortest duration we have to keep delta files around before deleting them.

    The shortest duration we have to keep delta files around before deleting them. We can only delete delta files that are before a compaction. We may keep files beyond this duration until the next calendar day.

  25. val MIN_READER_VERSION: DeltaConfig[Int]

    The protocol reader version modelled as a table property.

    The protocol reader version modelled as a table property. This property is *not* stored as a table property in the Metadata action. It is stored as its own action. Having it modelled as a table property makes it easier to upgrade, and view the version.

  26. val MIN_WRITER_VERSION: DeltaConfig[Int]

    The protocol reader version modelled as a table property.

    The protocol reader version modelled as a table property. This property is *not* stored as a table property in the Metadata action. It is stored as its own action. Having it modelled as a table property makes it easier to upgrade, and view the version.

  27. val RANDOMIZE_FILE_PREFIXES: DeltaConfig[Boolean]

    Whether to use a random prefix in a file path instead of partition information.

    Whether to use a random prefix in a file path instead of partition information. This is required for very high volume S3 calls to better be partitioned across S3 servers.

  28. val RANDOM_PREFIX_LENGTH: DeltaConfig[Int]

    Whether to use a random prefix in a file path instead of partition information.

    Whether to use a random prefix in a file path instead of partition information. This is required for very high volume S3 calls to better be partitioned across S3 servers.

  29. val ROW_TRACKING_ENABLED: DeltaConfig[Boolean]

    Indicates whether Row Tracking is enabled on the table.

    Indicates whether Row Tracking is enabled on the table. When this flag is turned on, all rows are guaranteed to have Row IDs and Row Commit Versions assigned to them, and writers are expected to preserve them by materializing them to hidden columns in the data files.

  30. val SAMPLE_RETENTION: DeltaConfig[CalendarInterval]

    The shortest duration we have to keep delta sample files around before deleting them.

  31. val SYMLINK_FORMAT_MANIFEST_ENABLED: DeltaConfig[Boolean]
  32. val TABLE_FEATURE_DROP_TRUNCATE_HISTORY_LOG_RETENTION: DeltaConfig[CalendarInterval]

    The logRetention period to be used in DROP FEATURE ...

    The logRetention period to be used in DROP FEATURE ... TRUNCATE HISTORY command. The value should represent the expected duration of the longest running transaction. Setting this to a lower value than the longest running transaction may corrupt the table.

  33. val TOMBSTONE_RETENTION: DeltaConfig[CalendarInterval]

    The shortest duration we have to keep logically deleted data files around before deleting them physically.

    The shortest duration we have to keep logically deleted data files around before deleting them physically. This is to prevent failures in stale readers after compactions or partition overwrites.

    Note: this value should be large enough: - It should be larger than the longest possible duration of a job if you decide to run "VACUUM" when there are concurrent readers or writers accessing the table. - If you are running a streaming query reading from the table, you should make sure the query doesn't stop longer than this value. Otherwise, the query may not be able to restart as it still needs to read old files.

  34. val TRANSACTION_ID_RETENTION_DURATION: DeltaConfig[Option[CalendarInterval]]

    The shortest duration within which new Snapshots will retain transaction identifiers (i.e.

    The shortest duration within which new Snapshots will retain transaction identifiers (i.e. SetTransactions). When a new Snapshot sees a transaction identifier older than or equal to the specified TRANSACTION_ID_RETENTION_DURATION, it considers it expired and ignores it.

  35. val UNIVERSAL_FORMAT_ENABLED_FORMATS: DeltaConfig[Seq[String]]

    Convert the table's metadata into other storage formats after each Delta commit.

    Convert the table's metadata into other storage formats after each Delta commit. Only Iceberg is supported for now

  36. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  37. def buildConfig[T](key: String, defaultValue: String, fromString: (String) => T, validationFunction: (T) => Boolean, helpMessage: String, userConfigurable: Boolean = true, alternateConfs: Seq[DeltaConfig[T]] = Seq.empty): DeltaConfig[T]
    Attributes
    protected
  38. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  39. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  40. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  41. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  42. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  43. def getCommonTags(deltaLog: DeltaLog, tahoeId: String): Map[TagDefinition, String]
    Definition Classes
    DeltaLogging
  44. def getMilliSeconds(i: CalendarInterval): Long
  45. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  46. def initializeLogIfNecessary(isInterpreter: Boolean, silent: Boolean): Boolean
    Attributes
    protected
    Definition Classes
    Logging
  47. def initializeLogIfNecessary(isInterpreter: Boolean): Unit
    Attributes
    protected
    Definition Classes
    Logging
  48. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  49. def isTraceEnabled(): Boolean
    Attributes
    protected
    Definition Classes
    Logging
  50. def isValidIntervalConfigValue(i: CalendarInterval): Boolean

    For configs accepting an interval, we require the user specified string must obey:

    For configs accepting an interval, we require the user specified string must obey:

    - Doesn't use months or years, since an internal like this is not deterministic. - The microseconds parsed from the string value must be a non-negative value.

    The method returns whether a CalendarInterval satisfies the requirements.

  51. def log: Logger
    Attributes
    protected
    Definition Classes
    Logging
  52. def logConsole(line: String): Unit
    Definition Classes
    DatabricksLogging
  53. def logDebug(msg: => String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  54. def logDebug(msg: => String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  55. def logError(msg: => String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  56. def logError(msg: => String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  57. def logInfo(msg: => String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  58. def logInfo(msg: => String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  59. def logName: String
    Attributes
    protected
    Definition Classes
    Logging
  60. def logTrace(msg: => String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  61. def logTrace(msg: => String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  62. def logWarning(msg: => String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  63. def logWarning(msg: => String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  64. def mergeGlobalConfigs(sqlConfs: SQLConf, tableConf: Map[String, String], ignoreProtocolConfsOpt: Option[Boolean] = None): Map[String, String]

    Table properties for new tables can be specified through SQL Configurations using the sqlConfPrefix and TableFeatureProtocolUtils.DEFAULT_FEATURE_PROP_PREFIX.

    Table properties for new tables can be specified through SQL Configurations using the sqlConfPrefix and TableFeatureProtocolUtils.DEFAULT_FEATURE_PROP_PREFIX. This method checks to see if any of the configurations exist among the SQL configurations and merges them with the user provided configurations. User provided configs take precedence.

    When ignoreProtocolConfsOpt is true (or false), this method will not (or will) copy protocol-related configs. If ignoreProtocolConfsOpt is None, whether to copy protocol-related configs will be depending on the existence of DeltaConfigs.CREATE_TABLE_IGNORE_PROTOCOL_DEFAULTS (delta.ignoreProtocolDefaults) in SQL or table configs.

    "Protocol-related configs" includes `delta.minReaderVersion`, `delta.minWriterVersion`, `delta.ignoreProtocolDefaults`, and anything that starts with `delta.feature.`

  65. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  66. def normalizeConfigKey(propKey: Option[String]): Option[String]

    Normalize the specified property key if the key is for a Delta config.

  67. def normalizeConfigKeys(propKeys: Seq[String]): Seq[String]

    Normalize the specified property keys if the key is for a Delta config.

  68. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  69. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  70. def parseCalendarInterval(s: String): CalendarInterval

    Convert a string to CalendarInterval.

    Convert a string to CalendarInterval. This method is case-insensitive and will throw IllegalArgumentException when the input string is not a valid interval.

    TODO Remove this method and use CalendarInterval.fromCaseInsensitiveString instead when upgrading Spark. This is a fork version of CalendarInterval.fromCaseInsensitiveString which will be available in the next Spark release (See SPARK-27735).

    Exceptions thrown

    IllegalArgumentException if the string is not a valid internal.

  71. def recordDeltaEvent(deltaLog: DeltaLog, opType: String, tags: Map[TagDefinition, String] = Map.empty, data: AnyRef = null, path: Option[Path] = None): Unit

    Used to record the occurrence of a single event or report detailed, operation specific statistics.

    Used to record the occurrence of a single event or report detailed, operation specific statistics.

    path

    Used to log the path of the delta table when deltaLog is null.

    Attributes
    protected
    Definition Classes
    DeltaLogging
  72. def recordDeltaOperation[A](deltaLog: DeltaLog, opType: String, tags: Map[TagDefinition, String] = Map.empty)(thunk: => A): A

    Used to report the duration as well as the success or failure of an operation on a deltaLog.

    Used to report the duration as well as the success or failure of an operation on a deltaLog.

    Attributes
    protected
    Definition Classes
    DeltaLogging
  73. def recordDeltaOperationForTablePath[A](tablePath: String, opType: String, tags: Map[TagDefinition, String] = Map.empty)(thunk: => A): A

    Used to report the duration as well as the success or failure of an operation on a tahoePath.

    Used to report the duration as well as the success or failure of an operation on a tahoePath.

    Attributes
    protected
    Definition Classes
    DeltaLogging
  74. def recordEvent(metric: MetricDefinition, additionalTags: Map[TagDefinition, String] = Map.empty, blob: String = null, trimBlob: Boolean = true): Unit
    Definition Classes
    DatabricksLogging
  75. def recordFrameProfile[T](group: String, name: String)(thunk: => T): T
    Attributes
    protected
    Definition Classes
    DeltaLogging
  76. def recordOperation[S](opType: OpType, opTarget: String = null, extraTags: Map[TagDefinition, String], isSynchronous: Boolean = true, alwaysRecordStats: Boolean = false, allowAuthTags: Boolean = false, killJvmIfStuck: Boolean = false, outputMetric: MetricDefinition = METRIC_OPERATION_DURATION, silent: Boolean = true)(thunk: => S): S
    Definition Classes
    DatabricksLogging
  77. def recordProductEvent(metric: MetricDefinition with CentralizableMetric, additionalTags: Map[TagDefinition, String] = Map.empty, blob: String = null, trimBlob: Boolean = true): Unit
    Definition Classes
    DatabricksLogging
  78. def recordProductUsage(metric: MetricDefinition with CentralizableMetric, quantity: Double, additionalTags: Map[TagDefinition, String] = Map.empty, blob: String = null, forceSample: Boolean = false, trimBlob: Boolean = true, silent: Boolean = false): Unit
    Definition Classes
    DatabricksLogging
  79. def recordUsage(metric: MetricDefinition, quantity: Double, additionalTags: Map[TagDefinition, String] = Map.empty, blob: String = null, forceSample: Boolean = false, trimBlob: Boolean = true, silent: Boolean = false): Unit
    Definition Classes
    DatabricksLogging
  80. val sqlConfPrefix: String

    A global default value set as a SQLConf will overwrite the default value of a DeltaConfig.

    A global default value set as a SQLConf will overwrite the default value of a DeltaConfig. For example, user can run: set spark.databricks.delta.properties.defaults.randomPrefixLength = 5 This setting will be populated to a Delta table during its creation time and overwrites the default value of delta.randomPrefixLength.

    We accept these SQLConfs as strings and only perform validation in DeltaConfig. All the DeltaConfigs set in SQLConf should adopt the same prefix.

  81. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  82. def toString(): String
    Definition Classes
    AnyRef → Any
  83. def validateConfigurations(configurations: Map[String, String]): Map[String, String]

    Validates specified configurations and returns the normalized key -> value map.

  84. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  85. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  86. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  87. def withStatusCode[T](statusCode: String, defaultMessage: String, data: Map[String, Any] = Map.empty)(body: => T): T

    Report a log to indicate some command is running.

    Report a log to indicate some command is running.

    Definition Classes
    DeltaProgressReporter

Inherited from DeltaLogging

Inherited from DatabricksLogging

Inherited from DeltaProgressReporter

Inherited from Logging

Inherited from AnyRef

Inherited from Any

Ungrouped