From: | Vadim Mikheev <vadim(at)krs(dot)ru> |
---|---|
To: | Jan Wieck <jwieck(at)debis(dot)com> |
Cc: | PostgreSQL HACKERS <pgsql-hackers(at)postgreSQL(dot)org> |
Subject: | Re: [HACKERS] PL/pgSQL and SPI |
Date: | 1999-01-27 21:27:25 |
Message-ID: | 36AF84BD.2E216570@krs.ru |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Jan Wieck wrote:
>
> 1. I've just committed some changes to PL/pgSQL and the SPI
> manager.
>
> It's a speedup of PL/pgSQL execution by calling
> ExecEvalExpr() in the executor directly for simple
> expressions that return one single Datum.
>
...
>
> To be able to do so I've moved some of the declarations
> from spi.c into a new header spi_priv.h so someone has
> access to the _SPI_plan structure for past preparing
> plan-/querytree analysis. And I've added two silly
> functions SPI_push() and SPI_pop() that simply
> increment/decrement the _SPI_curid value. This is
> required for calling ExecEvalExpr(), because there could
> be functions evaluated that use SPI themself and
> otherwise they could not connect to the SPI manager. They
> are dangerous and I'm in doubt if we should document
> them.
BTW, Jan, did you consider ability to add new function
for fast expression evaluation to SPI itself and than just
use this func in PL/pgSQL?
This function seems to be generally usefull.
And we could avoid SPI_push/SPI_pop...
Vadim
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 1999-01-27 21:44:32 | Re: [HACKERS] Another speedup idea (two, even) |
Previous Message | Tom Lane | 1999-01-27 20:18:47 | Something wacko about EXPLAIN cost stats |