postgres.git / summary / log / commit / refs
commit b58bacdacbb15948cf24c786ebbb92213a2fe013
Author: Joe Conway <mail@joeconway.com>
Date: Thu May 10 05:57:19 2012 +0000
First released in: 9.2.0, 8.4.12, 9.0.8, 9.1.4
PL/pgSQL RETURN NEXT was leaking converted tuples, causing
out of memory when looping through large numbers of rows.
Flag the converted tuples to be freed. Complaint and patch
by Joe.
src/pl/plpgsql/src/pl_exec.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/pl/plpgsql/src/pl_exec.c b/src/pl/plpgsql/src/pl_exec.c
index a385b9a82a2..95e74b38dc4 100644
--- a/src/pl/plpgsql/src/pl_exec.c
+++ b/src/pl/plpgsql/src/pl_exec.c
@@ -2472,6 +2472,7 @@ exec_stmt_return_next(PLpgSQL_execstate *estate,
{
tuple = do_convert_tuple(tuple, tupmap);
free_conversion_map(tupmap);
+ free_tuple = true;
}
}
break;
[parent: fd71421b0187]