2011/1/29 Tom Lane <tgl@sss.pgh.pa.us>:
> Pavel Stehule <pavel.stehule@gmail.com> writes:
>> I am playing with demos for PostgreSQL's Prague Developer Day and I
>> found a strange behave. SPI_exec should to return to proc context. But
>> it isn't true.
>
> Yes it is.
ah, I though a savedctx, but it restore procctx, that is child contextof SPI too.
>
>> In following demo, I have to play with MemoryContext
>> when I would to get a correct result. Is it ok?
>
> The commented-out lines of code don't appear to have anything to do with
> what you claim the problem is. What it looks to me like you're doing is
> copying the result out to the function's calling context, which is not
> either of the SPI contexts established by SPI_connect (and removed by
> SPI_finish).
>
> The less crocky way to do that is to use SPI_palloc() for something that
> should be allocated in the outer context.
I understand. Is there some way, where I can use a cstring_to_text
function? There isn't simple way to get a saveCtx.
some like SPI_copyDatum ... ?
Pavel
>
> regards, tom lane
>