pg.ddx.io pgsql-hackers@postgresql.org mailing list archive
help / color / mirror / Atom feed From: Tom Lane <tgl@sss.pgh.pa.us>
To: Alexander Lakhin <exclusion@gmail.com>
Cc: Alexander Pyhalov <a.pyhalov@postgrespro.ru>
Cc: Pavel Stehule <pavel.stehule@gmail.com>
Cc: Alexander Korotkov <aekorotkov@gmail.com>
Cc: pgsql-hackers@lists.postgresql.org, Ronan Dunklau <ronan.dunklau@aiven.io>
Subject: Re: SQLFunctionCache and generic plans
Date: Wed, 09 Apr 2025 02:19:22 -0400
Message-ID: <136163.1744179562@sss.pgh.pa.us> (raw )
In-Reply-To: <94b13098-8c2c-4b1a-87e3-579e27d17509@gmail.com >
References: <8216639.NyiUUSuA9g@aivenlaptop >
<CAFj8pRA7MFTfUPwDDWtghaUvAjbrMHFUPbHyLSX3h8+FDw4WFg@mail.gmail.com >
<445556.1738612687@sss.pgh.pa.us >
<464677.1738620525@sss.pgh.pa.us >
<1fc18af56d5fb27bf3e153ffaa2ed70d@postgrespro.ru >
<2615770.1740688857@sss.pgh.pa.us >
<448c63cf9b4f917c01802309b9c29eb9@postgrespro.ru >
<CAFj8pRDWDeF2cC+pCjLHJno7KnK5kdtjYN-f933R! ! ! ! ! HS7UneArFw@mail.gmail.com >
<CAFj8pRD0diy5VDP=8B9au5sk_yRknCWqZx35VniBtP_OA4aJNw@mail.gmail.com >
<2827970.1741890560@sss.pgh.pa.us >
<337e011069b6831e063bfa346f49bb46@postgrespro.ru >
<3344719.1741985546@sss.pgh.pa.us >
<fcc68b0ef570160cd6e88851eb244ccd@postgrespro.ru >
<db42573039cc66815e80a48589eebea8@postgrespro.ru >
<2691107.1743257329@sss.pgh.pa.us >
<3605427.1743351017@sss.pgh.pa.us >
<248291.1743463745@sss.pgh.pa.us >
<1101294.1743617356@sss.pgh.! pa.us >
<0fde377a-3870-4d18-946a-ce008ee5bb88@gmail.com >
<1454289.1743707630@sss.pgh.pa.us >
<6d442183-! 102c-498a-81d1-eeeb086cdc5a@gmail.com >
<2048515.1743803254@sss.pgh.! pa.us >
<94b13098-8c2c-4b1a-87e3-579e27d17509@gmail.com >
In the department of no-good-deed-goes-unpunished ...
I noticed that avocet and trilobite (two of our CLOBBER_CACHE_ALWAYS
animals) have started to fail on the deadlock-parallel isolation
test, with symptoms that look like they're timing out. Poking at
it here with a somewhat faster machine (a Mac M4), I see that under
debug_discard_caches=1 that test went from
ok 27 - deadlock-parallel 26362 ms
immediately before commit 0dca5d68d to
ok 27 - deadlock-parallel 267869 ms
immediately after. This is evidently because the test involves a lot
of evaluations of an intentionally-not-inline-able SQL function.
Previously we cached the plans for that function for the life of the
outer query, but now they're getting clobbered and rebuilt each time.
This is not wrong; the wrong behavior was hanging onto a
potentially-obsolete plan. But it's pretty unfortunate for the
runtime of this test under debug_discard_caches=1.
The simplest fix is to force that test to use debug_discard_caches=0,
but I don't love that answer. Anybody have a better idea?
It looks like the runtime of the infinite_recurse test on these
animals has taken a hit too for the same reason, and there may be
other places.
regards, tom lane
view thread (49+ messages) latest in thread
Message-ID: <136163.1744179562@sss.pgh.pa.us>
Permalink: ../136163.1744179562@sss.pgh.pa.us/
Also on: postgresql.org/message-id/136163.1744179562@sss.pgh.pa.us
copy link · copy postgr.es
reply 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: tgl@sss.pgh.pa.us, exclusion@gmail.com, a.pyhalov@postgrespro.ru, pavel.stehule@gmail.com, aekorotkov@gmail.com, ronan.dunklau@aiven.io
Subject: Re: SQLFunctionCache and generic plans
In-Reply-To: <136163.1744179562@sss.pgh.pa.us>
* 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