Re: [HACKERS] Fix bloom WAL tap test - Mailing list pgsql-hackers

From Alexander Korotkov
Subject Re: [HACKERS] Fix bloom WAL tap test
Date
Msg-id CAPpHfdt7i8cYi6p08BLg_osxjcbNHx8v06FgfrWBqOGSamYYjw@mail.gmail.com
Whole thread Raw
In response to Re: [HACKERS] Fix bloom WAL tap test  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: [HACKERS] Fix bloom WAL tap test  (Michael Paquier <michael.paquier@gmail.com>)
List pgsql-hackers
Hi!

On Fri, Nov 10, 2017 at 9:12 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
I wrote:
> Is there anything we can do to cut the runtime of the TAP test to
> the point where running it by default wouldn't be so painful?

As an experiment, I tried simply cutting the size of the test table 10X:

diff --git a/contrib/bloom/t/001_wal.pl b/contrib/bloom/t/001_wal.pl
index 1b319c9..566abf9 100644
--- a/contrib/bloom/t/001_wal.pl
+++ b/contrib/bloom/t/001_wal.pl
@@ -57,7 +57,7 @@ $node_standby->start;
 $node_master->safe_psql("postgres", "CREATE EXTENSION bloom;");
 $node_master->safe_psql("postgres", "CREATE TABLE tst (i int4, t text);");
 $node_master->safe_psql("postgres",
-"INSERT INTO tst SELECT i%10, substr(md5(i::text), 1, 1) FROM generate_series(1,100000) i;"
+"INSERT INTO tst SELECT i%10, substr(md5(i::text), 1, 1) FROM generate_series(1,10000) i;"
 );
 $node_master->safe_psql("postgres",
        "CREATE INDEX bloomidx ON tst USING bloom (i, t) WITH (col1 = 3);");
@@ -72,7 +72,7 @@ for my $i (1 .. 10)
        test_index_replay("delete $i");
        $node_master->safe_psql("postgres", "VACUUM tst;");
        test_index_replay("vacuum $i");
-       my ($start, $end) = (100001 + ($i - 1) * 10000, 100000 + $i * 10000);
+       my ($start, $end) = (10001 + ($i - 1) * 1000, 10000 + $i * 1000);
        $node_master->safe_psql("postgres",
 "INSERT INTO tst SELECT i%10, substr(md5(i::text), 1, 1) FROM generate_series($start,$end) i;"
        );

This about halved the runtime of the TAP test, and it changed the coverage
footprint not at all according to lcov.  (Said coverage is only marginally
better than what we get without running the bloom TAP test, AFAICT.)

It seems like some effort could be put into both shortening this test
and improving the amount of code it exercises.

Thank you for committing patch which fixes tap test.
I'll try to improve coverage of this test and reduce its run time.

------
Alexander Korotkov
Postgres Professional: http://www.postgrespro.com
The Russian Postgres Company

pgsql-hackers by date:

Previous
From: Alexander Korotkov
Date:
Subject: Re: [HACKERS] How to implement a SP-GiST index as a extension module?
Next
From: Mark Rofail
Date:
Subject: Re: [HACKERS] GSoC 2017: Foreign Key Arrays