In json code, clean up temp memory contexts after processing.
authorAndrew Dunstan
Mon, 3 Feb 2014 15:39:13 +0000 (10:39 -0500)
committerAndrew Dunstan
Mon, 3 Feb 2014 15:39:13 +0000 (10:39 -0500)
Craig Ringer.

src/backend/utils/adt/jsonfuncs.c

index bcb9354364a95258f2f837d009b4abfbe41c0caa..cf66a28cf2c044b102d9cebf81b2f0f1c52f1b05 100644 (file)
@@ -958,6 +958,8 @@ each_worker(PG_FUNCTION_ARGS, bool as_text)
 
    pg_parse_json(lex, sem);
 
+   MemoryContextDelete(state->tmp_cxt); 
+
    rsi->setResult = state->tuple_store;
    rsi->setDesc = state->ret_tdesc;
 
@@ -1125,6 +1127,8 @@ json_array_elements(PG_FUNCTION_ARGS)
 
    pg_parse_json(lex, sem);
 
+   MemoryContextDelete(state->tmp_cxt); 
+
    rsi->setResult = state->tuple_store;
    rsi->setDesc = state->ret_tdesc;