IdentityColumn¶
allowExplicitInsert¶
allowExplicitInsert(
field: StructField): Boolean
allowExplicitInsert...FIXME
allowExplicitInsert is used when:
IdentityColumnis requested to blockExplicitIdentityColumnInsertDeltaCatalogis requested to alterTableMergeIntoCommandBaseis requested to validateIdentityColumnHighWatermarks
copySchemaWithMergedHighWaterMarks¶
copySchemaWithMergedHighWaterMarks(
deltaLog: DeltaLog,
schemaToCopy: StructType,
schemaWithHighWaterMarksToMerge: StructType): StructType
copySchemaWithMergedHighWaterMarks...FIXME
copySchemaWithMergedHighWaterMarks is used when:
CloneTableBaseis requested to prepareSourceMetadata (for CreateDeltaTableCommand)RestoreTableCommandis executed
Create Expression to Generate IDENTITY Values¶
createIdentityColumnGenerationExpr(
field: StructField): Expression
createIdentityColumnGenerationExpr creates a GenerateIdentityValues for the IdentityInfo for the given StructField.
createIdentityColumnGenerationExpr is used when:
IdentityColumnis requested to createIdentityColumnGenerationExprAsColumnPreprocessTableMergeis requested to resolveImplicitColumns
Create Column to Generate IDENTITY Values¶
createIdentityColumnGenerationExprAsColumn(
field: StructField): Column
createIdentityColumnGenerationExprAsColumn creates a Column (Spark SQL) with a GenerateIdentityValues expression for the given StructField.
createIdentityColumnGenerationExprAsColumn is used when:
ColumnWithDefaultExprUtilsis requested to addDefaultExprsOrReturnConstraintsWriteIntoDeltais requested to writeAndReturnCommitData
getIdentityColumns¶
getIdentityColumns(
schema: StructType): Seq[StructField]
getIdentityColumns...FIXME
getIdentityColumns is used when:
IdentityColumnis requested to blockIdentityColumnUpdate, copySchemaWithMergedHighWaterMarks, getNumberOfIdentityColumns, logTableWrite- PreprocessTableMerge logical rule is executed
getIdentityInfo¶
getIdentityInfo(
field: StructField): IdentityInfo
getIdentityInfo...FIXME
getIdentityInfo is used when:
IdentityColumnis requested to copySchemaWithMergedHighWaterMarks, createIdentityColumnGenerationExpr, syncIdentity, updateSchema, updateToValidHighWaterMarkMergeIntoCommandBaseis requested to checkIdentityColumnHighWaterMarks
syncIdentity¶
syncIdentity(
deltaLog: DeltaLog,
field: StructField,
df: DataFrame,
allowLoweringHighWaterMarkForSyncIdentity: Boolean): StructField
syncIdentity...FIXME
syncIdentity is used when:
AlterTableChangeColumnDeltaCommandis executed
updateSchema¶
updateSchema(
deltaLog: DeltaLog,
schema: StructType,
updatedIdentityHighWaterMarks: Seq[(String, Long)]): StructType
updateSchema...FIXME
updateSchema is used when:
IdentityColumnis requested to copySchemaWithMergedHighWaterMarksOptimisticTransactionImplis requested to precommitUpdateSchemaWithIdentityHighWaterMarks
updateToValidHighWaterMark¶
updateToValidHighWaterMark(
field: StructField,
candidateHighWaterMark: Long,
allowLoweringHighWaterMarkForSyncIdentity: Boolean): (StructField, Seq[String])
updateToValidHighWaterMark...FIXME
updateToValidHighWaterMark is used when:
IdentityColumnis requested to syncIdentity and updateSchema