Re: Add LSN along with offset to error messages reported for WAL file read/write/validate header failures
Alvaro Herrera <alvherre@alvh.no-ip.org>
From: Alvaro Herrera <alvherre@alvh.no-ip.org>
To: Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com>
Cc: PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2022-09-20T07:26:55Z
Lists: pgsql-hackers
On 2022-Sep-19, Bharath Rupireddy wrote: > We have a bunch of messages [1] that have an offset, but not LSN in > the error message. Firstly, is there an easiest way to figure out LSN > from offset reported in the error messages? If not, is adding LSN to > these messages along with offset a good idea? Of course, we can't just > convert offset to LSN using XLogSegNoOffsetToRecPtr() and report, but > something meaningful like reporting the LSN of the page that we are > reading-in or writing-out etc. Maybe add errcontext() somewhere that reports the LSN would be appropriate. For example, the page_read() callbacks have the LSN readily available, so the ones in backend could install the errcontext callback; or perhaps ReadPageInternal can do it #ifndef FRONTEND. Not sure what is best of those options, but either of those sounds better than sticking the LSN in a lower-level routine that doesn't necessarily have the info already. -- Álvaro Herrera Breisgau, Deutschland — https://www.EnterpriseDB.com/
Commits
-
Rename pg_dissect_walfile_name() to pg_split_walfile_name()
- 13e0d7a60385 16.0 landed
-
Add pg_dissect_walfile_name()
- cca186348929 16.0 landed
-
Add LSN location in some error messages related to WAL pages
- 71cb84ec69a3 16.0 landed