Re: Reset snapshot export state on the transaction abort - Mailing list pgsql-hackers

From Michael Paquier
Subject Re: Reset snapshot export state on the transaction abort
Date
Msg-id YWfUJYaEuHuWw0mq@paquier.xyz
Whole thread Raw
In response to Re: Reset snapshot export state on the transaction abort  (Dilip Kumar <dilipbalaut@gmail.com>)
Responses Re: Reset snapshot export state on the transaction abort  (Dilip Kumar <dilipbalaut@gmail.com>)
List 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

Attachment

pgsql-hackers by date:

Previous
From: "osumi.takamichi@fujitsu.com"
Date:
Subject: RE: Failed transaction statistics to measure the logical replication progress
Next
From: Simon Riggs
Date:
Subject: Re: Next Steps with Hash Indexes