pgsql: Move return statements out of PG_TRY blocks. - Mailing list pgsql-committers

From Nathan Bossart
Subject pgsql: Move return statements out of PG_TRY blocks.
Date
Msg-id E1puiMb-000W7W-R7@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Move return statements out of PG_TRY blocks.

If we exit a PG_TRY block early via "continue", "break", "goto", or
"return", we'll skip unwinding its exception stack.  This change
moves a couple of such "return" statements in PL/Python out of
PG_TRY blocks.  This was introduced in d0aa965c0a and affects all
supported versions.

We might also be able to add compile-time checks to prevent
recurrence, but that is left as a future exercise.

Reported-by: Mikhail Gribkov, Xing Guo
Author: Xing Guo
Reviewed-by: Michael Paquier, Andres Freund, Tom Lane
Discussion: https://postgr.es/m/CAMEv5_v5Y%2B-D%3DCO1%2Bqoe16sAmgC4sbbQjz%2BUtcHmB6zcgS%2B5Ew%40mail.gmail.com
Discussion: https://postgr.es/m/CACpMh%2BCMsGMRKFzFMm3bYTzQmMU5nfEEoEDU2apJcc4hid36AQ%40mail.gmail.com
Backpatch-through: 11 (all supported versions)

Branch
------
REL_12_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/24964394a972d0e7b030bf02a600bceea0be72d3

Modified Files
--------------
src/pl/plpython/plpy_exec.c | 54 ++++++++++++++++++++++++++++++---------------
1 file changed, 36 insertions(+), 18 deletions(-)


pgsql-committers by date:

Previous
From: Alvaro Herrera
Date:
Subject: pgsql: Fix ExecCheckPermissions call in RI_Initial_Check
Next
From: Peter Eisentraut
Date:
Subject: pgsql: Fix prove_installcheck when used with PGXS