Thread: minor comments issue in ResultRelInfo src/include/nodes/execnodes.h
hi. { /* * For UPDATE/DELETE result relations, the attribute number of the row * identity junk attribute in the source plan's output tuples */ AttrNumber ri_RowIdAttNo; /* Projection to generate new tuple in an INSERT/UPDATE */ ProjectionInfo *ri_projectNew; /* arrays of stored generated columns expr states, for INSERT and UPDATE */ ExprState **ri_GeneratedExprsI; ExprState **ri_GeneratedExprsU; } for the struct ResultRelInfo, i've checked the above fields. I think first ri_RowIdAttNo applies to MERGE also. so the comments may not be correct? Other files comments are fine. see: ExecInitModifyTable /* * For UPDATE/DELETE/MERGE, find the appropriate junk attr now, either * a 'ctid' or 'wholerow' attribute depending on relkind. For foreign * tables, the FDW might have created additional junk attr(s), but * those are no concern of ours. */ if (operation == CMD_UPDATE || operation == CMD_DELETE || operation == CMD_MERGE)
On Mon, 12 Aug 2024 at 22:03, jian he <jian.universality@gmail.com> wrote: > AttrNumber ri_RowIdAttNo; > > /* arrays of stored generated columns expr states, for INSERT and UPDATE */ > ExprState **ri_GeneratedExprsI; > ExprState **ri_GeneratedExprsU; > } > for the struct ResultRelInfo, i've checked the above fields. > > I think first ri_RowIdAttNo applies to MERGE also. so the comments may > not be correct? Yeah, ri_RowIdAttNo is used for MERGE. We should fix that comment. > Other files comments are fine. I'd say ri_GeneratedExprsI and ri_GeneratedExprsU are also used for MERGE and the comment for those is also outdated. See: ExecMergeMatched -> ExecUpdateAct -> ExecUpdatePrepareSlot -> ExecComputeStoredGenerated(..., CMD_UPDATE) ExecMergeNotMatched -> ExecInsert -> ExecComputeStoredGenerated(..., CMD_INSERT) David
On Mon, 12 Aug 2024 at 22:32, David Rowley <dgrowleyml@gmail.com> wrote: > > On Mon, 12 Aug 2024 at 22:03, jian he <jian.universality@gmail.com> wrote: > > I think first ri_RowIdAttNo applies to MERGE also. so the comments may > > not be correct? > > Yeah, ri_RowIdAttNo is used for MERGE. We should fix that comment. > > > Other files comments are fine. > > I'd say ri_GeneratedExprsI and ri_GeneratedExprsU are also used for > MERGE and the comment for those is also outdated. See: I've pushed a patch to fix these. Thanks for the report. David