Re: Null commitTS bug

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: Michael Paquier <michael@paquier.xyz>
Cc: Kyotaro Horiguchi <horikyota.ntt@gmail.com>, kingsboa@amazon.com, pgsql-hackers@lists.postgresql.org
Date: 2022-01-17T04:01:25Z
Lists: pgsql-hackers
Michael Paquier <michael@paquier.xyz> writes:
> On Mon, Jan 17, 2022 at 11:17:24AM +0900, Kyotaro Horiguchi wrote:
>> I found some confusing lines around but they need not a fix
>> considering back-patching conflict?
>>> i += j - i + 1;

> I am not sure.  Do you have anything specific in mind?  Perhaps
> something that would help in making the code logic easier to follow?

Isn't that a very bad way to write "i = j + 1"?

I agree with Horiguchi-san that

	for (i = 0, headxid = xid;;)

is not great style either.  A for-loop ought to be used to control the
number of iterations, not as a confusing variable initialization.
I think more idiomatic would be

	headxid = xid;
	i = 0;
	for (;;)

which makes it clear that this is not where the loop control is.

			regards, tom lane



Commits

  1. Fix one-off bug causing missing commit timestamps for subtransactions