Re: Assignment of valid collation for SET operations on queries with UNKNOWN types.
От | Rahila Syed |
---|---|
Тема | Re: Assignment of valid collation for SET operations on queries with UNKNOWN types. |
Дата | |
Msg-id | CAH2L28vRHT97hSwhn5krS9zfuqhUyTBsnLcTFdvMTQZx752XDA@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: Assignment of valid collation for SET operations on queries with UNKNOWN types. (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: Assignment of valid collation for SET operations on
queries with UNKNOWN types.
|
Список | pgsql-hackers |
Hello,
>And ideally fix things so
>that the type of the view column will be resolved as text, so that you>And ideally fix things so
>don't hit this condition in the first place; but there is no good that
>comes out of allowing a view to be created like this
Thank you for suggestion. Attached is a patch which resolves the columns
postgres=# create view v as select 'abc' a;
CREATE VIEW
postgres=# create view v1 as select 'def' a;
CREATE VIEW
postgres=# \d+ v1;
View "public.v1"
Column | Type | Collation | Nullable | Default | Storage | Description
--------+------+-----------+--
a | text | | | | extended |
View definition:
SELECT 'def'::text AS a;
postgres=# select a from v UNION select a from v1;
a
-----
abc
def
(2 rows)
AND
postgres=# select * from v order by 1;
a
-----
abc
(1 row)
postgres=# select * from v order by 1;
a
-----
abc
(1 row)
Kindly give your opinion.
Thank you,
Rahila Syed.
On Thu, Nov 17, 2016 at 8:59 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
Rahila Syed <rahilasyed90@gmail.com> writes:
> CASE 2:
> postgres=# create view v as select 'abc' a;
> 2016-11-16 15:28:48 IST WARNING: column "a" has type "unknown"
> 2016-11-16 15:28:48 IST DETAIL: Proceeding with relation creation anyway.
> WARNING: column "a" has type "unknown"
> DETAIL: Proceeding with relation creation anyway.
> CREATE VIEW
We really ought to make that a hard error. And ideally fix things so
that the type of the view column will be resolved as text, so that you
don't hit this condition in the first place; but there is no good that
comes out of allowing a view to be created like this.
> Attached WIP patch does that. Kindly let me know your opinion.
This is a seriously ugly kluge that's attacking the symptom not the
problem. Or really, a symptom not the problem. There are lots of
other symptoms, for instance
regression=# select * from v order by 1;
ERROR: failed to find conversion function from unknown to text
regards, tom lane
Вложения
В списке pgsql-hackers по дате отправления: