FeatureAutomaticallyEnabledByMetadata¶
FeatureAutomaticallyEnabledByMetadata
is an extension of the TableFeature abstraction for table features that can be enabled via a change in a table metadata.
Contract¶
metadataRequiresFeatureToBeEnabled¶
metadataRequiresFeatureToBeEnabled(
metadata: Metadata,
spark: SparkSession): Boolean
Controls whether this TableFeature should be enabled because its metadata requirements are satisfied (e.g., a table property is enabled in the configuration of the given Metadata)
Enabled (true
) for automatically enabled features (based on metadata configuration)
See:
Used when:
Protocol
is requested for the automatically enabled table features
Implementations¶
- AppendOnlyTableFeature
- ChangeDataFeedTableFeature
CheckConstraintsTableFeature
ColumnMappingTableFeature
- DeletionVectorsTableFeature
GeneratedColumnsTableFeature
IcebergCompatV1TableFeature
InvariantsTableFeature
- RowTrackingFeature
TimestampNTZTableFeature
Sealed Trait
FeatureAutomaticallyEnabledByMetadata
is a Scala sealed trait which means that all of the implementations are in the same compilation unit (a single file).
Learn more in the Scala Language Specification.
Auto-Update Capable Table Feature¶
automaticallyUpdateProtocolOfExistingTables: Boolean
automaticallyUpdateProtocolOfExistingTables
is enabled (true
) for a legacy feature only by default.
Auto-Update Capable Table Feature
Non-legacy features are supposed to override this method to become auto-update capable.
See:
automaticallyUpdateProtocolOfExistingTables
is used when:
Protocol
is requested to assertMetadataTableFeaturesAutomaticallySupported