Every once in awhile we get failures like this one:
https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=gull&dt=2019-11-05%2008%3A27%3A27
diff -U3 /home/pgsql/build-farm/buildroot-clang/HEAD/pgsql.build/../pgsql/src/test/regress/expected/vacuum.out
/home/pgsql/build-farm/buildroot-clang/HEAD/pgsql.build/src/test/regress/results/vacuum.out
--- /home/pgsql/build-farm/buildroot-clang/HEAD/pgsql.build/../pgsql/src/test/regress/expected/vacuum.out 2019-08-11
03:02:18.921535948-0700
+++ /home/pgsql/build-farm/buildroot-clang/HEAD/pgsql.build/src/test/regress/results/vacuum.out 2019-11-05
00:50:42.381244885-0800
@@ -204,6 +204,7 @@
-- SKIP_LOCKED option
VACUUM (SKIP_LOCKED) vactst;
VACUUM (SKIP_LOCKED, FULL) vactst;
+WARNING: skipping vacuum of "vactst" --- lock not available
ANALYZE (SKIP_LOCKED) vactst;
-- ensure VACUUM and ANALYZE don't have a problem with serializable
SET default_transaction_isolation = serializable;
No doubt this is a conflict with autovacuum. There are two reasonable
ways to remove the test instability:
* Crank up client_min_messages to more than WARNING for this test
stanza.
* Downgrade the "skipping" messages to DEBUG1 or less.
I kind of wonder why we are issuing a "WARNING" when the statement
does exactly what you asked it to, anyway. At most I'd expect
that to be a NOTICE condition.
regards, tom lane