pgsql: Use correct LSN for error reporting in pg_walinspect

From: Jeff Davis <jdavis(at)postgresql(dot)org>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Use correct LSN for error reporting in pg_walinspect
Date: 2022-08-18 21:23:43
Message-ID: E1oOmzO-000AXx-La@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Use correct LSN for error reporting in pg_walinspect

Usage of ReadNextXLogRecord()'s first_record parameter for error
reporting isn't always correct. For instance, in GetWALRecordsInfo()
and GetWalStats(), we're reading multiple records, and first_record
is always passed as the LSN of the first record which is then used
for error reporting for later WAL record read failures. This isn't
correct.

The correct parameter to use for error reports in case of WAL
reading failures is xlogreader->EndRecPtr. This change fixes it.

While on it, removed an unnecessary Assert in pg_walinspect code.

Reported-by: Robert Haas
Author: Bharath Rupireddy
Reviewed-by: Robert Haas
Discussion: https://www.postgresql.org/message-id/CA%2BTgmoZAOGzPUifrcZRjFZ2vbtcw3mp-mN6UgEoEcQg6bY3OVg%40mail.gmail.com
Backpatch-through: 15

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/d9fbb8862959912c5266364059c0abeda0c93bbf

Modified Files
--------------
contrib/pg_walinspect/pg_walinspect.c | 53 +++++++++++++++--------------------
1 file changed, 23 insertions(+), 30 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Jeff Davis 2022-08-18 21:24:13 pgsql: Use correct LSN for error reporting in pg_walinspect
Previous Message Robert Haas 2022-08-18 19:12:20 pgsql: Bump catversion for 6566133c5f52771198aca07ed18f84519fac1be7