pgstat: Hide instability in stats.spec with -DCATCACHE_FORCE_RELEASE.
With -DCATCACHE_FORCE_RELEASE a few tests failed. Those were trying to test
behavior in the absence of invalidation processing and
-DCATCACHE_FORCE_RELEASE obviously adds a lot of invalidation processing. The
test already tried to handle debug_discard_caches > 0, by disabling it for
individual tests.
Instead hide potentially problematic function calls in a wrapper function that
catches the does-not-exist error. The error isn't the actually interesting
bit, it's whether the stats entry still exist afterwards.
I confirmed that the tests still catches leaked function stats if I nuke the
protections against that in pgstat_function.c.
Per buildfarm animal prion.
Discussion: https://postgr.es/m/20220407165709.jgdkrzqlkcwue6ko@alap3.anarazel.de
Branch
------
master
Details
-------
https://git.postgresql.org/pg/commitdiff/d6c0db14836cd843d589372d909c73aab68c7a24
Modified Files
--------------
src/test/isolation/expected/stats.out | 152 ++++++++++++++++----------------
src/test/isolation/expected/stats_1.out | 152 ++++++++++++++++----------------
src/test/isolation/specs/stats.spec | 38 ++++----
3 files changed, 172 insertions(+), 170 deletions(-)