From: Michael Paquier <michael@paquier.xyz>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Andres Freund <andres@anarazel.de>
Cc: Julien Rouhaud <rjuju123@gmail.com>
Cc: pgsql-hackers <pgsql-hackers@postgresql.org>
Subject: Re: Add an optional timeout clause to isolationtester step.
Date: Tue, 10 Mar 2020 11:55:36 +0900
Message-ID: <20200310025536.GC4369@paquier.xyz> (raw)
In-Reply-To: <28752.1583807547@sss.pgh.pa.us>
References: <20200306131547.GA2904@nol>
<20200307014142.GC1531@paquier.xyz>
<20200307061615.c47sju2bytuiaazv@nol>
<8441.1583595994@sss.pgh.pa.us>
<20200307205328.ffidfyo3me46qscn@nol>
<15903.1583615371@sss.pgh.pa.us>
<20200307211709.6kfpiddif4uxafg5@nol>
<20200309221558.7kd5fuks2alvtsex@alap3.anarazel.de>
<20200310021459.GA4369@paquier.xyz>
<28752.1583807547@sss.pgh.pa.us>
On Mon, Mar 09, 2020 at 10:32:27PM -0400, Tom Lane wrote:
> It strikes me to wonder whether we could improve matters by teaching
> isolationtester to watch for particular values in a connected backend's
> pg_stat_activity.wait_event_type/wait_event columns. Those columns
> didn't exist when isolationtester was designed, IIRC, so it's not
> surprising that they're not used in the current design. But we could
> use them perhaps to detect that a backend has arrived at some state
> that's not a heavyweight-lock-wait state.
Interesting idea. So that would be basically an equivalent of
PostgresNode::poll_query_until but for the isolation tester? In short
we gain a meta-command that runs a SELECT query that waits until the
query defined in the command returns true. The polling interval may
be tricky to set though. If set too low it would consume resources
for nothing, and if set too large it would make the tests using this
meta-command slower than they actually need to be. Perhaps something
like 100ms may be fine..
--
Michael
Attachments:
[application/pgp-signature] signature.asc (832B, ../20200310025536.GC4369@paquier.xyz/2-signature.asc)
download
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-hackers@postgresql.org
Cc: michael@paquier.xyz, tgl@sss.pgh.pa.us, andres@anarazel.de, rjuju123@gmail.com
Subject: Re: Add an optional timeout clause to isolationtester step.
In-Reply-To: <20200310025536.GC4369@paquier.xyz>
* 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