Re: Anonymous code blocks - Mailing list pgsql-hackers

From Petr Jelinek
Subject Re: Anonymous code blocks
Date
Msg-id 4AB8CAC6.2070705@pjmodos.net
Whole thread Raw
In response to Re: Anonymous code blocks  (Dimitri Fontaine <dfontaine@hi-media.com>)
Responses Re: Anonymous code blocks
Re: Anonymous code blocks
List pgsql-hackers
Dimitri Fontaine napsal(a):
Hi,

Dimitri Fontaine <dfontaine@hi-media.com> writes: 
Patch applies cleanly and build cleanly too, basic examples are working
fine.    
I've been reading through the code and am going to mark it as ready for
commiter, as only remarks I have are probably because I do not know
enough about PostgreSQL internals, and the one I missed are in the same
category. 

The patch is easy to read and all it does looks straightforward, even
for me :)

Here we go:

*** a/src/backend/tcop/utility.c
--- b/src/backend/tcop/utility.c
...
*************** UtilityReturnsTuples(Node *parsetree)
*** 1147,1155 ****
...
- 		case T_ExplainStmt:
- 			return true;
- 

Is this not a oversight in the final patch? 

It is. I attached patch which does not have this part.


+ 	/* This is short-lived, so needn't allocate in function's cxt */
+ 	plpgsql_Datums = palloc(sizeof(PLpgSQL_datum *) * datums_alloc);
...
+ 	compile_tmp_cxt = MemoryContextSwitchTo(func_cxt);

I wonder why not having the datums into the func_cxt too. 

Actually I think we might not need that function memory context for anonymous code blocks at all since we don't cache compiled functions. But I am not sure so I basically copied it from standard function compiler to be on safe side. I am sure commiter will comment on this :)

-- 
Regards
Petr Jelinek (PJMODOS)
Attachment

pgsql-hackers by date:

Previous
From: Euler Taveira de Oliveira
Date:
Subject: Re: numeric_to_number() function skipping some digits
Next
From: Simon Riggs
Date:
Subject: Re: Hot Standby 0.2.1