Re: [PATCH] add concurrent_abort callback for output plugin
Ajin Cherian <itsajin@gmail.com>
From: Ajin Cherian <itsajin@gmail.com>
To: Markus Wanner <markus.wanner@enterprisedb.com>
Cc: Amit Kapila <amit.kapila16@gmail.com>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2021-03-30T07:39:31Z
Lists: pgsql-hackers
On Tue, Mar 30, 2021 at 5:30 PM Markus Wanner < markus.wanner@enterprisedb.com> wrote: > Hello Ajin, > > On 30.03.21 06:48, Ajin Cherian wrote: > > For now, I've created a patch that addresses the problem reported using > > the existing callbacks. > > Thanks. > > > Do have a look if this fixes the problem reported. > > Yes, this replaces the PREPARE I would do from the concurrent_abort > callback in a direct call to rb->prepare. However, it misses the most > important part: documentation. Because this clearly is a surprising > behavior for a transaction that's not fully decoded and guaranteed to > get aborted. > > Where do you suggest this be documented? From an externally visible point of view, I dont see much of a surprise. A transaction that was prepared and rolled back can be decoded to be prepared and rolled back with incomplete changes. Are you suggesting more comments in code? regards, Ajin Cherian Fujitsu Australia
Commits
-
Avoid sending prepare multiple times while decoding.
- f25a4584c6f5 14.0 landed
-
Ensure to send a prepare after we detect concurrent abort during decoding.
- 4778826532a6 14.0 landed