pgsql: ANALYZE a_star and its children to avoid plan instability in tes - Mailing list pgsql-committers

From Tom Lane
Subject pgsql: ANALYZE a_star and its children to avoid plan instability in tes
Date
Msg-id E1iDsAc-0004mW-0S@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
ANALYZE a_star and its children to avoid plan instability in tests.

We've noted certain EXPLAIN queries on these tables occasionally showing
unexpected plan choices.  This seems to happen because VACUUM sometimes
fails to update relpages/reltuples for one of these single-page tables,
due to bgwriter or checkpointer holding a pin on the lone page at just
the wrong time.  To ensure those values get set, insert explicit ANALYZE
operations on these tables after we finish populating them.  This
doesn't seem to affect any other test cases, so it's a usable fix.

Back-patch to v12.  In principle the issue exists further back, but
we have not seen it before v12, so I won't risk back-patching further.

Discussion: https://postgr.es/m/24480.1569518042@sss.pgh.pa.us

Branch
------
REL_12_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/e40f3c7472036f5a06897a11ac79fd26ec2ccf7d

Modified Files
--------------
src/test/regress/expected/create_misc.out | 7 +++++++
src/test/regress/sql/create_misc.sql      | 8 ++++++++
2 files changed, 15 insertions(+)


pgsql-committers by date:

Previous
From: Tom Lane
Date:
Subject: pgsql: ANALYZE a_star and its children to avoid plan instability in tes
Next
From: Nikita Glukhov
Date:
Subject: Re: pgsql: Implement jsonpath .datetime() method