From e2e915c24ebbd90a3998707fee49ee69259abf78 Mon Sep 17 00:00:00 2001
From: "David G. Johnston" <david.g.johnston@gmail.com>
Date: Thu, 9 Jun 2022 23:55:12 +0000
Subject: [PATCH] doc: cross-reference to unique indexes internals from mvcc

---
 doc/src/sgml/mvcc.sgml | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/doc/src/sgml/mvcc.sgml b/doc/src/sgml/mvcc.sgml
index 341fea524a..8512374647 100644
--- a/doc/src/sgml/mvcc.sgml
+++ b/doc/src/sgml/mvcc.sgml
@@ -299,6 +299,19 @@
        that made the changes aborts.  See <xref linkend="functions-sequence"/>
        and <xref linkend="datatype-serial"/>.
      </para>
+
+     <para>
+      In general, the act of inserting new data can be done in total isolation.
+      Once committed, the visibility of the inserted data to ongoing transactions
+      will vary as described below, but as there is no pre-existing data, visibility
+      checks are unnecessary.  However, this does not apply to the enforcement of
+      unique constraints for the newly inserted records.  The full mechanics of this
+      are described in <xref linkend="index-unique-checks"/> but for purposes of this,
+      discussion be aware that in the case of two or more transactions attempting to,
+      claim a unique value it may happen that only one of them will get to proceed,
+      while the others wait.  A deletion within an ongoing transaction can produce a
+      similar effect.
+     </para>
    </important>
 
   <sect2 id="xact-read-committed">
-- 
2.25.1

