pgsql: Use correct LSN for error reporting in pg_walinspect - Mailing list pgsql-committers

From Jeff Davis
Subject pgsql: Use correct LSN for error reporting in pg_walinspect
Date
Msg-id E1oOmzs-000AYj-4T@gemulon.postgresql.org
Whole thread Raw
List 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
------
REL_15_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/72af71aad9ce541ecea67ceaa7961ca39f89f227

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


pgsql-committers by date:

Previous
From: Jeff Davis
Date:
Subject: pgsql: Use correct LSN for error reporting in pg_walinspect
Next
From: Peter Geoghegan
Date:
Subject: pgsql: Initialize index stats during parallel VACUUM.