Re: Add pg_basetype() function to obtain a DOMAIN base type - Mailing list pgsql-hackers

From jian he
Subject Re: Add pg_basetype() function to obtain a DOMAIN base type
Date
Msg-id CACJufxFo9WAW_J8A=wOq4G_eeB5KBd8TKJoRtVzfrkcQAVeCVQ@mail.gmail.com
Whole thread Raw
In response to Re: Add pg_basetype() function to obtain a DOMAIN base type  (Alexander Korotkov <aekorotkov@gmail.com>)
List pgsql-hackers
On Thu, Sep 28, 2023 at 11:56 AM Alexander Korotkov
<aekorotkov@gmail.com> wrote:
>
> The one thing triggering my perfectionism is that the patch does two
> syscache lookups instead of one.  In order to fit into one syscache
> lookup we could add "bool missing_ok" argument to
> getBaseTypeAndTypmod().  However, getBaseTypeAndTypmod() is heavily
> used in our codebase.  So, changing its signature would be invasive.
> Could we invent getBaseTypeAndTypmodExtended() (ideas for a better
> name?) that does all the job and supports "bool missing_ok" argument,
> and have getBaseTypeAndTypmod() as a wrapper with the same signature?
>

hi.
attached patch, not 100% confident it's totally correct, but one
syscache lookup.
another function getBaseTypeAndTypmodExtended added.

getBaseTypeAndTypmodExtended function signature:
Oid getBaseTypeAndTypmodExtended(Oid typid, int32 *typmod, bool missing_ok).

based on Steve Chavez's patch, minor doc changes.

Attachment

pgsql-hackers by date:

Previous
From: Andres Freund
Date:
Subject: Re: Change GUC hashtable to use simplehash?
Next
From: Jeff Davis
Date:
Subject: Re: Change GUC hashtable to use simplehash?