Teradata MultiLoad uses two kinds of long-term locks on the tables involved in a Teradata MultiLoad task:
- The set of transaction locks acquired against the tables involved in the tasks
- Flags in the table headers that reject certain concurrent access
The locks placed on target tables by Teradata MultiLoad are write locks, or less, in most situations. The locking levels are imposed by the utility for:
- Teradata MultiLoad import or delete tasks, including all Teradata MultiLoad utility commands except RELEASE MLOAD
- End phase target table rebuilds in AMPs marked as down for Teradata MultiLoad tasks
- Rebuild logic triggered by target table I/O errors
The most restrictive exclusive lock is used only when a RELEASE MLOAD statement is executed after a Teradata MultiLoad task has been suspended or aborted.
The following table describes the of locks imposed on tables by Teradata MultiLoad tasks.
|Access||An access lock allows selection of data from a table that may be locked for write access.
Teradata MultiLoad maintains access locks against the target tables during the acquisition phase.
There is concurrent access lock select access to all affected target tables in both import and delete tasks.
|Exclusive||Teradata MultiLoad uses an exclusive lock to support the manual recovery procedure when a RELEASE MLOAD statement is executed after a Teradata MultiLoad task has been suspended or aborted.
The RELEASE MLOAD function:
|Teradata MultiLoad Acquisition||A Teradata MultiLoad acquisition lock is a flag in the table header that effectively rejects certain types of Teradata SQL access statements.
An acquisition lock:
Teradata MultiLoad maintains acquisition locks against each:
|Teradata MultiLoad Application||A Teradata MultiLoad application lock is a flag in the table header that effectively rejects certain types of Teradata SQL access statements.
An application lock:
Teradata MultiLoad maintains application locks against each:
|Write||A write lock enables a single user to modify the table.
Teradata MultiLoad maintains write locks against each:
Use access lock select access when querying the Teradata MultiLoad error tables to prevent lock time-outs that could cause Teradata MultiLoad task aborts.