Re: tests against running server occasionally fail, postgres_fdw & tenk1

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: Andres Freund <andres@anarazel.de>
Cc: pgsql-hackers@postgresql.org, Michael Paquier <michael.paquier@gmail.com>, Fujii Masao <fujii@postgresql.org>
Date: 2023-02-26T20:57:01Z
Lists: pgsql-hackers

Attachments

Andres Freund <andres@anarazel.de> writes:
> Hm, yea, that should work. It's indeed the entirety of the diff
> https://api.cirrus-ci.com/v1/artifact/task/4718859714822144/testrun/build/testrun/postgres_fdw-running/regress/regression.diffs

> If we go that way we can remove the debug_discard muckery as well, I think?

Okay, so that seems to work for the "reestablish new connection" test:
as coded here, it passes with or without debug_discard_caches enabled,
and I believe it's testing what it intends to either way.  So that's
good.

However, the other stanza with debug_discard_caches muckery is the
one about "test postgres_fdw.application_name GUC", and in that case
ignoring the number of terminated connections would destroy the
point of the test entirely; because without that, you're proving
nothing about what the remote's application_name actually looks like.

I'm inclined to think we should indeed just nuke that test.  It's
overcomplicated and it expends a lot of test cycles on a pretty
marginal feature.

So I propose the attached.

			regards, tom lane

Commits

  1. Harden postgres_fdw tests against unexpected cache flushes.

  2. meson: Add 'running' test setup, as a replacement for installcheck

  3. Revert "Temporarily add some probes of tenk1's relallvisible in create_index.sql."

  4. Disable cache clobber to avoid breaking postgres_fdw termination test.

  5. Simplify the example of VACUUM in documentation.