mirror of
https://git.postgresql.org/git/postgresql.git
synced 2025-03-07 19:47:50 +08:00
docs: clarify MVCC introduction to allow for per-statement snapshots
This commit is contained in:
parent
fe67d25233
commit
cd8115e009
@ -41,12 +41,12 @@
|
|||||||
for developers to manage concurrent access to data. Internally,
|
for developers to manage concurrent access to data. Internally,
|
||||||
data consistency is maintained by using a multiversion
|
data consistency is maintained by using a multiversion
|
||||||
model (Multiversion Concurrency Control, <acronym>MVCC</acronym>).
|
model (Multiversion Concurrency Control, <acronym>MVCC</acronym>).
|
||||||
This means that while querying a database each transaction sees
|
This means that each SQL statement sees
|
||||||
a snapshot of data (a <firstterm>database version</firstterm>)
|
a snapshot of data (a <firstterm>database version</firstterm>)
|
||||||
as it was some
|
as it was some
|
||||||
time ago, regardless of the current state of the underlying data.
|
time ago, regardless of the current state of the underlying data.
|
||||||
This protects the transaction from viewing inconsistent data that
|
This prevents statements from viewing inconsistent data produced
|
||||||
could be caused by (other) concurrent transaction updates on the same
|
by concurrent transactions performing updates on the same
|
||||||
data rows, providing <firstterm>transaction isolation</firstterm>
|
data rows, providing <firstterm>transaction isolation</firstterm>
|
||||||
for each database session. <acronym>MVCC</acronym>, by eschewing
|
for each database session. <acronym>MVCC</acronym>, by eschewing
|
||||||
the locking methodologies of traditional database systems,
|
the locking methodologies of traditional database systems,
|
||||||
|
Loading…
Reference in New Issue
Block a user