Avoid sending prepare multiple times while decoding.

Amit Kapila <akapila@postgresql.org>

Commit: f25a4584c6f56f3407f8f8734c78f2a87e4b77e8
Author: Amit Kapila <akapila@postgresql.org>
Date: 2021-04-26T05:57:44Z
Releases: 14.0
Avoid sending prepare multiple times while decoding.

We send the prepare for the concurrently aborted xacts so that later when
rollback prepared is decoded and sent, the downstream should be able to
rollback such a xact. For 'streaming' case (when we send changes for
in-progress transactions), we were sending prepare twice when concurrent
abort was detected.

Author: Peter Smith
Reviewed-by: Amit Kapila
Discussion: https://postgr.es/m/f82133c6-6055-b400-7922-97dae9f2b50b@enterprisedb.com

Files

PathChange+/−
src/backend/replication/logical/reorderbuffer.c modified +4 −1

Discussion