diff --git a/doc/src/sgml/ref/insert.sgml b/doc/src/sgml/ref/insert.sgml index c88d1b7b50a30dacf4c1809e73e84eacf2ca3611..eff52cb1e0c8f4250b27180edeca17217be86f32 100644 --- a/doc/src/sgml/ref/insert.sgml +++ b/doc/src/sgml/ref/insert.sgml @@ -76,7 +76,7 @@ INSERT INTO table_name [ AS ON CONFLICT can be used to specify an alternative action to raising a unique constraint or exclusion constraint - violation error . (See below.) @@ -397,7 +397,7 @@ INSERT INTO table_name [ AS unique index inference clause or an explicitly named constraint can be used. For ON CONFLICT DO NOTHING, it is optional to specify a - conflict_target; when ommitted, conflicts + conflict_target; when omitted, conflicts with all usable constraints (and unique indexes) are handled. For ON CONFLICT DO UPDATE, a conflict target must be specified. diff --git a/src/backend/access/heap/heapam.c b/src/backend/access/heap/heapam.c index 7ea9a77e7ea338e669dc3fd8e61501c542161f34..1a8d2f2d0b5b5709ad7d35095ffd2a312741a433 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 b537ca5e661ca5de2b37b316791029457d4a4ef9..d9b9587f1e64610bab97835d26f55bb5974727ed 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 210dbe4a534f99552039b5760b941063d5ebbf7f..9de6d1484eb7a22e9ea0a3f36738df8b31a20d7a 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; /* ----------------