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)


Reply via email to