Author: Mikhail Nikalayeu <mihailnikalayeu@gmail.com>
Reviewed-by: Noah Misch <noah@leadboat.com>
Discussion: https://postgr.es/m/CANtu0ojXmqjmEzp-=aJSxjsdE76iAsRgHBoK0QtYHimb_mEfsg@mail.gmail.com
Backpatch-through: 13
</para>
</tip>
+ <warning>
+ <para>
+ While <command>CREATE INDEX CONCURRENTLY</command> or <command>REINDEX
+ CONCURRENTLY</command> is running on a unique index, <command>INSERT
+ ... ON CONFLICT</command> statements on the same table may unexpectedly
+ fail with a unique violation.
+ </para>
+ </warning>
+
</refsect2>
</refsect1>
* the purposes of inference. If no opclass (or collation) is specified, then
* all matching indexes (that may or may not match the default in terms of
* each attribute opclass/collation) are used for inference.
+ *
+ * Note: during index CONCURRENTLY operations, different transactions may
+ * reference different sets of arbiter indexes. This can lead to false unique
+ * constraint violations that wouldn't occur during normal operations. For
+ * more information, see insert.sgml.
*/
List *
infer_arbiter_indexes(PlannerInfo *root)