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/