On Thu, May 23, 2019 at 08:54:59AM -0700, Andres Freund wrote: > On 2019-05-23 12:36:09 +0100, Simon Riggs wrote: >> The ONLY case where this matters is if someone does a PREPARE and then >> starts doing other work on the session. Which makes no sense in the normal >> workflow of a session. I'm sure there are tests that do that, but those >> tests are unrepresentative of sensible usage. > > That's extremely common. > > There's no way we can forbid using session after 2PC unconditionally, > it'd break most users of 2PC.
This does not break Postgres-XC or XL as their inner parts with a COMMIT involving multiple write nodes issue a set of PREPARE TRANSACTION followed by an immediate COMMIT PREPARED which are transparent for the user, so the point of Simon looks sensible from this angle. Howewer, I much agree with Andres that it is very common to have PREPARE and COMMIT PREPARED issued with different sessions. I am not much into the details of XA-compliant drivers, but I think that having us lose this property would be the source of many complaints. -- Michael
signature.asc
Description: PGP signature