[ Team LiB ] Previous Section Next Section

Concurrency Patterns

Transaction (379)

Executes concurrent units of work in an atomic, consistent, isolated, and durable manner. Nearly every database platform supports native transactions.

Optimistic Lock (395)

Maintains version information to prevent missing database updates. Optimistic locking uses application semantics to validate a working copy's version before updating the database.

Pessimistic Lock (405)

Attaches lock information to data to prevent missing database updates. Explicit pessimistic locking often offers better application diagnostics than analogous native transaction support.

Compensating Transaction (417)

Defines explicit compensating operations to roll back units of work that are not part of a native database transaction.

    [ Team LiB ] Previous Section Next Section