How huge does mvtest_huge need to be?

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: Kevin Grittner <kgrittn@gmail.com>
Cc: pgsql-hackers@postgreSQL.org
Date: 2017-05-03T17:08:40Z
Lists: pgsql-hackers
Continuing to investigate possible speedups of the regression tests,
I noticed that some of the slower individual statements are those
dealing with mvtest_huge and mvtest_hugeview in matview.sql.
Cutting the size of mvtest_huge from 100K rows to 10K rows is enough
to halve the overall runtime of matview.sql, at least on the relatively
slow buildfarm animal I was checking this on.

I was going to propose doing that, but then looking at commit b69ec7cc9
which introduced these tables, I began to wonder why they're large at all.
Even a one-row matview would have been enough to test for the bug that
that commit fixed.

So ... is there a good reason to be using a large table here, and
if so what is it, and how big does the table really need to be
to provide useful test coverage?

			regards, tom lane


Commits

  1. Remove useless and rather expensive stanza in matview regression test.

  2. Prevent (auto)vacuum from truncating first page of populated matview.