Skip to content


TableFeature is an abstraction of table features.

TableFeature is Serializable (Java).

Creating Instance

TableFeature takes the following to be created:

  • name
  • minReaderVersion
  • minWriterVersion

Abstract Class

TableFeature is an abstract class and cannot be created directly. It is created indirectly for the concrete TableFeatures.


name: String

The name of this table feature

The name can only be a combination of letters, -s (dashes) and _s (underscores).

Used when:

Required Features

requiredFeatures: Set[TableFeature]

The required TableFeatures that this TableFeature depends on

Default: (empty)


Used when:


Sealed Abstract Class

TableFeature is a Scala sealed abstract class which means that all of the implementations are in the same compilation unit (a single file).


allSupportedFeaturesMap: Map[String, TableFeature]

allSupportedFeaturesMap is a collection of TableFeatures by their lower-case name:

allSupportedFeaturesMap is used when:

Looking Up Table Feature

  featureName: String): Option[TableFeature]

featureNameToFeature tries to find the TableFeature by the given featureName in the allSupportedFeaturesMap.

featureNameToFeature is used when: