definition of evalfunc for execution of join condition

Поиск
Список
Период
Сортировка
От Esha Palta
Тема definition of evalfunc for execution of join condition
Дата
Msg-id 434D4C0F.6090405@it.iitb.ac.in
обсуждение исходный текст
Ответы Re: definition of evalfunc for execution of join condition  ("Jonah H. Harris" <jonah.harris@gmail.com>)
Список pgsql-hackers
ExecQual evaluates join conditions one at a time.It captures one condition and passes it to function ExecEvalExpr which
isactually a macro that invokes another function evalfunc( which is a function pointer that is set to the function
PostgreSQLwants to use to evaluate the expression. It's of
 
type:
typedef Datum (*ExprStateEvalFunc) (ExprState *expression,                ExprContext *econtext,                bool
*isNull,               ExprDoneCond *isDone);
 

The actual function called is probably be one of the ones in backend/executor/execQual.c. 
In execQual.c there are routines for evaluating each type of exprState nodes. Routines are normally called via the
ExecEvalExprmacro. 
 
Every function in execQual.c calls ExecEvalExpr macro by passing it as argument containing object of ExprState which
consistof evalfunc(routine) to call for execution of node.
 

I am not able to find out definition of function that is passed to ExecEvalExpr macro using an object of ExprState
type.
Please help me if you understand the problem.
Basically I want to know the defination of function where join conditions are evaluated(for example may be for Nested
LoopJoins)
 
Thanx in advance
Esha




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

Предыдущее
От: Simon Riggs
Дата:
Сообщение: Re: Spinlocks, yet again: analysis and proposed patches
Следующее
От: Eric Sproul
Дата:
Сообщение: Re: 8.1 beta1 -> beta2 upgrade question