Re: Determine operator from it's function

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: Determine operator from it's function
Дата
Msg-id 30143.1435987987@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Re: Determine operator from it's function  (Jim Nasby <Jim.Nasby@BlueTreble.com>)
Ответы Re: Determine operator from it's function  (Jim Nasby <Jim.Nasby@BlueTreble.com>)
Список pgsql-hackers
Jim Nasby <Jim.Nasby@BlueTreble.com> writes:
> On 7/3/15 2:33 AM, Heikki Linnakangas wrote:
>> On 07/03/2015 01:20 AM, Jim Nasby wrote:
>>> Is there a way to determine the operator that resulted in calling the
>>> operator function? I thought fcinfo->flinfo->fn_expr might get set to
>>> the OpExpr, but seems it can be a FuncExpr even when called via an
>>> operator...

>> Don't think there is. Why do you need to know?

> I'd like to support arbitrary operators in variant.

Why would you expect there to be multiple operators pointing at the same
function?  If there were multiple operators pointing at the same function,
why would you need to distinguish them?  ISTM that such a situation would
necessarily mean that there was no distinction worthy of notice.

(The particular situation you are bitching about comes from the fact that
eval_const_expressions's simplify_functions code deliberately ignores any
distinction between operators and functions.  But for its purposes, that
is *correct*, and I will strongly resist any claim that it isn't.  If you
are unhappy then you defined your operators wrongly.)
        regards, tom lane



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

Предыдущее
От: Amit Kapila
Дата:
Сообщение: Re: More logging for autovacuum
Следующее
От: Marco Atzeri
Дата:
Сообщение: Re: PostgreSQL 9.5 Alpha 1 build fail with perl 5.22