Commit c1c1886d authored by Peter Eisentraut's avatar Peter Eisentraut

Unset language-related locale settings in any case, otherwise psql will

speak in tongues and mess up the regression test diffs.
parent eee82d44
<!-- $PostgreSQL: pgsql/doc/src/sgml/regress.sgml,v 1.61 2009/02/11 14:03:41 petere Exp $ --> <!-- $PostgreSQL: pgsql/doc/src/sgml/regress.sgml,v 1.62 2009/02/12 13:26:03 petere Exp $ -->
<chapter id="regress"> <chapter id="regress">
<title id="regress-title">Regression Tests</title> <title id="regress-title">Regression Tests</title>
...@@ -218,11 +218,15 @@ gmake installcheck ...@@ -218,11 +218,15 @@ gmake installcheck
locale-related environment variables on locale-related environment variables on
the <command>make</command> command line, for example: the <command>make</command> command line, for example:
<programlisting> <programlisting>
gmake check LC_ALL=de_DE.utf8 gmake check LANG=de_DE.utf8
</programlisting> </programlisting>
or analogously to use no locale: (The regression test driver unsets <envar>LC_ALL</envar>, so it
does not work to choose the locale using that variable.) To use
no locale, either unset all locale-related environment variables
(or set them to <literal>C</literal>) or use the following
special invocation:
<programlisting> <programlisting>
gmake check LC_ALL=C gmake check NO_LOCALE=1
</programlisting> </programlisting>
When running the tests against an existing installation, the When running the tests against an existing installation, the
locale setup is determined by the existing installation. To locale setup is determined by the existing installation. To
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
* Portions Copyright (c) 1996-2009, PostgreSQL Global Development Group * Portions Copyright (c) 1996-2009, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California * Portions Copyright (c) 1994, Regents of the University of California
* *
* $PostgreSQL: pgsql/src/test/regress/pg_regress.c,v 1.60 2009/02/11 14:03:42 petere Exp $ * $PostgreSQL: pgsql/src/test/regress/pg_regress.c,v 1.61 2009/02/12 13:26:03 petere Exp $
* *
*------------------------------------------------------------------------- *-------------------------------------------------------------------------
*/ */
...@@ -694,18 +694,25 @@ initialize_environment(void) ...@@ -694,18 +694,25 @@ initialize_environment(void)
unsetenv("LC_COLLATE"); unsetenv("LC_COLLATE");
unsetenv("LC_CTYPE"); unsetenv("LC_CTYPE");
unsetenv("LC_MONETARY"); unsetenv("LC_MONETARY");
unsetenv("LC_MESSAGES");
unsetenv("LC_NUMERIC"); unsetenv("LC_NUMERIC");
unsetenv("LC_TIME"); unsetenv("LC_TIME");
unsetenv("LC_ALL");
unsetenv("LANG"); unsetenv("LANG");
unsetenv("LANGUAGE");
/* On Windows the default locale cannot be English, so force it */ /* On Windows the default locale cannot be English, so force it */
#if defined(WIN32) || defined(__CYGWIN__) #if defined(WIN32) || defined(__CYGWIN__)
putenv("LANG=en"); putenv("LANG=en");
#endif #endif
} }
/*
* Set translation-related settings to English; otherwise psql
* will produce translated messages and produce diffs. (XXX If we
* ever support translation of pg_regress, this needs to be moved
* elsewhere, where psql is actually called.)
*/
unsetenv("LANGUAGE");
unsetenv("LC_ALL");
putenv("LC_MESSAGES=C");
/* /*
* Set multibyte as requested * Set multibyte as requested
*/ */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment