Re: bugfix patch for json_array_elements

Поиск
Список
Период
Сортировка
От Andrew Dunstan
Тема Re: bugfix patch for json_array_elements
Дата
Msg-id 52EFC6E4.5080009@dunslane.net
обсуждение исходный текст
Ответ на Re: bugfix patch for json_array_elements  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-hackers
On 02/03/2014 11:12 AM, Tom Lane wrote:
> Andrew Dunstan <andrew@dunslane.net> writes:
>> On 02/02/2014 08:54 PM, Craig Ringer wrote:
>>> The attached patch deletes the context after use, bringing performance
>>> back into line. It should be backpatched to 9.3.
>> Hmm. I guess I was assuming that the tmp_cxt would be cleaned up at the
>> end of the function since it's a child of the CurrentMemoryContext.
> The executor does MemoryContextReset, not
> MemoryContextResetAndDeleteChildren, on the per-tuple context.  That means
> that child contexts will be reset, not deleted.  I seem to recall some
> discussions about changing that, or even redefining MemoryContextReset to
> automatically delete child contexts; but it would take a fair amount of
> research to be sure such a change was safe.
>

Good to know.

Is it worth a note in src/backend/utils/mmgr/README so people are warned 
against making the same mistake I did? Both of these are set-returning 
functions operating in materialize mode - not sure if that makes any 
difference.

cheers

andrew



В списке pgsql-hackers по дате отправления:

Предыдущее
От: Andres Freund
Дата:
Сообщение: Re: slow startup due to LWLockAssign() spinlock
Следующее
От: Tom Lane
Дата:
Сообщение: Re: bgworker crashed or not?