Call WaitLSNCleanup() in AbortTransaction() Even though waiting for replay LSN happens without explicit transaction, AbortTransaction() is responsible for the cleanup of the shared memory if the error is thrown in a stored procedure. So, we need to do WaitLSNCleanup() there to clean up after some unexpected error happened while waiting for replay LSN.
Discussion: https://postgr.es/m/202404051815.eri4u5q6oj26%40alvherre.pgsql Author: Alvaro Herrera Branch ------ master Details ------- https://git.postgresql.org/pg/commitdiff/74eaf66f988c868deb0816bae4dd184eedae1448 Modified Files -------------- src/backend/access/transam/xact.c | 6 ++++++ 1 file changed, 6 insertions(+)