When and how many times does ExecSetParamPlan executes? - Mailing list pgsql-hackers

From Vaibhav Kaushal
Subject When and how many times does ExecSetParamPlan executes?
Date
Msg-id 1301070976.4573.9.camel@localhost
Whole thread Raw
Responses Re: When and how many times does ExecSetParamPlan executes?
List pgsql-hackers
Hello all, 

I was going through the Expression Evaluator and was trying to
understand how the expressions are formed and evaluated. I was informed
on the IRC channel that the PARAM nodes are quite important and many
well written client applications use PARAMs for sending query to the
backend. I found while looking at the ExecEvalParam function that a call
is made to the ExecSetParamPlan for the first time when the PARAM is
caught in the ExprState tree.

I am confused about how many times the call is made to the
ExecSetParamPlan funtion. Since the executor runs the expression
evaluator for each tuple (trying to find qual satisfaction) while the
expression tree is created only once, the possibility (from my
viewpoint) is that the ExecSetParamPlan might be called once only; which
would be when the first PARAM is encountered during the query execution.
OR, it might get called individually for each tuple (when the PARAM node
is caught in the tree). 

So I am confused about which case is it? Does it (ExecSetParamPlan) get
called on per-tuple basis or first encounter in the qual/expression
evaluation basis? 

Kindly help.

Regards, 
Vaibhav



pgsql-hackers by date:

Previous
From: Jeff Janes
Date:
Subject: Re: 2nd Level Buffer Cache
Next
From: Merlin Moncure
Date:
Subject: Re: Set hint bits upon eviction from BufMgr