Re: [HACKERS] plperl and pltcl installcheck targets - Mailing list pgsql-patches

From Andrew Dunstan
Subject Re: [HACKERS] plperl and pltcl installcheck targets
Date
Msg-id 42826B1D.6030507@dunslane.net
Whole thread Raw
In response to Re: [HACKERS] plperl and pltcl installcheck targets  (Andrew Dunstan <andrew@dunslane.net>)
Responses Re: [HACKERS] plperl and pltcl installcheck targets  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-patches

Andrew Dunstan wrote:

>
>
> Tom Lane wrote:
>
>> Andrew Dunstan <andrew@dunslane.net> writes:
>>
>>
>>> Aha. ok. should be fairly trivial. I'm thinking of something like
>>>   --load-languages=lang1,lang2,lang3
>>> (in case we ever want more than one).
>>>
>>
>>
>> Might be a little easier as multiple switches:
>>     --load-language=lang1 --load-language=lang2
>>
>>
>>
>>
>
> Ok. Here's a patch for that piece.  With this, contrib regression
> tests don't load plpgsql, but standard core tests do.
>
>

er this time with a patch attached.

cheers

andrew
Index: GNUmakefile
===================================================================
RCS file: /home/cvsmirror/pgsql/src/test/regress/GNUmakefile,v
retrieving revision 1.48
diff -c -r1.48 GNUmakefile
*** GNUmakefile    17 Nov 2004 18:05:06 -0000    1.48
--- GNUmakefile    11 May 2005 20:03:56 -0000
***************
*** 130,146 ****
  check: all
      -rm -rf ./testtablespace
      mkdir ./testtablespace
!     $(SHELL) ./pg_regress --temp-install --top-builddir=$(top_builddir) --schedule=$(srcdir)/parallel_schedule
--multibyte=$(MULTIBYTE)$(MAXCONNOPT) 

  installcheck: all
      -rm -rf ./testtablespace
      mkdir ./testtablespace
!     $(SHELL) ./pg_regress --schedule=$(srcdir)/serial_schedule --multibyte=$(MULTIBYTE)

  installcheck-parallel: all
      -rm -rf ./testtablespace
      mkdir ./testtablespace
!     $(SHELL) ./pg_regress --schedule=$(srcdir)/parallel_schedule --multibyte=$(MULTIBYTE) $(MAXCONNOPT)


  # old interfaces follow...
--- 130,146 ----
  check: all
      -rm -rf ./testtablespace
      mkdir ./testtablespace
!     $(SHELL) ./pg_regress --temp-install --top-builddir=$(top_builddir) --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...
***************
*** 150,159 ****
  runtest-parallel: installcheck-parallel

  bigtest:
!     $(SHELL) ./pg_regress --schedule=$(srcdir)/serial_schedule --multibyte=$(MULTIBYTE) numeric_big

  bigcheck:
!     $(SHELL) ./pg_regress --temp-install --top-builddir=$(top_builddir) --schedule=$(srcdir)/parallel_schedule
--multibyte=$(MULTIBYTE)$(MAXCONNOPT) numeric_big 


  ##
--- 150,159 ----
  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) --schedule=$(srcdir)/parallel_schedule
--multibyte=$(MULTIBYTE) --load-language=plpgsql $(MAXCONNOPT) numeric_big 


  ##
Index: pg_regress.sh
===================================================================
RCS file: /home/cvsmirror/pgsql/src/test/regress/pg_regress.sh,v
retrieving revision 1.53
diff -c -r1.53 pg_regress.sh
*** pg_regress.sh    15 Jan 2005 04:15:51 -0000    1.53
--- pg_regress.sh    11 May 2005 20:15:35 -0000
***************
*** 13,18 ****
--- 13,20 ----
  Options:
    --debug                   turn on debug mode in programs that are run
    --inputdir=DIR            take input files from DIR (default \`.')
+   --load-language=lang      load the named language before running the
+                             tests; can appear multiple times
    --max-connections=N       maximum number of concurrent connections
                              (default is 0 meaning unlimited)
    --multibyte=ENCODING      use ENCODING as the multibyte encoding, and
***************
*** 103,108 ****
--- 105,111 ----
  dbname=regression
  hostname=localhost
  maxconnections=0
+ load_langs=""

  : ${GMAKE='@GMAKE@'}

***************
*** 126,131 ****
--- 129,139 ----
          --inputdir=*)
                  inputdir=`expr "x$1" : "x--inputdir=\(.*\)"`
                  shift;;
+         --load-language=*)
+                 lang=`expr "x$1" : "x--load-language=\(.*\)"`
+                 load_langs="$load_langs $lang"
+                 unset lang
+                 shift;;
          --multibyte=*)
                  multibyte=`expr "x$1" : "x--multibyte=\(.*\)"`
                  shift;;
***************
*** 564,575 ****
  # ----------

  if [ "$enable_shared" = yes ]; then
!         message "installing PL/pgSQL"
!         "$bindir/createlang" -L "$pkglibdir" $psql_options plpgsql $dbname
          if [ $? -ne 0 ] && [ $? -ne 2 ]; then
              echo "$me: createlang failed"
              (exit 2); exit
          fi
  fi


--- 572,586 ----
  # ----------

  if [ "$enable_shared" = yes ]; then
!     for lang in x $load_langs ; do
!         test $lang = x && continue
!         message "installing $lang"
!         "$bindir/createlang" -L "$pkglibdir" $psql_options $lang $dbname
          if [ $? -ne 0 ] && [ $? -ne 2 ]; then
              echo "$me: createlang failed"
              (exit 2); exit
          fi
+     done
  fi



pgsql-patches by date:

Previous
From: Andrew Dunstan
Date:
Subject: Re: [HACKERS] plperl and pltcl installcheck targets
Next
From: Alvaro Herrera
Date:
Subject: Re: lastval()