diff options
-rw-r--r-- | doc/src/sgml/ref/insert.sgml | 4 | ||||
-rw-r--r-- | src/backend/access/heap/heapam.c | 8 | ||||
-rw-r--r-- | src/backend/commands/trigger.c | 8 | ||||
-rw-r--r-- | src/include/nodes/execnodes.h | 2 |
4 files changed, 11 insertions, 11 deletions
diff --git a/doc/src/sgml/ref/insert.sgml b/doc/src/sgml/ref/insert.sgml index c88d1b7b50a..eff52cb1e0c 100644 --- a/doc/src/sgml/ref/insert.sgml +++ b/doc/src/sgml/ref/insert.sgml @@ -76,7 +76,7 @@ INSERT INTO <replaceable class="PARAMETER">table_name</replaceable> [ AS <replac <para> <literal>ON CONFLICT</> can be used to specify an alternative action to raising a unique constraint or exclusion constraint - violation error . (See <xref linkend="sql-on-conflict" + violation error. (See <xref linkend="sql-on-conflict" endterm="sql-on-conflict-title"> below.) </para> @@ -397,7 +397,7 @@ INSERT INTO <replaceable class="PARAMETER">table_name</replaceable> [ AS <replac <emphasis>unique index inference</emphasis> clause or an explicitly named constraint can be used. For <literal>ON CONFLICT DO NOTHING</literal>, it is optional to specify a - <parameter>conflict_target</parameter>; when ommitted, conflicts + <parameter>conflict_target</parameter>; when omitted, conflicts with all usable constraints (and unique indexes) are handled. For <literal>ON CONFLICT DO UPDATE</literal>, a conflict target <emphasis>must</emphasis> be specified. diff --git a/src/backend/access/heap/heapam.c b/src/backend/access/heap/heapam.c index 7ea9a77e7ea..1a8d2f2d0b5 100644 --- a/src/backend/access/heap/heapam.c +++ b/src/backend/access/heap/heapam.c @@ -2068,10 +2068,10 @@ FreeBulkInsertState(BulkInsertState bistate) * Speculatively inserted tuples behave as "value locks" of short duration, * used to implement INSERT .. ON CONFLICT. * - * Note that these options will be applied when inserting into the heap's - * TOAST table, too, if the tuple requires any out-of-line data. - * FIXME: Do we mark TOAST tuples as speculative too? What about confirming - * or aborting them? + * Note that most of these options will be applied when inserting into the + * heap's TOAST table, too, if the tuple requires any out-of-line data. Only + * HEAP_INSERT_IS_SPECULATIVE is explicitly ignored, as the toast data does + * not partake in speculative insertion. * * The BulkInsertState object (if any; bistate can be NULL for default * behavior) is also just passed through to RelationGetBufferForTuple. diff --git a/src/backend/commands/trigger.c b/src/backend/commands/trigger.c index b537ca5e661..d9b9587f1e6 100644 --- a/src/backend/commands/trigger.c +++ b/src/backend/commands/trigger.c @@ -66,10 +66,10 @@ int SessionReplicationRole = SESSION_REPLICATION_ROLE_ORIGIN; static int MyTriggerDepth = 0; /* - * Note that similar macros also exists in executor/execMain.c. There does not - * appear to be any good header to put it into, given the structures that it - * uses, so we let them be duplicated. Be sure to update both if one needs to - * be changed, however. + * Note that similar macros also exist in executor/execMain.c. There does not + * appear to be any good header to put them into, given the structures that + * they use, so we let them be duplicated. Be sure to update all if one needs + * to be changed, however. */ #define GetUpdatedColumns(relinfo, estate) \ (rt_fetch((relinfo)->ri_RangeTableIndex, (estate)->es_range_table)->updatedCols) diff --git a/src/include/nodes/execnodes.h b/src/include/nodes/execnodes.h index 210dbe4a534..9de6d1484eb 100644 --- a/src/include/nodes/execnodes.h +++ b/src/include/nodes/execnodes.h @@ -1108,7 +1108,7 @@ typedef struct ModifyTableState List *mt_arbiterindexes; /* unique index OIDs to arbitrate taking alt path */ TupleTableSlot *mt_existing; /* slot to store existing target tuple in */ List *mt_excludedtlist; /* the excluded pseudo relation's tlist */ - TupleTableSlot *mt_conflproj; /* FIXME*/ + TupleTableSlot *mt_conflproj; /* CONFLICT ... SET ... projection target */ } ModifyTableState; /* ---------------- |