16.10 - Locking Overview - Teradata Database

Teradata Database Administration

Product
Teradata Database
Release Number
16.10
Published
April 2018
Language
English (United States)
Last Update
2018-04-26
dita:mapPath
qjg1509413559832.ditamap
dita:ditavalPath
changebar_rev_16_10_exclude_audience_ie.ditaval
dita:id
ujp1472240543947

When multiple transactions need to perform work that requires a nonshareable lock on the same object, Teradata Database controls concurrency by:

  • Granting a lock to the transaction that requests access to first.
  • Queuing subsequent transactions in order of their arrival, such that they wait indefinitely until preceding query completes and a new lock can be granted, with these exceptions:
    • Requests identified with the LOCKING modifier NOWAIT option immediately abort rather than join the queue.
    • MultiLoad transactions can timeout after waiting for over 50 seconds. See Teradata MultiLoad Reference.
  • Aborting the younger request(s) among deadlocked requests. Deadlocking occurs when multiple requests need access to several of the same objects, each request has a lock on one of the objects, and is locked out of at least one of the objects, such that none of the requests can complete.
  • Releasing the lock and granting a new lock to the oldest transaction in the queue, when the current transaction completes.

For a complete discussion of locks and locking, see SQL Request and Transaction Processing.