From: | Petr Jelinek <pjmodos(at)pjmodos(dot)net> |
---|---|
To: | PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org> |
Cc: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Alvaro Herrera <alvherre(at)commandprompt(dot)com> |
Subject: | Anonymous code blocks (was: Re: GRANT ON ALL IN schema) |
Date: | 2009-08-28 23:39:18 |
Message-ID: | 4A986AA6.7030505@pjmodos.net |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
> The question is still valid, though it's better put in your words - do
> we want to refactor the existing compiler or write a separate one ?
So, for now I went with the path of custom compiler and current executor.
I attached current version of the patch. I don't expect this to get
committed or anything, but I'd like other eyes to take a look at it.
What it does:
Adds laninline Oid which points to function handling inline code (aka
anonymous code block).
Adds DO $$some code$$ [ LANGUAGE lanname ] syntax which sends the source
code to that laninline function of the specified language (or language
set by default_do_language guc).
There is implementation for plpgsql with simpler compiler which still
creates function struct for the executor (I believe there is no harm in
adjusting executor later, when current one works, just does unnecessary
stuff).
There is doc and a simple regression test for plpgsql implementation.
--
Regards
Petr Jelinek (PJMODOS)
Attachment | Content-Type | Size |
---|---|---|
inlinepl-2009-08-28.diff.gz | application/x-tar | 9.0 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Ron Mayer | 2009-08-29 00:03:00 | Re: Add YAML option to explain |
Previous Message | Andrew Dunstan | 2009-08-28 23:37:58 | Re: Linux LSB init script |