Built-in Oracle driver support plugin
For instructions on how to enable/disable Disable Constraints, Drop Indexes and Disable Triggers on Oracle jobs, see API Calls for managing masking job driver support tasks.
Optimizations
Disable Constraints disables and re-enables constraints while keeping the index associated with the constraint. In order to drop and re-create the index associated with the constraint, enable Drop Indexes along with Disable Constraints.
For in-place jobs:
Disable Constraints disables and re-enables constraints on only masked columns.
Drop Indexes drops and re-creates indexes on only masked columns.
Disable Triggers disables and re-enables triggers on only tables with masked columns.
For on-the-fly jobs, the tasks will execute on all columns/tables in the ruleset.
Task execution order
The order of task execution for built-in driver support plugins is fixed/unmodifiable.
The order of the tasks is as follows:
Pre-job:
Disable Constraints
Drop Indexes
Disable Triggers
Post-job (mirrored order):
Enable Triggers
Create Indexes
Enable Constraints
Enabling tasks on a job
For instructions on how to enable driver support tasks on jobs, see API calls for managing masking job driver support tasks.
Important considerations
If masking primary key fields:
Use the same deterministic algorithms on primary key fields that reference each other, so that referential integrity is maintained when the masking transformation completes and all constraints are re-enabled.
Enable both Disable Constraints and Drop Indexes.
If dropping indexes on masked fields with constraints is desired, enable both Disable Constraints and Drop Indexes. The implementation of the optimizations has been modified, such that Disable Constraints only disables constraints and keeps indexes automatically created and Drop Indexes handles dropping/recreating indexes. The change in task order and separation of concerns with the functionality of the tasks resolves issues around missing indexes present with the legacy database masking option of Disable Constraints.
Known limitations
If masking a primary key field, if only Disable Constraints is enabled, the job will fail during the transformation. It is recommended to enable both Disable Constraints and Drop Indexes on any applicable job per the usage instructions above. In order to not have Drop Indexes enabled, adding a prescript that disables the desired constraints will also work, but note that this workaround may result in missing indexes.
Delphix supports the below indexes:
Normal indexes
Functional indexes (6.0.12.0 and later)
Local, global, and partial partition indexes (6.0.15.0 and later)
Local partitioned index with a different number of partitions from the underlying table (27.0.0.0 and later)