postgres.git / summary / log / commit / refs
commit ae04bf50277ae25ca741cf3322d231c7dfb4c997
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 ba6ae05d653..b619de5ad3a 100644
--- a/src/backend/access/transam/README
+++ b/src/backend/access/transam/README
@@ -840,10 +840,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: d25367ec4f86]