package constraints
- Alphabetic
- Public
- All
Type Members
-
case class
AddConstraint(constraintName: String, expr: String) extends TableChange with Product with Serializable
Change to add a CHECK constraint to a table.
Change to add a CHECK constraint to a table.
- constraintName
The name of the new constraint. Note that constraint names are case insensitive.
- expr
The expression to add, as a SQL parseable string.
-
case class
CheckDeltaInvariant(child: Expression, columnExtractors: Map[String, Expression], constraint: Constraint) extends UnaryExpression with NonSQLExpression with CodegenFallback with Product with Serializable
An expression that validates a specific invariant on a column, before writing into Delta.
An expression that validates a specific invariant on a column, before writing into Delta.
- child
The fully resolved expression to be evaluated to check the constraint.
- columnExtractors
Extractors for each referenced column. Used to generate readable errors.
- constraint
The original constraint definition.
-
sealed
trait
Constraint extends AnyRef
A constraint defined on a Delta table, which writers must verify before writing.
-
case class
DeltaInvariantChecker(child: LogicalPlan, deltaConstraints: Seq[Constraint]) extends LogicalPlan with UnaryNode with Product with Serializable
Operator that validates that records satisfy provided constraints before they are written into Delta.
Operator that validates that records satisfy provided constraints before they are written into Delta. Each row is left unchanged after validations.
-
case class
DeltaInvariantCheckerExec(child: SparkPlan, constraints: Seq[Constraint]) extends SparkPlan with UnaryExecNode with Product with Serializable
A physical operator that validates records, before they are written into Delta.
A physical operator that validates records, before they are written into Delta. Each row is left unchanged after validations.
- trait DeltaInvariantCheckerOptimizerShims extends AnyRef
-
case class
DropConstraint(constraintName: String, ifExists: Boolean) extends TableChange with Product with Serializable
Change to drop a constraint from a table.
Change to drop a constraint from a table. Note that this is always idempotent - no error will be thrown if the constraint doesn't exist.
- constraintName
the name of the constraint to drop - case insensitive
- ifExists
if false, throws an error if the constraint to be dropped does not exist
-
case class
Invariant(column: Seq[String], rule: Rule) extends Product with Serializable
A rule applied on a column to ensure data hygiene.
Value Members
- object CharVarcharConstraint
-
object
Constraints
Utilities for handling constraints.
Utilities for handling constraints. Right now this includes: - Column-level invariants delegated to Invariants, including both NOT NULL constraints and an old style of CHECK constraint specified in the column metadata - Table-level CHECK constraints
- object DeltaInvariantCheckerExec extends Serializable
- object DeltaInvariantCheckerStrategy extends SparkStrategy
-
object
Invariants
List of invariants that can be defined on a Delta table that will allow us to perform validation checks during changes to the table.