From: Andres Freund <andres@anarazel.de>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Thomas Munro <thomas.munro@gmail.com>
Cc: byavuz81@gmail.com, PostgreSQL mailing lists <pgsql-bugs@lists.postgresql.org>
Cc: Heikki Linnakangas <heikki.linnakangas@iki.fi>
Cc: Michael Paquier <michael@paquier.xyz>
Subject: Re: BUG #17391: While using --with-ssl=openssl and PG_TEST_EXTRA='ssl' options, SSL tests fail on OpenBSD 7.0
Date: Wed, 2 Feb 2022 19:27:06 -0800
Message-ID: <20220203032706.h2e45nzi5vnga2iy@alap3.anarazel.de> (raw)
In-Reply-To: <137527.1643856281@sss.pgh.pa.us>
References: <17391-304f81bcf724b58b@postgresql.org>
<20220202213900.h7paogmcge2rtls6@alap3.anarazel.de>
<CA+hUKGJ4+Ug16QU-PYGEZwUe2O69hdnCuyzLhMHHF02_uA4C5w@mail.gmail.com>
<131329.1643851912@sss.pgh.pa.us>
<20220203022635.jjl356endsypm3za@alap3.anarazel.de>
<137527.1643856281@sss.pgh.pa.us>
Hi,
On 2022-02-02 21:44:41 -0500, Tom Lane wrote:
> Andres Freund <andres@anarazel.de> writes:
> > On 2022-02-02 20:31:52 -0500, Tom Lane wrote:
> >> BTW, I also reproduced something that seems odd from the OP's
> >> postmaster logs: there are what seem a quite excessive number
> >> of checkpoints happening during these tests. That happens
> >> on my Linux box too, so it's not an OpenBSD issue. It looks
> >> like there are two per CREATE DATABASE --- I could understand
> >> one maybe, but why two?
>
> > I think that's unfortunately normal. There's two RequestCheckpoint()s in
> > createdb(). We should optimize that someday...
>
> Hmm. I wonder how much that slows down a check-world run.
> I suppose the second checkpoint should be pretty speedy
> for lack of anything to do, but still ...
There is a patch making CREATE DATABASE fully WAL logged [1].
cfbot timings aren't super reliable, but it provides perhaps a bit of
information.
It does seem to make individual create databases a bit faster. Comparing runs
with another patch and looking at windows (since that's the slowest and
doesn't run regression tests concurrently), we can see:
https://cirrus-ci.com/github/postgresql-cfbot/postgresql/commitfest/36/3314https://cirrus-ci.com/github/postgresql-cfbot/postgresql/commitfest/36/3192
CF 3314:
[01:28:31.630] Checking plpgsql
[01:28:31.764] ============== creating database "pl_regression" ==============
[01:28:32.631] CREATE DATABASE
[01:28:36.515] Checking plperl
[01:28:36.751] ============== creating database "pl_regression" ==============
[01:28:37.560] CREATE DATABASE
[01:28:40.990] Checking plpythonu
[01:28:41.233] ============== creating database "pl_regression" ==============
[01:28:42.057] CREATE DATABASE
CF 3192:
[07:03:54.861] Checking plpgsql
[07:03:54.986] ============== creating database "pl_regression" ==============
[07:03:55.254] CREATE DATABASE
[07:03:58.950] Checking plperl
[07:03:59.234] ============== creating database "pl_regression" ==============
[07:03:59.484] CREATE DATABASE
[07:04:02.724] Checking plpythonu
[07:04:02.960] ============== creating database "pl_regression" ==============
[07:04:03.202] CREATE DATABASE
Which does seem to suggest createdb being noticably faster.
This is also visible in aggregate across several tests, e.g. "test_modules"
averaging ~45s for 36/3314, but ~30s for 36/3192.
For the longer running tap tests it doesn't seem to make much of a difference,
which make some sense.
Greetings,
Andres Freund
[1] https://commitfest.postgresql.org/36/3192/
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-bugs@postgresql.org
Cc: andres@anarazel.de, tgl@sss.pgh.pa.us, thomas.munro@gmail.com, pgsql-bugs@lists.postgresql.org, heikki.linnakangas@iki.fi, michael@paquier.xyz
Subject: Re: BUG #17391: While using --with-ssl=openssl and PG_TEST_EXTRA='ssl' options, SSL tests fail on OpenBSD 7.0
In-Reply-To: <20220203032706.h2e45nzi5vnga2iy@alap3.anarazel.de>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox