Re: Remove unnecessary check on set-returning functions in values_lists - Mailing list pgsql-hackers

From Tom Lane
Subject Re: Remove unnecessary check on set-returning functions in values_lists
Date
Msg-id 3519876.1724900636@sss.pgh.pa.us
Whole thread Raw
List pgsql-hackers
Andrei Lepikhov <lepihov@gmail.com> writes:
> I think, the expression_returns_set examination doesn't necessary and we 
> can replace it with an assertion, if needed (see attachment).

I think you may be right that this test is not really necessary given
the upstream parser test, but nonetheless I'm not inclined to remove
it.  The upstream test is very far away in code terms, and there are
nearby steps like SQL-function inlining that make it less than 100%
obvious that an expression that was SRF-free at parse time still is
when we get here.  I also don't care for destroying the parallel that
the comment mentions to the checks done before pulling up a subquery.

I'm reminded of Weinberg’s Law:

    If builders built buildings the way programmers wrote
    programs, then the first woodpecker that came along would
    destroy civilization.

Unless there's a demonstrable, nontrivial performance hit from
this check, I think we should leave it alone.

            regards, tom lane



pgsql-hackers by date:

Previous
From: Richard Guo
Date:
Subject: Re: Eager aggregation, take 3
Next
From: Masahiko Sawada
Date:
Subject: Re: Pgoutput not capturing the generated columns