Re: [HACKERS] Namespace of array of user defined types is confused by the parser in insert?

Поиск
Список
Период
Сортировка
От Krzysztof Nienartowicz
Тема Re: [HACKERS] Namespace of array of user defined types is confused by the parser in insert?
Дата
Msg-id CABY7=+4snSUFUP42VbuWLafTCPf1x1fStFP_RRCHd1NQ0PKxtg@mail.gmail.com
обсуждение исходный текст
Ответ на Re: [HACKERS] Namespace of array of user defined types is confused by the parser in insert?  (Andrew Dunstan <andrew@dunslane.net>)
Ответы Re: [HACKERS] Namespace of array of user defined types is confused by the parser in insert?
Список pgsql-general
> pgsql-general probably would be best. -hackers is for discussion of internals and development, not for usage
questions.

ok, thank you.

>
> [types have namespaces]
>
>
>> Is there any way of avoid this error different than having a single
>> type defined for all schemas?
>> Any hints appreciated..
>
>
>
> Probably your best bet is to put the types explicitly in the public
> namespace when they are created, instead of relying on the search path that
> happens to be in force at the time:
>
>   create type public.foo as ( ...);

Yes, I did it in the end, but such a solution makes things risky if
the types evolve and the namespaces might hold different schema
versions.
This error occurs when there is no search_path overlap, i.e. roles
have only their own namespace search_path, even without public path
set.

>
>
> Then, assuming that public is in your search path they will be picked up
> properly when used. Alternatively, you can namespace qualify them when used:
>
>   create type public.bar as (f1 public.foo[], ...);

These types are qualified when created - the error does not happen on
creation - there are two types in two different namespaces - it
happens only on insert where it is not possible to qualify the type's
namespace.
It looks like a bug in the planner to me.

Thanks,
Krzysztof

>
>
>
> cheers
>
> andrew

В списке pgsql-general по дате отправления:

Предыдущее
От: Abel Abraham Camarillo Ojeda
Дата:
Сообщение: Re: how to make an SQL UPDATE from record returning function
Следующее
От: Rafal Pietrak
Дата:
Сообщение: Re: how to make an SQL UPDATE from record returning function