From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Shachar Shemesh <psql(at)shemesh(dot)biz> |
Cc: | PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: Casts question |
Date: | 2004-06-20 20:51:48 |
Message-ID: | 9978.1087764708@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Shachar Shemesh <psql(at)shemesh(dot)biz> writes:
> Tom Lane wrote:
>> Yes, it can cast to varchar, but that doesn't help because there are no
>> varchar operators ;-). To resolve the operator, it has to promote both
>> sides to text, and you didn't offer a cast to text.
>>
> I don't get it.
When we look to see whether we can cast from type X to type Y, we look
to see whether there is a pg_cast entry from type X to type Y. We do
not look to see if we could get there by casting X to some other type Z
and thence to Y (much less more-than-2-step sequences). There are a
number of good reasons for this, but I'll just mention speed and
surprise factors. Doing so would make for an exponential increase in
the number of potential cast paths, thereby probably paralyzing the
operator selection code instead of making it more useful. (Too many
alternatives are as bad as none.)
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Simon Riggs | 2004-06-20 21:11:03 | Re: Tablespaces |
Previous Message | Tom Lane | 2004-06-20 20:37:16 | Re: nested xacts and phantom Xids |