Re: SPI_exec doesn't return proc context (on 9.1)
От | Pavel Stehule |
---|---|
Тема | Re: SPI_exec doesn't return proc context (on 9.1) |
Дата | |
Msg-id | AANLkTimcuZ9LxPGpjKT67y+CjHBCo4visJ=HJMF10tBw@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: SPI_exec doesn't return proc context (on 9.1) (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: SPI_exec doesn't return proc context (on 9.1)
|
Список | pgsql-hackers |
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 >
В списке pgsql-hackers по дате отправления: