git.postgresql.org Git - postgresql.git/commitdiff

git projects / postgresql.git / commitdiff
? search:
summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 7dbe290)
doc: clarify when row-level locks are released
2020年3月31日 21:57:44 +0000 (17:57 -0400)
2020年3月31日 21:57:44 +0000 (17:57 -0400)
They are released just like table-level locks. Also clean up wording.
(Uses wording "rolled back to".)

Reported-by: me@sillymon.ch
Discussion: https://postgr.es/m/158074944048.1095.4309647363871637715@wrigleys.postgresql.org

Backpatch-through: 9.5


diff --git a/doc/src/sgml/mvcc.sgml b/doc/src/sgml/mvcc.sgml
index f8c9655111978760da1a790fd41f684014b37bb4..ecff9474c8edd8313dc0f779061989bdf2a92145 100644 (file)
--- a/doc/src/sgml/mvcc.sgml
+++ b/doc/src/sgml/mvcc.sgml
@@ -1039,7 +1039,7 @@ ERROR: could not serialize access due to read/write dependencies among transact
</tip>
<para>
- Once acquired, a lock is normally held till end of transaction. But if a
+ Once acquired, a lock is normally held until the end of the transaction. But if a
lock is acquired after establishing a savepoint, the lock is released
immediately if the savepoint is rolled back to. This is consistent with
the principle that <command>ROLLBACK</command> cancels all effects of the
@@ -1178,7 +1178,10 @@ ERROR: could not serialize access due to read/write dependencies among transact
conflicting locks on the same row, even in different subtransactions;
but other than that, two transactions can never hold conflicting locks
on the same row. Row-level locks do not affect data querying; they
- block only <emphasis>writers and lockers</emphasis> to the same row.
+ block only <emphasis>writers and lockers</emphasis> to the same
+ row. Row-level locks are released at transaction end or during
+ savepoint rollback, just like table-level locks.
+
</para>
<variablelist>
This is the main PostgreSQL git repository.
RSS Atom

AltStyle によって変換されたページ (->オリジナル) /