pg.ddx.io  pgsql-hackers@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Chapman Flack <jcflack@acm.org>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: PostgreSQL Hackers <pgsql-hackers@postgresql.org>
Cc: Peter Eisentraut <peter@eisentraut.org>
Subject: Re: FmgrInfo allocation patterns (and PL handling as staged programming)
Date: Mon, 14 Apr 2025 20:32:28 -0400
Message-ID: <67FDA91C.1060909@acm.org> (raw)
In-Reply-To: <3291225.1743993461@sss.pgh.pa.us>
References: <67F2B767.9040507@acm.org>
	<2965818.1743960827@sss.pgh.pa.us>
	<67F2D87F.1000709@acm.org>
	<2978258.1743968866@sss.pgh.pa.us>
	<67F30DDA.4000509@acm.org>
	<3112950.1743984111@sss.pgh.pa.us>
	<67F31F20.6090706@acm.org>
	<3291225.1743993461@sss.pgh.pa.us>

On 04/06/25 22:37, Tom Lane wrote:
> Here's a draft patch to fix the bogus dependencies.  As given this'd
> only be okay for HEAD, since I doubt we can get away with changing
> ProcedureCreate()'s signature in stable branches ... In the back branches
> we could make ProcedureCreate() deconstruct the OID array it's given and
> then repeat the transform lookups, but ugh. ...
> 
> BTW, I feel a little uncomfortable with the idea that we're adding
> dependencies on objects that are explicitly mentioned nowhere in the
> pg_proc entry.

Pursuing that idea a bit further, was there a compelling original reason
the column in pg_proc had to be protrftypes and not just protransforms?

The transforms have been looked up at ProcedureCreate time.

Any PL that supports transforms has to repeat the transform lookups
if there are protrftypes present.

Any PL that doesn't support transforms needs only to check for presence
and say "sorry, I don't support those", which it could do just as easily
with a list of transforms as with a list of types.

Regards,
-Chap





view thread (15+ messages)  latest in thread

Message-ID: <67FDA91C.1060909@acm.org>
Permalink:  ../67FDA91C.1060909@acm.org/
Also on:    postgresql.org/message-id/67FDA91C.1060909@acm.org

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-hackers@postgresql.org
  Cc: jcflack@acm.org, tgl@sss.pgh.pa.us, peter@eisentraut.org
  Subject: Re: FmgrInfo allocation patterns (and PL handling as staged programming)
  In-Reply-To: <67FDA91C.1060909@acm.org>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox