Fix description of WAL record blocks in hash_xlog.h
authorMichael Paquier <michael@paquier.xyz>
Thu, 11 Sep 2025 08:17:30 +0000 (17:17 +0900)
committerMichael Paquier <michael@paquier.xyz>
Thu, 11 Sep 2025 08:17:30 +0000 (17:17 +0900)
hash_xlog.h included descriptions for the blocks used in WAL records
that were was not completely consistent with how the records are
generated, with one block missing for SQUEEZE_PAGE, and inconsistent
descriptions used for block 0 in VACUUM_ONE_PAGE and MOVE_PAGE_CONTENTS.

This information was incorrect since c11453ce0aea, cross-checking the
logic for the record generation.

Author: Kirill Reshke <reshkekirill@gmail.com>
Reviewed-by: Andrey Borodin <x4mmm@yandex-team.ru>
Discussion: https://postgr.es/m/CALdSSPj1j=a1d1hVA3oabRFz0hSU3KKrYtZPijw4UPUM7LY9zw@mail.gmail.com
Backpatch-through: 13

src/include/access/hash_xlog.h

index 59230706bb0be764926f8a43a7425263e592e405..436f4061d5ad165b462b050e26c16234049be3f8 100644 (file)
@@ -129,7 +129,7 @@ typedef struct xl_hash_split_complete
  *
  * This data record is used for XLOG_HASH_MOVE_PAGE_CONTENTS
  *
- * Backup Blk 0: bucket page
+ * Backup Blk 0: primary bucket page
  * Backup Blk 1: page containing moved tuples
  * Backup Blk 2: page from which tuples will be removed
  */
@@ -149,12 +149,13 @@ typedef struct xl_hash_move_page_contents
  *
  * This data record is used for XLOG_HASH_SQUEEZE_PAGE
  *
- * Backup Blk 0: page containing tuples moved from freed overflow page
- * Backup Blk 1: freed overflow page
- * Backup Blk 2: page previous to the freed overflow page
- * Backup Blk 3: page next to the freed overflow page
- * Backup Blk 4: bitmap page containing info of freed overflow page
- * Backup Blk 5: meta page
+ * Backup Blk 0: primary bucket page
+ * Backup Blk 1: page containing tuples moved from freed overflow page
+ * Backup Blk 2: freed overflow page
+ * Backup Blk 3: page previous to the freed overflow page
+ * Backup Blk 4: page next to the freed overflow page
+ * Backup Blk 5: bitmap page containing info of freed overflow page
+ * Backup Blk 6: meta page
  */
 typedef struct xl_hash_squeeze_page
 {
@@ -245,7 +246,7 @@ typedef struct xl_hash_init_bitmap_page
  *
  * This data record is used for XLOG_HASH_VACUUM_ONE_PAGE
  *
- * Backup Blk 0: bucket page
+ * Backup Blk 0: primary bucket page
  * Backup Blk 1: meta page
  */
 typedef struct xl_hash_vacuum_one_page