Re: Cleanup isolation specs from unused steps

Michael Paquier <michael@paquier.xyz>

From: Michael Paquier <michael@paquier.xyz>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Postgres hackers <pgsql-hackers@lists.postgresql.org>
Date: 2019-08-20T01:36:08Z
Lists: pgsql-hackers
On Mon, Aug 19, 2019 at 11:02:42AM -0400, Tom Lane wrote:
> Michael Paquier <michael@paquier.xyz> writes:
>> I have been looking at the isolation tests, and we have in some specs
>> steps which are defined but not used in any permutations.
> 
> Hmm, might any of those represent actual bugs?  Or are they just
> leftovers from test development?

I cannot yet enter the minds of each test author back this much in
time, but I think that's a mix of both.  When working on a new
isolation spec, I personally tend to do a lot of copy-pasting of the
same queries for multiple sessions and then manipulate the
permutations to produce a set of useful tests.  It is rather easy to
forget to remove some steps when doing that.  I guess that's what
happened with tuplelock-upgrade, insert-conflict-do-update* and
freeze-the-dead.
--
Michael

Commits

  1. Detect unused steps in isolation specs and do some cleanup

  2. Remove dry-run mode from isolationtester