summaryrefslogtreecommitdiff
path: root/doc/src
diff options
context:
space:
mode:
authorTom Lane2008-10-27 19:37:56 +0000
committerTom Lane2008-10-27 19:37:56 +0000
commit771374b34b52e35eaa9a7f0c7465e5b52afde012 (patch)
tree56c31e9aa5cc812a34ab97c3ab46c8bd690f4c19 /doc/src
parentca2ecbdaca0c95ea453d73959ef295ab70ac2040 (diff)
Install a more robust solution for the problem of infinite error-processing
recursion when we are unable to convert a localized error message to the client's encoding. We've been over this ground before, but as reported by Ibrar Ahmed, it still didn't work in the case of conversion failures for the conversion-failure message itself :-(. Fix by installing a "circuit breaker" that disables attempts to localize this message once we get into recursion trouble. Patch all supported branches, because it is in fact broken in all of them; though I had to add some missing translations to the older branches in order to expose the failure in the particular test case I was using.
Diffstat (limited to 'doc/src')
-rw-r--r--doc/src/sgml/sources.sgml6
1 files changed, 3 insertions, 3 deletions
diff --git a/doc/src/sgml/sources.sgml b/doc/src/sgml/sources.sgml
index 6ff47c989c9..909d6364e2c 100644
--- a/doc/src/sgml/sources.sgml
+++ b/doc/src/sgml/sources.sgml
@@ -1,5 +1,5 @@
<!--
-$Header: /cvsroot/pgsql/doc/src/sgml/sources.sgml,v 2.11 2003/07/27 18:37:52 tgl Exp $
+$Header: /cvsroot/pgsql/doc/src/sgml/sources.sgml,v 2.11.4.1 2008/10/27 19:37:56 tgl Exp $
-->
<chapter id="source">
@@ -179,7 +179,7 @@ less -x4
<para>
<function>errmsg_internal</>(const char *msg, ...) is the same as
<function>errmsg</>, except that the message string will not be
- included in the internationalization message dictionary.
+ translated nor included in the internationalization message dictionary.
This should be used for <quote>can't happen</> cases that are probably
not worth expending translation effort on.
</para>
@@ -255,7 +255,7 @@ less -x4
ereport(level, (errmsg_internal("format string", ...)));
</programlisting>
Notice that the SQLSTATE errcode is always defaulted, and the message
- string is not included in the internationalization message dictionary.
+ string is not subject to translation.
Therefore, <function>elog</> should be used only for internal errors and
low-level debug logging. Any message that is likely to be of interest to
ordinary users should go through <function>ereport</>. Nonetheless,