This has refreshed my fading memory. The patch seems like the best
solution. Is there any objection to applying it?
(Petr, I assume you intended to send this to a mailing list also)
cheers
andrew
-------- Original Message --------
Subject: Re: regression failures on WIndows in machines with some
non-English locales
Date: Tue, 01 Nov 2005 07:55:59 +0100
From: Petr Jelinek <[EMAIL PROTECTED]>
To: Tom Lane <[EMAIL PROTECTED]>, Andrew Dunstan <[EMAIL PROTECTED]>
References: <[EMAIL PROTECTED]> <[EMAIL PROTECTED]>
BTW Tom you should know it's not really failure it's just different
sorting of output in rules test (due to "ch" being one letter in my locale).
When I suggested --no-locale for regression test I ment something like
whats in attachement - this will not change current functionality just
adds option to set NO_LOCALE=something in make check commandline which
would enable me to setup buildfarm member (after patching buildfarm
client, I think it should be option which is off by default there too).
I want this aproach because forcing --no-locale for everybody could mean
that we won't find some errors - good example of this is "force C
locale for temp regression installations" thread
(http://archives.postgresql.org/pgsql-patches/2005-08/msg00352.php)
where we discussed it, you both might remmeber it.
--
Regards
Petr Jelinek (PJMODOS)
Index: GNUmakefile
===================================================================
RCS file: /projects/cvsroot/pgsql/src/test/regress/GNUmakefile,v
retrieving revision 1.52
diff -c -r1.52 GNUmakefile
*** GNUmakefile 28 Jul 2005 04:32:32 -0000 1.52
--- GNUmakefile 1 Nov 2005 06:34:49 -0000
***************
*** 28,33 ****
--- 28,38 ----
MAXCONNOPT += --max-connections=$(MAX_CONNECTIONS)
endif
+ # locale
+ NOLOCALE :=
+ ifdef NO_LOCALE
+ NOLOCALE += --no-locale
+ endif
##
## Prepare for tests
***************
*** 132,148 ****
check: all
-rm -rf ./testtablespace
mkdir ./testtablespace
! $(SHELL) ./pg_regress --temp-install --top-builddir=$(top_builddir)
--temp-port=$(TEMP_PORT) --schedule=$(srcdir)/parallel_schedule
--multibyte=$(MULTIBYTE) --load-language=plpgsql $(MAXCONNOPT)
installcheck: all
-rm -rf ./testtablespace
mkdir ./testtablespace
! $(SHELL) ./pg_regress --schedule=$(srcdir)/serial_schedule
--multibyte=$(MULTIBYTE) --load-language=plpgsql
installcheck-parallel: all
-rm -rf ./testtablespace
mkdir ./testtablespace
! $(SHELL) ./pg_regress --schedule=$(srcdir)/parallel_schedule
--multibyte=$(MULTIBYTE) --load-language=plpgsql $(MAXCONNOPT)
# old interfaces follow...
--- 137,153 ----
check: all
-rm -rf ./testtablespace
mkdir ./testtablespace
! $(SHELL) ./pg_regress --temp-install --top-builddir=$(top_builddir)
--temp-port=$(TEMP_PORT) --schedule=$(srcdir)/parallel_schedule
--multibyte=$(MULTIBYTE) --load-language=plpgsql $(MAXCONNOPT) $(NOLOCALE)
installcheck: all
-rm -rf ./testtablespace
mkdir ./testtablespace
! $(SHELL) ./pg_regress --schedule=$(srcdir)/serial_schedule
--multibyte=$(MULTIBYTE) --load-language=plpgsql $(NOLOCALE)
installcheck-parallel: all
-rm -rf ./testtablespace
mkdir ./testtablespace
! $(SHELL) ./pg_regress --schedule=$(srcdir)/parallel_schedule
--multibyte=$(MULTIBYTE) --load-language=plpgsql $(MAXCONNOPT) $(NOLOCALE)
# old interfaces follow...
***************
*** 152,161 ****
runtest-parallel: installcheck-parallel
bigtest:
! $(SHELL) ./pg_regress --schedule=$(srcdir)/serial_schedule
--multibyte=$(MULTIBYTE) --load-language=plpgsql numeric_big
bigcheck:
! $(SHELL) ./pg_regress --temp-install --top-builddir=$(top_builddir)
--temp-port=$(TEMP_PORT) --schedule=$(srcdir)/parallel_schedule
--multibyte=$(MULTIBYTE) --load-language=plpgsql $(MAXCONNOPT) numeric_big
##
--- 157,166 ----
runtest-parallel: installcheck-parallel
bigtest:
! $(SHELL) ./pg_regress --schedule=$(srcdir)/serial_schedule
--multibyte=$(MULTIBYTE) --load-language=plpgsql numeric_big $(NOLOCALE)
bigcheck:
! $(SHELL) ./pg_regress --temp-install --top-builddir=$(top_builddir)
--temp-port=$(TEMP_PORT) --schedule=$(srcdir)/parallel_schedule
--multibyte=$(MULTIBYTE) --load-language=plpgsql $(MAXCONNOPT) numeric_big
$(NOLOCALE)
##
Index: pg_regress.sh
===================================================================
RCS file: /projects/cvsroot/pgsql/src/test/regress/pg_regress.sh,v
retrieving revision 1.60
diff -c -r1.60 pg_regress.sh
*** pg_regress.sh 5 Sep 2005 23:50:49 -0000 1.60
--- pg_regress.sh 1 Nov 2005 06:34:51 -0000
***************
*** 24,29 ****
--- 24,30 ----
--schedule=FILE use test ordering schedule from FILE
(may be used multiple times to concatenate)
--temp-install[=DIR] create a temporary installation (in DIR)
+ --no-locale use C locale
Options for \`temp-install' mode:
--top-builddir=DIR (relative) path to top level build directory
***************
*** 99,104 ****
--- 100,106 ----
unset mode
unset schedule
unset debug
+ unset nolocale
unset top_builddir
unset temp_install
unset multibyte
***************
*** 142,147 ****
--- 144,152 ----
--multibyte=*)
multibyte=`expr "x$1" : "x--multibyte=\(.*\)"`
shift;;
+ --no-locale)
+ nolocale=yes
+ shift;;
--temp-install)
temp_install=./tmp_check
shift;;
***************
*** 403,409 ****
fi
message "initializing database system"
! [ "$debug" = yes ] && initdb_options='--debug'
"$bindir/initdb" -D "$PGDATA" -L "$datadir" --noclean $initdb_options
>"$LOGDIR/initdb.log" 2>&1
if [ $? -ne 0 ]
--- 408,415 ----
fi
message "initializing database system"
! [ "$debug" = yes ] && initdb_options="--debug"
! [ "$nolocale" = yes ] && initdb_options="$initdb_options --no-locale"
"$bindir/initdb" -D "$PGDATA" -L "$datadir" --noclean $initdb_options
>"$LOGDIR/initdb.log" 2>&1
if [ $? -ne 0 ]
---------------------------(end of broadcast)---------------------------
TIP 1: if posting/reading through Usenet, please send an appropriate
subscribe-nomail command to [EMAIL PROTECTED] so that your
message can get through to the mailing list cleanly