Ashutosh Sharma wrote:
> I am basically talking about the following lines of code in
> ATRewriteTable() function.
>
> /*
> * Switch to per-tuple memory context and reset it for each tuple
> * produced, so we don't leak memory.
> */
> oldCxt = MemoryContextSwitchTo(GetPerTupleMemoryContext(estate));
Perhaps a memory context switch is so cheap that adding a branch to
verify whether it's needed is more expensive than just doing it all the
time. You could prove me wrong by measuring it.
--
Álvaro Herrera https://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services