NOT NULL and CHECK integrity constraints are allowed. They are not a problem for parallel DML because they are enforced on the column and row level, respectively.
UNIQUE and PRIMARY KEY integrity constraints are allowed.
Restrictions for referential integrity occur whenever a DML operation on one table could cause a recursive DML operation on another table. These restrictions also apply when, to perform an integrity check, it is necessary to see simultaneously all changes made to the object being modified.
Table 8-1 lists all of the operations that are possible on tables that are involved in referential integrity constraints.
Table 8-1 Referential Integrity Restrictions
DML Statement | Issued on Parent | Issued on Child | Self-Referential |
---|---|---|---|
|
(Not applicable) |
Not parallelized |
Not parallelized |
|
(Not applicable) |
Not parallelized |
Not parallelized |
|
Supported |
Supported |
Not parallelized |
|
Supported |
Supported |
Not parallelized |
|
Not parallelized |
(Not applicable) |
Not parallelized |
Deletion on tables having a foreign key with delete cascade is not parallelized because parallel execution servers attempt to delete rows from multiple partitions (parent and child tables).
DML on tables with self-referential integrity constraints is not parallelized if the referenced keys (primary keys) are involved. For DML on all other columns, parallelism is possible.
If any deferrable constraints apply to the table being operated on, the DML operation is not executed in parallel.