| From: | Peter Eisentraut <peter(at)eisentraut(dot)org> |
|---|---|
| To: | pgsql-committers(at)lists(dot)postgresql(dot)org |
| Subject: | pgsql: plpython: Streamline initialization |
| Date: | 2026-01-15 11:16:46 |
| Message-ID: | E1vgLLJ-000ajP-1F@gemulon.postgresql.org |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-committers |
plpython: Streamline initialization
The initialization of PL/Python (the Python interpreter, the global
state, the plpy module) was arranged confusingly across different
functions with unclear and confusing boundaries. For example,
PLy_init_interp() said "Initialize the Python interpreter ..." but it
didn't actually do this, and PLy_init_plpy() said "initialize plpy
module" but it didn't do that either. After this change, all the
global initialization is called directly from _PG_init(), and the plpy
module initialization is all called from its registered initialization
function PyInit_plpy().
Reviewed-by: Chao Li <li(dot)evan(dot)chao(at)gmail(dot)com>
Reviewed-by: Matheus Alcantara <matheusssilv97(at)gmail(dot)com>
Reviewed-by: li carol <carol(dot)li2025(at)outlook(dot)com>
Reviewed-by: Kirill Reshke <reshkekirill(at)gmail(dot)com>
Discussion: https://www.postgresql.org/message-id/f31333f1-fbb7-4098-b209-bf2d71fbd4f3%40eisentraut.org
Branch
------
master
Details
-------
https://git.postgresql.org/pg/commitdiff/da265a87175be469db6c178b57862ad1fb26dd04
Modified Files
--------------
src/pl/plpython/plpy_main.c | 78 ++++++++++++++++++++-------------------
src/pl/plpython/plpy_plpymodule.c | 25 +------------
src/pl/plpython/plpy_plpymodule.h | 1 -
3 files changed, 41 insertions(+), 63 deletions(-)
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Heikki Linnakangas | 2026-01-15 11:35:09 | pgsql: Remove some unnecessary code from multixact truncation |
| Previous Message | Peter Eisentraut | 2026-01-15 09:58:20 | pgsql: plpython: Remove commented out code |