mirror of
https://github.com/postgres/postgres.git
synced 2025-09-02 04:21:28 +03:00
Enhanced error context support in PL/Python
Extract the "while creating return value" and "while modifying trigger row" parts of some error messages into another layer of error context. This will simplify the upcoming patch to improve data type support, but it can stand on its own.
This commit is contained in:
@@ -24,13 +24,15 @@ rv = plpy.execute(plan, u"\\x80", 1)
|
||||
return rv[0]["testvalue1"]
|
||||
' LANGUAGE plpythonu;
|
||||
SELECT unicode_return_error();
|
||||
ERROR: PL/Python: could not create string representation of Python object, while creating return value
|
||||
ERROR: PL/Python: could not create string representation of Python object
|
||||
DETAIL: <type 'exceptions.UnicodeEncodeError'>: 'ascii' codec can't encode character u'\x80' in position 0: ordinal not in range(128)
|
||||
CONTEXT: PL/Python function "unicode_return_error"
|
||||
CONTEXT: while creating return value
|
||||
PL/Python function "unicode_return_error"
|
||||
INSERT INTO unicode_test (testvalue) VALUES ('test');
|
||||
ERROR: PL/Python: could not compute string representation of Python object, while modifying trigger row
|
||||
ERROR: PL/Python: could not create string representation of Python object
|
||||
DETAIL: <type 'exceptions.UnicodeEncodeError'>: 'ascii' codec can't encode character u'\x80' in position 0: ordinal not in range(128)
|
||||
CONTEXT: PL/Python function "unicode_trigger_error"
|
||||
CONTEXT: while modifying trigger row
|
||||
PL/Python function "unicode_trigger_error"
|
||||
SELECT unicode_plan_error1();
|
||||
WARNING: PL/Python: <class 'plpy.Error'>: unrecognized error in PLy_spi_execute_plan
|
||||
CONTEXT: PL/Python function "unicode_plan_error1"
|
||||
|
Reference in New Issue
Block a user