Definition of Serializability - Advanced SQL Engine - Teradata Database

Database Introduction

Product
Advanced SQL Engine
Teradata Database
Release Number
17.05
17.00
Published
June 2020
Language
English (United States)
Last Update
2021-01-23
dita:mapPath
qia1556235689628.ditamap
dita:ditavalPath
lze1555437562152.ditaval
dita:id
B035-1091
lifecycle
previous
Product Category
Teradata Vantage™

A set of transactions is serializable if the set produces the same result as some arbitrary serial execution of those same transactions for arbitrary input.

A set of transactions is correct only if it is serializable. The Two-Phase Locking (2PL) protocol ensures the serializability of transactions.

The phases of the Two-Phase Locking protocol are described in the following table:

In the… A transaction must…
growing phase acquire a lock on an object before operating on it.

The Teradata Optimizer requests locks as close to the beginning of the transaction as possible.

shrinking phase release the previously acquired lock and never acquire any more locks after it has released a lock.

Lock release is an all-or-none operation. Once acquired, locks are not released until the transaction has committed or is completely rolled back.