In ExecTidReScan, we have the following:

        /* If we are being passed an outer tuple, save it for runtime
key calc */
        if (exprCtxt != NULL)
                node->ss.ps.ps_ExprContext->ecxt_outertuple =
                        exprCtxt->ecxt_outertuple;

Is this dead code?  I have been pouring through all the callers of
ExecReScan() and AFAICT the only place where we use an exprCtxt that
is neither pushed down from a higher-level executor node nor NULL is
in ExecNestLoop().  So I think that the only reason why we would need
this if we supported a nestloop with an inner tidscan.  But I don't
think we do, nor do I see an obvious application for such a thing.  A
romp through CVS history shows we have had some variant of this code
in ExecTidReScan since tid-scans were originally added, which makes me
suspicious that there was some point to this at least at one time, but
I haven't been able to figure out what it is/was.

...Robert

-- 
Sent via pgsql-hackers mailing list ([email protected])
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to