Re: generating function default settings from pg_proc.dat

Andrew Dunstan <andrew@dunslane.net>

From: Andrew Dunstan <andrew@dunslane.net>
To: Tom Lane <tgl@sss.pgh.pa.us>, Andres Freund <andres@anarazel.de>
Cc: PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2026-02-17T19:07:42Z
Lists: pgsql-hackers
On 2026-02-17 Tu 1:41 PM, Tom Lane wrote:
> Here's the promised v2, which addresses all your review comments.
>
> With respect to the list of supported types in bki.sgml: I wonder if
> we should just drop that, because it evidently hasn't been maintained
> well.  It wasn't at all in sync with the actual contents of TypInfo[].
> I made it be so, but ...
>
> Poking further at that, I found that there were a lot of TypInfo[]
> entries that were not actually used and seem to have just been
> cargo-culted in.  So this patch removes all the ones that aren't
> demonstrably necessary to get through initdb.  Maybe that's too
> aggressive, but in view of the potential for maintenance errors
> (cf 7cdb633c8) I don't think we should be carrying unused entries
> there.
>
> 			


That makes sense. I haven't tested it, but the code looks pretty sane. 
Nice job. I guess if we ever want to specify a default that's not a 
Const for some reason we'd have to fall back on the system_views 
mechanism. But that's not very likely.


cheers


andrew


--
Andrew Dunstan
EDB: https://www.enterprisedb.com




Commits

  1. Simplify creation of built-in functions with non-default ACLs.

  2. Be more wary of false matches in initdb's replace_token().

  3. Simplify creation of built-in functions with default arguments.