Robert Haas wrote:
> On Thu, Nov 27, 2014 at 11:43 PM, Ian Barwick <ian@2ndquadrant.com> wrote:
> > A simple schedule to demonstrate this is available; execute from the
> > src/test/regress/ directory like this:
> >
> > ./pg_regress \
> > --temp-install=./tmp_check \
> > --top-builddir=../../.. \
> > --dlpath=. \
> > --schedule=./schedule_ddl_deparse_demo
>
> I haven't read the code, but this concept seems good to me.
Excellent, thanks.
> It has the unfortunate weakness that a difference could exist during
> the *middle* of the regression test run that is gone by the *end* of
> the run, but our existing pg_upgrade testing has the same weakness, so
> I guess we can view this as one more reason not to be too aggressive
> about having regression tests drop the unshared objects they create.
Agreed. Not dropping objects also helps test pg_dump itself; the normal
procedure there is run the regression tests, then pg_dump the regression
database. Objects that are dropped never exercise their corresponding
pg_dump support code, which I think is a bad thing. I think we should
institute a policy that regression tests must keep the objects they
create; maybe not all of them, but at least a sample large enough to
cover all interesting possibilities.
--
Álvaro Herrera http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services