Fix another couple of outdated comments for MERGE RETURNING.
authorDean Rasheed <[email protected]>
Tue, 4 Jun 2024 08:29:42 +0000 (09:29 +0100)
committerDean Rasheed <[email protected]>
Tue, 4 Jun 2024 08:29:42 +0000 (09:29 +0100)
Oversights in c649fa24a4 which added RETURNING support to MERGE.

Discussion: https://postgr.es/m/CAApHDvpqp6vtUzG-_josUEiBGyqnrnVxJ-VdF+hJLXjHdHzsyQ@mail.gmail.com

src/backend/utils/adt/ruleutils.c
src/include/nodes/parsenodes.h
src/include/utils/portal.h

index 9618619762be55480a13f7208491e106c4f3380c..653685bffc5eaa9712f9632792dad8e8c9efe0a0 100644 (file)
@@ -6016,7 +6016,7 @@ get_basic_select_query(Query *query, deparse_context *context,
 /* ----------
  * get_target_list         - Parse back a SELECT target list
  *
- * This is also used for RETURNING lists in INSERT/UPDATE/DELETE.
+ * This is also used for RETURNING lists in INSERT/UPDATE/DELETE/MERGE.
  *
  * resultDesc and colNamesVisible are as for get_query_def()
  * ----------
index ddfed02db22a6799613949da71c886b7161f6106..85a62b538e50f9e00c669b40906531283dfdb3b3 100644 (file)
@@ -154,7 +154,7 @@ typedef struct Query
    bool        hasDistinctOn pg_node_attr(query_jumble_ignore);
    /* WITH RECURSIVE was specified */
    bool        hasRecursive pg_node_attr(query_jumble_ignore);
-   /* has INSERT/UPDATE/DELETE in WITH */
+   /* has INSERT/UPDATE/DELETE/MERGE in WITH */
    bool        hasModifyingCTE pg_node_attr(query_jumble_ignore);
    /* FOR [KEY] UPDATE/SHARE was specified */
    bool        hasForUpdate pg_node_attr(query_jumble_ignore);
index 535928613f13c2e918fbe26a71812045ac02d197..11419faecaa8ace725426c074a7b0133c96112dd 100644 (file)
@@ -64,9 +64,9 @@
  * supports holdable cursors (the Executor results can be dumped into a
  * tuplestore for access after transaction completion).
  *
- * PORTAL_ONE_RETURNING: the portal contains a single INSERT/UPDATE/DELETE
- * query with a RETURNING clause (plus possibly auxiliary queries added by
- * rule rewriting).  On first execution, we run the portal to completion
+ * PORTAL_ONE_RETURNING: the portal contains a single INSERT/UPDATE/DELETE/
+ * MERGE query with a RETURNING clause (plus possibly auxiliary queries added
+ * by rule rewriting).  On first execution, we run the portal to completion
  * and dump the primary query's results into the portal tuplestore; the
  * results are then returned to the client as demanded.  (We can't support
  * suspension of the query partway through, because the AFTER TRIGGER code