Skip to content

SupportsPartitionManagement

SupportsPartitionManagement is an extension of the Table abstraction for partitioned tables.

Contract

createPartition

void createPartition(
  InternalRow ident,
  Map<String, String> properties)

Used when:

  • AlterTableAddPartitionExec physical command is executed

dropPartition

boolean dropPartition(
  InternalRow ident)

Used when:

  • AlterTableDropPartitionExec physical command is executed

listPartitionIdentifiers

InternalRow[] listPartitionIdentifiers(
  String[] names,
  InternalRow ident)

Used when:

  • ShowPartitionsExec physical command is executed

loadPartitionMetadata

Map<String, String> loadPartitionMetadata(
  InternalRow ident)

partitionExists

boolean partitionExists(
  InternalRow ident)

Used when:

  • AlterTableAddPartitionExec and AlterTableDropPartitionExec physical commands are executed

partitionSchema

StructType partitionSchema()

Used when:

  • AlterTableAddPartitionExec, AlterTableDropPartitionExec and ShowPartitionsExec physical commands are executed
  • SupportsPartitionManagement is requested to partitionExists
  • CheckAnalysis is requested to checkShowPartitions
  • ResolvePartitionSpec logical analysis rule is executed

replacePartitionMetadata

void replacePartitionMetadata(
  InternalRow ident,
  Map<String, String> properties)

Implementations