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)