Re: Notes about Pl/PgSQL assignment performance

Alvaro Herrera <alvherre@alvh.no-ip.org>

From: Alvaro Herrera <alvherre@alvh.no-ip.org>
To: Andrey Zhidenkov <pensnarik@gmail.com>
Cc: Pavel Stehule <pavel.stehule@gmail.com>, pgsql-hackers@lists.postgresql.org
Date: 2017-12-19T14:08:26Z
Lists: pgsql-hackers
Andrey Zhidenkov wrote:
> I've digged into the source code a little bit and found that chain:
> 
> PLPGSQL_STMT_ASSIGN -> exec_stmt_assign() -> exec_assign_expr()
> -> exec_eval_expr() -> exec_run_select()
> -> SPI_execute_plan_with_paramlist() -> _SPI_execute_plan() which finnaly
> calls PushActiveSnapshot() and PopActiveSnapshot() wich just do memory
> context allocations and use malloc() to copy snaphot.
> 
> Maybe I have missed something?

Yes.

-- 
Álvaro Herrera                https://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services