pgsql: Improve regression test case to avoid depending on system catalo

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Improve regression test case to avoid depending on system catalo
Date: 2015-08-13 17:25:41
Message-ID: E1ZPwG5-0006d7-HU@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Improve regression test case to avoid depending on system catalog stats.

In commit 95f4e59c32866716 I added a regression test case that examined
the plan of a query on system catalogs. That isn't a terribly great idea
because the catalogs tend to change from version to version, or even
within a version if someone makes an unrelated regression-test change that
populates the catalogs a bit differently. Usually I try to make planner
test cases rely on test tables that have not changed since Berkeley days,
but I got sloppy in this case because the submitted crasher example queried
the catalogs and I didn't spend enough time on rewriting it. But it was a
problem waiting to happen, as I was rudely reminded when I tried to port
that patch into Salesforce's Postgres variant :-(. So spend a little more
effort and rewrite the query to not use any system catalogs. I verified
that this version still provokes the Assert if 95f4e59c32866716's code fix
is reverted.

I also removed the EXPLAIN output from the test, as it turns out that the
assertion occurs while considering a plan that isn't the one ultimately
selected anyway; so there's no value in risking any cross-platform
variation in that printout.

Back-patch to 9.2, like the previous patch.

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/6a0779a397a5ec44a37d3f7d1b2e4c4359e06c2f

Modified Files
--------------
src/test/regress/expected/join.out | 56 +++++++++---------------------------
src/test/regress/sql/join.sql | 30 ++++++-------------
2 files changed, 22 insertions(+), 64 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Alvaro Herrera 2015-08-13 17:46:56 pgsql: Re-add BRIN isolation test
Previous Message Alvaro Herrera 2015-08-13 16:03:38 Re: Re: [COMMITTERS] Using contrib modules in check (Re: pgsql: Fix BRIN to use SnapshotAny during summarization)