Skip site navigation (1) Skip section navigation (2)

Re: Re: In-core regression tests for replication, cascading, archiving, PITR, etc.

From: Michael Paquier <michael(dot)paquier(at)gmail(dot)com>
To: Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>
Cc: Amir Rohan <amir(dot)rohan(at)zoho(dot)com>, Robert Haas <robertmhaas(at)gmail(dot)com>, Noah Misch <noah(at)leadboat(dot)com>, Andres Freund <andres(at)2ndquadrant(dot)com>, PostgreSQL mailing lists <pgsql-hackers(at)postgresql(dot)org>, Greg Smith <gsmith(at)gregsmith(dot)com>
Subject: Re: Re: In-core regression tests for replication, cascading, archiving, PITR, etc.
Date: 2015-11-25 13:20:40
Message-ID: (view raw, whole thread or download thread mbox)
Lists: pgsql-hackers
On Wed, Nov 25, 2015 at 11:00 AM, Michael Paquier <michael(dot)paquier(at)gmail(dot)com
> wrote:

> On Wed, Nov 25, 2015 at 10:55 AM, Alvaro Herrera <alvherre(at)2ndquadrant(dot)com
> > wrote:
>> Michael Paquier wrote:
>> > On Wed, Nov 25, 2015 at 6:22 AM, Alvaro Herrera <
>> alvherre(at)2ndquadrant(dot)com>
>> > wrote:
>> >
>> > > Michael Paquier wrote:
>> > > This looks great as a starting point.  I think we should make TestLib
>> > > depend on PostgresNode instead of the other way around.  I will have a
>> > > look at that (I realize this means messing with the existing tests).
>> >
>> > Makes sense. My thoughts following that is that we should keep a track
>> of
>> > the nodes started as an array which is part of TestLib, with PGHOST set
>> > once at startup using tempdir_short. That's surely an refactoring patch
>> > somewhat independent of the recovery test suite. I would not mind
>> writing
>> > something among those lines if needed.
>> OK, please do.
>> We can split this up in two patches: one introducing PostgresNode
>> (+ RecursiveCopy) together with the refactoring of existing test code,
>> and a subsequent one introducing RecoveryTest and the corresponding
>> subdir.  Sounds good?
> Yeah, that matches my line of thoughts. Will do so.

The result of a couple of hours of hacking is attached:
- 0001 is the refactoring adding PostgresNode and RecursiveCopy. I have
also found that it is quite advantageous to move some of the routines that
are synonyms of system() and the stuff used for logging into another
low-level library that PostgresNode depends on, that I called TestBase in
this patch. This way, all the infrastructure depends on the same logging
management. Existing tests have been refactored to fit into the new code,
and this leads to a couple of simplifications particularly in pg_rewind
tests because there is no more need to have there routines for environment
cleanup and logging. I have done tests on OSX and Windows using it and
tests are passing. I have as well tested that ssl tests were working.
- 0002 adds the recovery tests with now located in

Attachment: 0001-Refactor-TAP-tests-to-use-common-node-management-sys.patch
Description: application/x-patch (56.7 KB)
Attachment: 0002-Add-recovery-test-suite.patch
Description: application/x-patch (24.3 KB)

In response to


pgsql-hackers by date

Next:From: David SteeleDate: 2015-11-25 13:22:41
Subject: [PROPOSAL] Client Log Output Filtering
Previous:From: Nikolay ShaplovDate: 2015-11-25 13:16:34
Subject: Re: pageinspect patch, for showing tuple data

Privacy Policy | About PostgreSQL
Copyright © 1996-2018 The PostgreSQL Global Development Group