When we are in error recursion trouble, arrange to suppress translation and
Tom Lane <tgl@sss.pgh.pa.us>
When we are in error recursion trouble, arrange to suppress translation and encoding conversion of any elog/ereport message being sent to the frontend. This generalizes a patch that I put in last October, which suppressed translation of only specific messages known to be associated with recursive can't-translate-the-message behavior. As shown in bug #4680, we need a more general answer in order to have some hope of coping with broken encoding conversion setups. This approach seems a good deal less klugy anyway. Patch in all supported branches.
Files
| Path | Change | +/− |
|---|---|---|
| src/backend/libpq/pqformat.c | modified | +31 −2 |
| src/backend/utils/error/elog.c | modified | +61 −32 |
| src/backend/utils/mb/wchar.c | modified | +2 −15 |
| src/include/libpq/pqformat.h | modified | +2 −1 |