Compare variables of composite type with slightly different column types

Поиск
Список
Период
Сортировка
От Andrey Lepikhov
Тема Compare variables of composite type with slightly different column types
Дата
Msg-id 2b8a55b3-eb5d-4b77-03fb-4b60444d0937@postgrespro.ru
обсуждение исходный текст
Ответы Re: Compare variables of composite type with slightly different column types  (Andrey Lepikhov <a.lepikhov@postgrespro.ru>)
Список pgsql-hackers
Hi,
Researching on join selectivity improvement I stuck into the code in 
rowtypes.c:

/*
  * Have two matching columns, they must be same type
  */
if (att1->atttypid != att2->atttypid)
   ereport(ERROR, ...

Why, for example, isn't allowed next trivial query:

SELECT *
FROM
   (SELECT ROW(1::integer, 'robert'::text)) AS s1,
   (SELECT ROW(1::bigint, 'robert'::name)) AS s2
WHERE s1 = s2;

I guess, here the compatible_oper() routine can be used to find a 
appropriate operator, or something like that can be invented.
I looked into the 2cd7084 and a4424c5, but don't found any rationale.

-- 
Regards
Andrey Lepikhov
Postgres Professional



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

Предыдущее
От: Amit Kapila
Дата:
Сообщение: Re: Handle infinite recursion in logical replication setup
Следующее
От: "osumi.takamichi@fujitsu.com"
Дата:
Сообщение: RE: Skipping schema changes in publication