| From: | Andrew Dunstan <andrew(at)dunslane(dot)net> |
|---|---|
| To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
| Cc: | PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org> |
| Subject: | Re: Allow specifying NULL default in pg_proc.dat for "any" arguments |
| Date: | 2026-03-06 17:34:24 |
| Message-ID: | a9b29416-6412-4f31-be0c-10c030df91ac@dunslane.net |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
On 2026-03-06 Fr 11:53 AM, Tom Lane wrote:
> Andrew Dunstan <andrew(at)dunslane(dot)net> writes:
>> On 2026-03-06 Fr 11:01 AM, Tom Lane wrote:
>>> If we need a TypInfo[] entry for ANY, let's just add it.
>>> But I haven't seen any use cases?
>> Well, I guess that raises the question of what we get if we now do
>> CREATE OR REPLACE FUNCTION foo(x int, VARIADIC y "any" DEFAULT NULL);
>> which is the use case I was trying to avoid :-)
>> Turns out it sets the type to "unknown" and the constlen to -2.
> Hmm. Not sure if that matters or not. In any case, my objection
> to the proposed patch was its side-effects on defaults that are of
> regular data types. I don't think we want to change that behavior.
Yeah. Here for posterity is a patch for that. But I won't pursue it
because ...
>
> What exactly would be the use case for a default like the above?
> I can see the point of, say, trying to merge the two variants of
> jsonb_build_array:
>
> CREATE FUNCTION pg_catalog.jsonb_build_array(VARIADIC "any") ...
>
> CREATE FUNCTION pg_catalog.jsonb_build_array() ...
>
> but introducing a default wouldn't help us do that, because it'd
> still end up looking like a 1-argument call not a no-argument call.
>
>
I was looking at it from the perspective of the pg_get_database_ddl
patch. But that seems a bit baroque. I think we can make life a lot
simpler here by using "VARIADIC options TEXT DEFAULT NULL".
cheers
andrew
--
Andrew Dunstan
EDB: https://www.enterprisedb.com
| Attachment | Content-Type | Size |
|---|---|---|
| 0001-Allow-NULL-defaults-for-pseudo-type-parameters-in-pg.patch2 | text/plain | 3.0 KB |
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Nazir Bilal Yavuz | 2026-03-06 17:39:04 | Re: Speed up COPY FROM text/CSV parsing using SIMD |
| Previous Message | Jacob Champion | 2026-03-06 17:10:37 | Re: [oauth] Per connection auth hooks in libpq |