Standardize LSN formatting by zero padding

Álvaro Herrera <alvherre@kurilemu.de>

Commit: 2633dae2e4876a9b7cb90ba025e930a553e5107f
Author: Álvaro Herrera <alvherre@kurilemu.de>
Date: 2025-07-07T11:57:43Z
Standardize LSN formatting by zero padding

This commit standardizes the output format for LSNs to ensure consistent
representation across various tools and messages.  Previously, LSNs were
inconsistently printed as `%X/%X` in some contexts, while others used
zero-padding.  This often led to confusion when comparing.

To address this, the LSN format is now uniformly set to `%X/%08X`,
ensuring the lower 32-bit part is always zero-padded to eight
hexadecimal digits.

Author: Japin Li <japinli@hotmail.com>
Reviewed-by: Masahiko Sawada <sawada.mshk@gmail.com>
Reviewed-by: Álvaro Herrera <alvherre@kurilemu.de>
Discussion: https://postgr.es/m/ME0P300MB0445CA53CA0E4B8C1879AF84B641A@ME0P300MB0445.AUSP300.PROD.OUTLOOK.COM

Files

PathChange+/−
contrib/amcheck/verify_nbtree.c modified +22 −24
contrib/pageinspect/expected/gist.out modified +9 −9
contrib/pageinspect/expected/page.out modified +3 −3
contrib/pageinspect/rawpage.c modified +1 −1
contrib/pg_walinspect/expected/pg_walinspect.out modified +4 −4
contrib/pg_walinspect/pg_walinspect.c modified +10 −10
doc/src/sgml/catalogs.sgml modified +1 −1
doc/src/sgml/logicaldecoding.sgml modified +46 −46
doc/src/sgml/logical-replication.sgml modified +10 −10
doc/src/sgml/pageinspect.sgml modified +6 −6
doc/src/sgml/pglogicalinspect.sgml modified +2 −2
doc/src/sgml/pgwalinspect.sgml modified +6 −6
doc/src/sgml/test-decoding.sgml modified +22 −22
src/backend/access/rmgrdesc/replorigindesc.c modified +1 −1
src/backend/access/rmgrdesc/xactdesc.c modified +3 −3
src/backend/access/rmgrdesc/xlogdesc.c modified +3 −3
src/backend/access/transam/timeline.c modified +2 −2
src/backend/access/transam/twophase.c modified +4 −4
src/backend/access/transam/xlogbackup.c modified +4 −4
src/backend/access/transam/xlog.c modified +28 −29
src/backend/access/transam/xlogprefetcher.c modified +8 −8
src/backend/access/transam/xlogreader.c modified +31 −31
src/backend/access/transam/xlogrecovery.c modified +80 −80
src/backend/access/transam/xlogutils.c modified +1 −1
src/backend/backup/backup_manifest.c modified +1 −1
src/backend/backup/basebackup_copy.c modified +1 −1
src/backend/backup/basebackup_incremental.c modified +7 −7
src/backend/commands/subscriptioncmds.c modified +1 −1
src/backend/postmaster/walsummarizer.c modified +14 −14
src/backend/replication/libpqwalreceiver/libpqwalreceiver.c modified +1 −1
src/backend/replication/logical/logical.c modified +7 −7
src/backend/replication/logical/origin.c modified +3 −3
src/backend/replication/logical/slotsync.c modified +5 −5
src/backend/replication/logical/snapbuild.c modified +23 −23
src/backend/replication/logical/tablesync.c modified +1 −1
src/backend/replication/logical/worker.c modified +10 −10
src/backend/replication/repl_gram.y modified +2 −2
src/backend/replication/repl_scanner.l modified +1 −1
src/backend/replication/slot.c modified +2 −2
src/backend/replication/slotfuncs.c modified +1 −1
src/backend/replication/syncrep.c modified +2 −2
src/backend/replication/walreceiver.c modified +8 −8
src/backend/replication/walsender.c modified +16 −16
src/backend/storage/ipc/standby.c modified +2 −2
src/backend/utils/adt/pg_lsn.c modified +1 −1
src/bin/pg_basebackup/pg_basebackup.c modified +3 −3
src/bin/pg_basebackup/pg_createsubscriber.c modified +2 −2
src/bin/pg_basebackup/pg_receivewal.c modified +5 −5
src/bin/pg_basebackup/pg_recvlogical.c modified +7 −7
src/bin/pg_basebackup/receivelog.c modified +3 −3
src/bin/pg_basebackup/streamutil.c modified +2 −2
src/bin/pg_combinebackup/backup_label.c modified +1 −1
src/bin/pg_combinebackup/pg_combinebackup.c modified +1 −1
src/bin/pg_combinebackup/write_manifest.c modified +1 −1
src/bin/pg_controldata/pg_controldata.c modified +6 −6
src/bin/pg_rewind/libpq_source.c modified +1 −1
src/bin/pg_rewind/parsexlog.c modified +9 −9
src/bin/pg_rewind/pg_rewind.c modified +5 −5
src/bin/pg_rewind/timeline.c modified +1 −1
src/bin/pg_verifybackup/pg_verifybackup.c modified +1 −1
src/bin/pg_waldump/pg_waldump.c modified +9 −9
src/common/parse_manifest.c modified +1 −1
src/include/access/xlogdefs.h modified +4 −1
src/test/recovery/t/016_min_consistency.pl modified +1 −1
src/test/regress/expected/numeric.out modified +6 −6
src/test/regress/expected/pg_lsn.out modified +120 −120
src/test/regress/expected/subscription.out modified +76 −76

Discussion