postgres.git / summary / log / commit / refs
commit 0dafa9584e64243cb4d305be903623d6e709c584
Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
Date: Fri Nov 28 21:06:18 2014 +0000
Update transaction README for persistent multixacts
Multixacts are now maintained during recovery, but the README didn't get
the memo. Backpatch to 9.3, where the divergence was introduced.
src/backend/access/transam/README | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/src/backend/access/transam/README b/src/backend/access/transam/README
index 3a32471e951..82ffb98680f 100644
--- a/src/backend/access/transam/README
+++ b/src/backend/access/transam/README
@@ -812,10 +812,7 @@ parent transaction to complete.
Not all transactional behaviour is emulated, for example we do not insert
a transaction entry into the lock table, nor do we maintain the transaction
-stack in memory. Clog entries are made normally. Multixact is not maintained
-because its purpose is to record tuple level locks that an application has
-requested to prevent other tuple locks. Since tuple locks cannot be obtained at
-all, there is never any conflict and so there is no reason to update multixact.
+stack in memory. Clog and multixact entries are made normally.
Subtrans is maintained during recovery but the details of the transaction
tree are ignored and all subtransactions reference the top-level TransactionId
directly. Since commit is atomic this provides correct lock wait behaviour
[parent: 4b1953079fb0]