Row versioning

Early on, this chapter described two concurrency models that SQL Server can use. Pessimistic concurrency uses locking to guarantee the appropriate transactional behavior and avoid problems such as dirty reads, according to the isolation level you’re using. Optimistic concurrency uses a technology called row versioning to guarantee your transactions. Starting with SQL Server 2005, optimistic concurrency is available after you enable one or both of the database properties READ_COMMITTED_SNAPSHOT and ALLOW_SNAPSHOT_ ISOLATION. Exclusive locks can be acquired when you use optimistic concurrency, so you still need to be aware of all issues related to lock modes, lock resources, and lock duration, as well as the resources required to ...

Get Microsoft SQL Server 2012 Internals now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.