Re: Add an option to skip loading missing publication to avoid logical replication failure - Mailing list pgsql-hackers

From Tom Lane
Subject Re: Add an option to skip loading missing publication to avoid logical replication failure
Date
Msg-id 1230066.1745992333@sss.pgh.pa.us
Whole thread Raw
In response to Re: Add an option to skip loading missing publication to avoid logical replication failure  (Amit Kapila <amit.kapila16@gmail.com>)
Responses Re: Add an option to skip loading missing publication to avoid logical replication failure
List pgsql-hackers
Amit Kapila <amit.kapila16@gmail.com> writes:
> Thanks, Dilip and Sawada-San, for the inputs, and Vignesh for the
> patch. I have pushed the change.

Xuneng Zhou pointed out on Discord that the test case added by
7c99dc587 has caused repeated failures in CI --- though oddly,
it's not failed in the buildfarm so far as I can find.  The
failures look like

timed out waiting for match: (?^:WARNING: ( [A-Z0-9]+:)? skipped loading publication: tap_pub_3) at
/tmp/cirrus-ci-build/src/test/subscription/t/024_add_drop_pub.plline 103. 

I suspect that what is happening is that the "skipped loading
publication" message comes out sooner than the 024 test script
expects, and thus that it could be fixed by moving the
"my $offset = -s $node_publisher->logfile;" line to be just
before the ALTER SUBSCRIPTION command instead of just after it.
Because the "skipped" message is from LoadPublications() which
is fundamentally invoked as a result of cache flushes, it's
hardly astonishing that its timing would be erratic.

However, I can't really prove this because I've been unable
to reproduce the failure locally, except by moving the
"my $offset" assignment further down which is surely cheating.

Thoughts?

            regards, tom lane



pgsql-hackers by date:

Previous
From: Michael Paquier
Date:
Subject: Persist injection points across server restarts
Next
From: Andrey Borodin
Date:
Subject: Re: Persist injection points across server restarts