Re: Reset snapshot export state on the transaction abort
Michael Paquier <michael@paquier.xyz>
From: Michael Paquier <michael@paquier.xyz>
To: Dilip Kumar <dilipbalaut@gmail.com>
Cc: PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2021-10-14T06:54:29Z
Lists: pgsql-hackers
On Wed, Oct 13, 2021 at 10:53:24AM +0530, Dilip Kumar wrote: > Actually, it is not required because 1) Snapshot export can not be > allowed within a transaction block, basically, it starts its own > transaction block and aborts that while executing any next replication > command see SnapBuildClearExportedSnapshot(). So our problem is only > if the transaction block internally started for exporting, gets > aborted before any next command arrives. So there is no possibility > of starting any sub transaction. Yes, you are right here. I did not remember the semantics this relies on. I have played more with the patch, reviewed the whole, and the fields you are resetting as part of the snapshot builds seem correct to me. So let's fix this. -- Michael
Commits
-
Reset properly snapshot export state during transaction abort
- f49bf8263459 9.6.24 landed
- d1a6a08dfafc 10.19 landed
- 506aa1f71a98 11.14 landed
- a207b8521346 12.9 landed
- 8f4fe8d7f8dc 13.5 landed
- 5b353aaff69c 14.1 landed
- 409f9ca44713 15.0 landed