Re: PGXS: REGRESS_OPTS=--load-language=plpgsql

Bruce Momjian <bruce@momjian.us>

From: Bruce Momjian <bruce@momjian.us>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Dimitri Fontaine <dfontaine@hi-media.com>, Robert Haas <robertmhaas@gmail.com>, Takahiro Itagaki <itagaki.takahiro@oss.ntt.co.jp>, David Fetter <david@fetter.org>, Euler Taveira de Oliveira <euler@timbira.com>, PG Hackers <pgsql-hackers@postgresql.org>
Date: 2010-02-20T17:57:55Z
Lists: pgsql-hackers
Tom Lane wrote:
> Bruce Momjian <bruce@momjian.us> writes:
> > This discussion is sounding very design-ish, which makes me think we
> > should just leave things unchanged for 9.0 and have external regression
> > test designers work around this problem in their Makefiles, as Alvaro
> > suggested.
> 
> I would have said that some time ago, except that I think we have a
> "must fix" issue here: isn't pg_upgrade broken for any database
> containing plpgsql?  A decent solution for that probably will allow
> something to fall out for the regression test problem too.

Uh, well, I added this to pg_dump.c for 9.0:

    else if (g_fout->remoteVersion >= 80300)
    {
        /* pg_language has a lanowner column */
        /* pg_language has a lanowner column */
        appendPQExpBuffer(query, "SELECT tableoid, oid, "
                          "lanname, lanpltrusted, lanplcallfoid, "
                          "lanvalidator,  lanacl, "
                          "(%s lanowner) AS lanowner "
                          "FROM pg_language "
                          "WHERE lanispl%s "
                          "ORDER BY oid",
                          username_subquery,
                          binary_upgrade ? "\nAND lanname != 'plpgsql'" : "");
                          ---------------------------------------------------

meaning it will not dump plpsql when doing a binary upgrade.

-- 
  Bruce Momjian  <bruce@momjian.us>        http://momjian.us
  EnterpriseDB                             http://enterprisedb.com
  PG East:  http://www.enterprisedb.com/community/nav-pg-east-2010.do
  + If your life is a hard drive, Christ can be your backup. +