diff --git a/src/pl/plpython/expected/plpython_subtransaction.out b/src/pl/plpython/expected/plpython_subtransaction.out index d9a830dfcc..2a3253684f 100644 --- a/src/pl/plpython/expected/plpython_subtransaction.out +++ b/src/pl/plpython/expected/plpython_subtransaction.out @@ -239,7 +239,7 @@ AS $$ try: with plpy.subtransaction() as s: s.__exit__(None, None, None) -except ValueError as e: +except ValueError, e: raise ValueError(e) $$ LANGUAGE plpythonu; SELECT subtransaction_exit_without_enter(); diff --git a/src/pl/plpython/expected/plpython_subtransaction_0.out b/src/pl/plpython/expected/plpython_subtransaction_0.out index cc6d9c0e93..b9abf84f32 100644 --- a/src/pl/plpython/expected/plpython_subtransaction_0.out +++ b/src/pl/plpython/expected/plpython_subtransaction_0.out @@ -222,11 +222,14 @@ ERROR: could not compile PL/Python function "subtransaction_enter_subtransactio DETAIL: SyntaxError: invalid syntax (line 3) CREATE FUNCTION subtransaction_exit_subtransaction_in_with() RETURNS void AS $$ -with plpy.subtransaction() as s: - s.__exit__(None, None, None) +try: + with plpy.subtransaction() as s: + s.__exit__(None, None, None) +except ValueError, e: + raise ValueError(e) $$ LANGUAGE plpythonu; ERROR: could not compile PL/Python function "subtransaction_exit_subtransaction_in_with" -DETAIL: SyntaxError: invalid syntax (line 3) +DETAIL: SyntaxError: invalid syntax (line 4) SELECT subtransaction_exit_without_enter(); ERROR: ValueError: this subtransaction has not been entered CONTEXT: Traceback (most recent call last): diff --git a/src/pl/plpython/expected/plpython_subtransaction_5.out b/src/pl/plpython/expected/plpython_subtransaction_5.out index c3be130268..854d763a95 100644 --- a/src/pl/plpython/expected/plpython_subtransaction_5.out +++ b/src/pl/plpython/expected/plpython_subtransaction_5.out @@ -222,11 +222,14 @@ ERROR: could not compile PL/Python function "subtransaction_enter_subtransactio DETAIL: SyntaxError: invalid syntax (, line 3) CREATE FUNCTION subtransaction_exit_subtransaction_in_with() RETURNS void AS $$ -with plpy.subtransaction() as s: - s.__exit__(None, None, None) +try: + with plpy.subtransaction() as s: + s.__exit__(None, None, None) +except ValueError, e: + raise ValueError(e) $$ LANGUAGE plpythonu; ERROR: could not compile PL/Python function "subtransaction_exit_subtransaction_in_with" -DETAIL: SyntaxError: invalid syntax (, line 3) +DETAIL: SyntaxError: invalid syntax (, line 4) SELECT subtransaction_exit_without_enter(); ERROR: ValueError: this subtransaction has not been entered CONTEXT: Traceback (most recent call last): diff --git a/src/pl/plpython/sql/plpython_subtransaction.sql b/src/pl/plpython/sql/plpython_subtransaction.sql index 572930f8bf..ebd3c6e416 100644 --- a/src/pl/plpython/sql/plpython_subtransaction.sql +++ b/src/pl/plpython/sql/plpython_subtransaction.sql @@ -161,7 +161,7 @@ AS $$ try: with plpy.subtransaction() as s: s.__exit__(None, None, None) -except ValueError as e: +except ValueError, e: raise ValueError(e) $$ LANGUAGE plpythonu;