Re: pgsql: injection_points: Remove portions related to custom pgstats

From: Heikki Linnakangas <hlinnaka(at)iki(dot)fi>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Michael Paquier <michael(at)paquier(dot)xyz>, Andrew Dunstan <andrew(at)dunslane(dot)net>, pgsql-committers(at)lists(dot)postgresql(dot)org, Sami Imseih <samimseih(at)gmail(dot)com>
Subject: Re: pgsql: injection_points: Remove portions related to custom pgstats
Date: 2025-12-09 20:04:43
Message-ID: ebfa8b0a-5858-4167-884c-499e70fce2cd@iki.fi
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-committers

On 09/12/2025 19:40, Tom Lane wrote:
> Perhaps another alternative is to add "DROP EXTENSION
> injection_points" at the end of the test scripts in the
> problematic modules.

It's a little tricky if a module has more than one test that uses the
extension. Namely src/test/modules/nbtree which I added recently has two
test scripts, nbtree_incomplete_splits.sql and
nbtree_half_dead_pages.sql, and both of them do "create extension if not
exists injection_points;". They run concurrently, so they race on which
one creates the extension first. We can't do the same for DROP EXTENSION
at the end.

Maybe that's not a great design in the first place, though. Perhaps that
module should use a schedule file:

# create injection_points extension before the actual tests
test: test_setup

test: nbtree_incomplete_splits nbtree_half_dead_pages

# drop injection_points extension because it cannot be pg_upgraded.
test: test_clean

- Heikki

In response to

Responses

Browse pgsql-committers by date

  From Date Subject
Next Message Thomas Munro 2025-12-09 20:49:57 pgsql: Fix O_CLOEXEC flag handling in Windows port.
Previous Message Nathan Bossart 2025-12-09 19:35:03 pgsql: Add ParallelSlotSetIdle().