Re: CALL versus procedures with output-only arguments
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Peter Eisentraut <peter.eisentraut@enterprisedb.com>
Cc: Robert Haas <robertmhaas@gmail.com>,
PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2021-05-26T17:28:07Z
Lists: pgsql-hackers
Peter Eisentraut <peter.eisentraut@enterprisedb.com> writes: > AFAICT, your patch does not main the property that > CREATE PROCEDURE p1(OUT int, OUT int) > corresponds to > DROP PROCEDURE p1(int, int) > which would be bad. Why? If it actually works that way right now, I'd maintain strenously that it's broken. The latter should be referring to a procedure with two IN arguments. Even if the SQL spec allows fuzziness about that, we cannot afford to, because we have a more generous view of overloading than the spec does. (As far as I could tell from looking at the spec yesterday, they think that you aren't allowed to have two procedures with the same name/schema and same number of arguments, regardless of the details of those arguments. Up with that I will not put.) > I'm not opposed to reverting the feature if we can't find a good > solution in a hurry. I'm not looking to revert the feature. I mainly want a saner catalog representation, and less inconsistency in object naming (which is tightly tied to the first thing). regards, tom lane
Commits
-
Reconsider the handling of procedure OUT parameters.
- e56bce5d4378 14.0 landed