Oracle??™s multiversion read concurrency scheme
can greatly reduce contention, as you will see later in this chapter.
Integrity Problems
Some basic integrity problems can result if transaction isolation isn??™t properly
enforced. Four of these problems are common to many databases:
Lost updates
The most common type of integrity problem occurs when two writers are both
changing the same piece of data, and one writer??™s changes overwrite the other
writer??™s changes. This is the problem that exclusive locks are designed to prevent.
Dirty reads
Occur when a database allows a transaction to read data that has been changed
by another transaction but hasn??™t been committed yet. The changes made by the
transaction may be rolled back, so the data read may turn out to be incorrect.
Many databases allow dirty reads to avoid the contention caused by read locks.
Nonrepeatable reads
Occur as a result of changes made by another transaction. One transaction
makes a query based on a particular condition. After the data has been returned
to the first transaction, but before the first transaction is complete, another
transaction changes the data so that some of the previously retrieved data no
longer satisfies the selection condition.
Pages:
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422