Re: Is this a problem in GenericXLogFinish()?
Michael Paquier <michael@paquier.xyz>
From: Michael Paquier <michael@paquier.xyz>
To: Amit Kapila <amit.kapila16@gmail.com>
Cc: "Hayato Kuroda (Fujitsu)" <kuroda.hayato@fujitsu.com>, Alexander Lakhin <exclusion@gmail.com>, Robert Haas <robertmhaas@gmail.com>, Jeff Davis <pgsql@j-davis.com>, Heikki Linnakangas <hlinnaka@iki.fi>, "pgsql-hackers@postgresql.org" <pgsql-hackers@postgresql.org>
Date: 2024-04-05T04:26:29Z
Lists: pgsql-hackers
On Wed, Feb 07, 2024 at 06:42:21PM +0900, Michael Paquier wrote: > On Wed, Feb 07, 2024 at 02:08:42PM +0530, Amit Kapila wrote: > > Thanks for the report and looking into it. Pushed! > > Thanks Amit for the commit and Kuroda-san for the patch! I have been pinged about this thread and I should have looked a bit closer, but wait a minute here. There is still some divergence between the code path of _hash_freeovflpage() and the replay in hash_xlog_squeeze_page() when squeezing a page: we do not set the LSN of the write buffer if (xlrec.ntups <= 0 && xlrec.is_prim_bucket_same_wrt && !xlrec.is_prev_bucket_same_wrt) when generating the squeeze record, but at replay we call PageSetLSN() on the write buffer and mark it dirty in this case. Isn't that incorrect? It seems to me that we should be able to make the conditional depending on the state of the xl_hash_squeeze_page record, no? -- Michael
Commits
-
Fix inconsistency with replay of hash squeeze record for clean buffers
- f56a9def71bb 17.0 landed
-
Set LSN for wbuf in _hash_freeovflpage() iff wbuf is modified.
- aa5edbe379d6 17.0 landed
-
Fix an uninitialized access in hash_xlog_squeeze_page().
- f66fcc5cd616 17.0 landed
-
Use REGBUF_NO_CHANGE at one more place in the hash index.
- 861f86beea1c 17.0 landed
-
Assert that buffers are marked dirty before XLogRegisterBuffer().
- 00d7fb5e2e39 17.0 landed
-
Fix bug in GenericXLogFinish().
- 04f0baa85865 11.22 landed
- 6dbd01b9fdad 12.17 landed
- 469d367bee2f 13.13 landed
- 6615bb95af2d 14.10 landed
- b9bb02620d4b 15.5 landed
- b8963e8a2854 16.1 landed
- ef74c7197c04 17.0 landed
-
Improve hash index bucket split behavior.
- 6d46f4783efe 10.0 cited