On 2022-Nov-28, Simon Riggs wrote:
> A narrative description of the issue follows:
> session1 - requests multiple nested subtransactions like this:
> BEGIN; ...
> SAVEPOINT subxid1; ...
> SAVEPOINT subxid2; ...
> However, if subxid2 subcommits, then the lock wait moves from subxid2
> to the topxid.
Hmm, do we really do that? Seems very strange .. it sounds to me like
the lock should have been transferred to subxid1 (which is subxid2's
parent), not to the top-level Xid. Maybe what the user wanted was to
release subxid1 before establishing subxid2? Or do they want to
continue to be able to rollback to subxid1 after establishing subxid2?
(but why?)
--
Álvaro Herrera 48°01'N 7°57'E — https://www.EnterpriseDB.com/