pgsql: Improve the code to decide and process the apply action. - Mailing list pgsql-committers

From Amit Kapila
Subject pgsql: Improve the code to decide and process the apply action.
Date
Msg-id E1pHfBX-00454p-St@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Improve the code to decide and process the apply action.

The code that decides the apply action missed to handle non-transactional
messages and we didn't catch it in our testing as currently such messages
are simply ignored by the apply worker. This was introduced by changes in
commit 216a784829.

While testing this, I noticed that we forgot to reset stream_xid after
processing the stream stop message which could also result in the wrong
apply action after the fix for non-transactional messages.

In passing, change assert to elog for unexpected apply action in some of
the routines so as to catch the problems in the production environment, if
any.

Reported-by: Tomas Vondra
Author: Amit Kapila
Reviewed-by: Tomas Vondra, Sawada Masahiko, Hou Zhijie
Discussion: https://postgr.es/m/984ff689-adde-9977-affe-cd6029e850be@enterprisedb.com
Discussion: https://postgr.es/m/CAA4eK1+wyN6zpaHUkCLorEWNx75MG0xhMwcFhvjqm2KURZEAGw@mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/c981d9145deae067bc67bc8f8bcd68b300ece3fe

Modified Files
--------------
src/backend/replication/logical/worker.c | 73 ++++++++++++++++++++------------
1 file changed, 47 insertions(+), 26 deletions(-)


pgsql-committers by date:

Previous
From: Amit Kapila
Date:
Subject: pgsql: Fix typo in comment.
Next
From: John Naylor
Date:
Subject: pgsql: Remove dead code in formatting.c