public inbox for [email protected]  
help / color / mirror / Atom feed
From: Fujii Masao <[email protected]>
To: David Steele <[email protected]>
Cc: Hüseyin Demir <[email protected]>
Cc: Pg Hackers <[email protected]>
Subject: Re: Improve checks for GUC recovery_target_xid
Date: Thu, 5 Mar 2026 01:19:17 +0900
Message-ID: <CAHGQGwFpq5D6z+NcPhZuSazkX_PjMFE3UNKwnypNs4FRT7brDw@mail.gmail.com> (raw)
In-Reply-To: <CAHGQGwG44vZbSoBmg076G+xkR6n=Tj2=q+fVkfP7yEsyF1daFA@mail.gmail.com>
References: <[email protected]>
	<CAHGQGwEnakTrosMp3Y=Trya4MTC-h8Lqx3FDU1mOALRQ0rz59Q@mail.gmail.com>
	<[email protected]>
	<CAHGQGwG44vZbSoBmg076G+xkR6n=Tj2=q+fVkfP7yEsyF1daFA@mail.gmail.com>

On Thu, Mar 5, 2026 at 12:41 AM Fujii Masao <[email protected]> wrote:
> My earlier comment was based on my misunderstanding. I thought that only
> 32-bit transaction IDs were allowed for recovery_target_xid, and therefore
> values larger than 2^32 should be rejected.
>
> However, recovery_target_xid currently accepts both 32-bit XIDs and 64-bit
> full transaction IDs (epoch + 32-bit XID). When a 64-bit value is specified,
> only the 32-bit XID portion is used as the recovery target.
> Given this behavior, your change seems to make sense.

I'm tempted to clarify this behavior by adding something like
the following text to the description of recovery_target_xid
in config.sgml...:

-------------------------------
The value can be specified as either a 32-bit transaction ID or a 64-bit
transaction ID (consisting of an epoch and a 32-bit ID), such as the value
returned by pg_current_xact_id(). When a 64-bit transaction ID is provided,
only its 32-bit transaction ID portion is used as the recovery target.
For example, the values 4294968296 (epoch 1) and 8589935592 (epoch 2)
both refer to the same 32-bit transaction ID, 1000.

The effective transaction ID (the 32-bit portion) must be greater than
or equal to 3.
-------------------------------

Regards,


-- 
Fujii Masao





view thread (20+ messages)  latest in thread

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: [email protected]
  Cc: [email protected], [email protected], [email protected]
  Subject: Re: Improve checks for GUC recovery_target_xid
  In-Reply-To: <CAHGQGwFpq5D6z+NcPhZuSazkX_PjMFE3UNKwnypNs4FRT7brDw@mail.gmail.com>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox