Re: getTypeIOParam is wrong for domains over array types?

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: "Merlin Moncure" <mmoncure(at)gmail(dot)com>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: getTypeIOParam is wrong for domains over array types?
Date: 2007-03-19 15:42:17
Message-ID: 7247.1174318937@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

"Merlin Moncure" <mmoncure(at)gmail(dot)com> writes:
> On 3/19/07, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
>> I think probably the right solution is to adjust getTypeIOParam so that
>> it only examines typelem for base types (typtype = 'b'). Can anyone
>> see a downside to that?

> will that skip intermediate check constraints...so that if you have
> domain d1 int, d2 d1, d3 d2, and d2 has check constraint on it, will
> d2 constraint still get evaluated?

Yeah, that'll still work. The point here is that domain_in has to be
passed d3's type OID to start with. If we have a stack of nested
domains over an array type, they'll all have typelem equal to the array
element type (so that they can be subscripted the same as the base type
could be). I think you're confusing typelem with typbasetype ...

regards, tom lane

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Simon Riggs 2007-03-19 16:08:25 Re: CREATE INDEX and HOT (was Question:pg_classattributes and race conditions ?)
Previous Message Merlin Moncure 2007-03-19 15:36:37 Re: getTypeIOParam is wrong for domains over array types?