From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Peter Eisentraut <peter(at)eisentraut(dot)org> |
Cc: | pgsql-bugs <pgsql-bugs(at)postgresql(dot)org> |
Subject: | Re: CREATE CAST allows creation of binary-coercible cast to range over domain |
Date: | 2024-08-20 14:46:15 |
Message-ID: | 1537781.1724165175@sss.pgh.pa.us |
Views: | Whole Thread | Raw Message | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
Peter Eisentraut <peter(at)eisentraut(dot)org> writes:
> CREATE CAST disallows creating a binary-coercible cast to a domain
> (because that would bypass checking the domain constraints). But it
> allows it if the domain is wrapped inside a range type:
> ...
> This particular case seems straightforward to fix, but maybe there are
> also cases with more nesting to consider.
I think it's an oversight that we allow binary-coercible casts
involving range types at all. There are no other nesting cases to
worry about, because CreateCast already rejects binary-coercible casts
applied to composites and arrays, explaining
* We know that composite, enum and array types are never binary-
* compatible with each other. They all have OIDs embedded in them.
But range types also embed their own OID, so I don't see why that
concern doesn't apply to them.
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2024-08-20 17:30:39 | Re: CREATE CAST allows creation of binary-coercible cast to range over domain |
Previous Message | Tom Lane | 2024-08-20 13:16:12 | Re: server crash on raspberry pi for large queries |