pgsql: Fix assertion failure in apply worker.

From: Amit Kapila <akapila(at)postgresql(dot)org>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Fix assertion failure in apply worker.
Date: 2023-05-03 05:09:39
Message-ID: E1pu4kF-000DVv-56@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Fix assertion failure in apply worker.

During exit, the logical replication apply worker tries to release session
level locks, if any. However, if the apply worker exits due to an error
before its connection is initialized, trying to release locks can lead to
assertion failure. The locks will be acquired once the worker is
initialized, so we don't need to release them till the worker
initialization is complete.

Reported-by: Alexander Lakhin
Author: Hou Zhijie based on inputs from Sawada Masahiko and Amit Kapila
Reviewed-by: Amit Kapila
Discussion: https://postgr.es/m/2185d65f-5aae-3efa-c48f-fb42b173ef5c@gmail.com

Branch
------
master

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

Modified Files
--------------
src/backend/replication/logical/applyparallelworker.c | 4 ++++
src/backend/replication/logical/launcher.c | 5 ++++-
src/backend/replication/logical/worker.c | 7 +++++++
src/include/replication/worker_internal.h | 2 ++
4 files changed, 17 insertions(+), 1 deletion(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Peter Eisentraut 2023-05-03 09:08:48 pgsql: Add missing TAP test name
Previous Message Tom Lane 2023-05-02 21:55:15 pgsql: Doc: clarify behavior of row-limit arguments in the PLs' SPI wra