-
- Downloads
Create a stack of pl/python "execution contexts".
This replaces the former global variable PLy_curr_procedure, and provides a place to stash per-call-level information. In particular we create a per-call-level scratch memory context. For the moment, the scratch context is just used to avoid leaking memory from datatype output function calls in PLyDict_FromTuple. There probably will be more use-cases in future. Although this is a fix for a pre-existing memory leakage bug, it seems sufficiently invasive to not want to back-patch; it feels better as part of the major rearrangement of plpython code that we've already done as part of 9.2. Jan Urbański
Showing
- src/pl/plpython/plpy_cursorobject.c 5 additions, 2 deletionssrc/pl/plpython/plpy_cursorobject.c
- src/pl/plpython/plpy_elog.c 5 additions, 3 deletionssrc/pl/plpython/plpy_elog.c
- src/pl/plpython/plpy_exec.c 6 additions, 2 deletionssrc/pl/plpython/plpy_exec.c
- src/pl/plpython/plpy_main.c 90 additions, 24 deletionssrc/pl/plpython/plpy_main.c
- src/pl/plpython/plpy_main.h 15 additions, 0 deletionssrc/pl/plpython/plpy_main.h
- src/pl/plpython/plpy_procedure.c 0 additions, 3 deletionssrc/pl/plpython/plpy_procedure.c
- src/pl/plpython/plpy_procedure.h 0 additions, 4 deletionssrc/pl/plpython/plpy_procedure.h
- src/pl/plpython/plpy_spi.c 6 additions, 2 deletionssrc/pl/plpython/plpy_spi.c
- src/pl/plpython/plpy_typeio.c 14 additions, 0 deletionssrc/pl/plpython/plpy_typeio.c
Loading
Please register or sign in to comment