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 по дате отправления: